Skill Issue: Warum du Vision-Language-Modelle nicht deployen, sondern mit Skills nutzen solltest — Merve Noyan, Hugging Face

AAI Engineer
Computing/SoftwareSmall Business/Startups

Transcript

00:00:00Hallo und willkommen zu diesem Vortrag über Skill Issue. Es ist tatsächlich kein Skill Issue mehr. Am Ende
00:00:22dieses Vortrags werdet ihr mit Vision-Modellen viel bauen können, falls ihr das nicht ohnehin schon tut.
00:00:27Kurz zu mir: Ich bin Merve. Ich arbeite seit der LLaVA-1.5-Ära an Computer Vision, und in letzter Zeit beschäftige ich mich mehr mit Agenten und On-Device-Dingen, weil ich fasziniert bin. Ich liebe Vision-Language-Modelle so sehr, dass ich sogar ein Buch darüber geschrieben habe. Aber ich möchte nicht mehr, dass Entwickler direkt Vision-Language-Modelle nutzen, sondern dass wirklich jeder Entwickler beginnt,
00:00:54Vision-Anwendungen End-to-End zu bauen. Dieser Vortrag wird euch dafür eine solide Grundlage liefern. Ein häufiges Verhalten, das ich bei Entwicklern beobachte, ist, dass sie versuchen, Vision-Language-Modelle für alles einzusetzen. Aber damit bekommt man nie Echtzeit. Und mit Echtzeit meine ich: Selbst auf einem Toaster
00:01:18bekommt man etwa 30 bis 40 FPS, egal ob man Bildklassifizierung, Instanzsegmentierung oder etwas anderes baut.
00:01:28Und sie sind nicht besonders robust, verglichen mit einem trainierten RT-DETR, worüber Joseph im ersten Vortrag gesprochen hat.
00:01:39Dieser wird euer Vision-Language-Modell immer übertreffen, und das werde ich heute beweisen.
00:01:47Auf der rechten Seite könnt ihr mich sehen, wie ich Dinge mit RT-DETR mache.
00:01:52Ein weiterer Punkt ist, dass Entwickler die Lizenzen nicht lesen. Wann immer ich etwas über Objekterkennung poste, fragen mich alle nach YOLO. YOLO ist ein gutes Modell, aber es steht, glaube ich, unter einer GPL-3.0-Lizenz.
00:02:07Ich könnte alles darauf verwetten, dass einige Entwickler es einsetzen, ohne zu wissen,
00:02:12dass sie dafür bezahlen müssen. Deshalb möchte ich, dass ihr heute zu Apache-2.0-Modellen wechselt.
00:02:23Dazu habe ich etwas namens Vibe Vision gebaut. Es ist inspiriert von diesem Post von Maziar.
00:02:30Er gibt im Grunde das SAM-2.1-Modell als Werkzeug an Gemma 3 weiter, damit es dieses aufruft. Das finde ich extrem
00:02:39beeindruckend. Und heute habe ich ein Toolkit gebaut, mit dem man das mit noch mehr Dingen tun kann.
00:02:49Ich destilliere hier also quasi mein eigenes Wissen. Zunächst enthält dieses Toolkit meine Lieblingsmodelle als Tools,
00:02:57damit ihr sie eurem Agenten geben könnt. Denn euer Coding-Agent ist als Computer-Vision-Ingenieur
00:03:03im Grunde ziemlich ahnungslos. Wenn ich mein Wissen destilliere und ein Modell auswähle, prüfe ich
00:03:09immer Folgendes: Die Lizenz hat höchste Priorität. Es muss Apache 2.0, MIT oder
00:03:16eine andere freie Lizenz sein. Zweitens muss die Leistung stimmen, gemessen an der Größe
00:03:24oder den Architekturentscheidungen. Das überprüfe ich anhand der Benchmarks, sobald ein Modell von einer Computer-Vision-Konferenz
00:03:31veröffentlicht wird. Und drittens natürlich die Vibes. Dieses Toolkit hat noch einen zweiten Teil, der ein wenig wie ein
00:03:41Vibe-Training-Teil ist – und das ist der spannendste Part. Den gehe ich zuerst durch. Ich habe mich
00:03:47in die Lage von Entwicklern versetzt, die eine Vision-Anwendung bauen wollen. Habe ich gelabelte Bilder? Einfach, dann trainiere ich ein Modell
00:03:55oder gebe meinem Computer-Vision-Agenten Tutorials dazu, denn das ist alles frei verfügbar
00:04:02– wir haben dafür Transformers gebaut. Wenn ich aber nur ungelabelte Bilder habe, muss ich sie annotieren, die Annotationen
00:04:11auswerten und dann ein Modell trainieren. Aber wie skaliert man das? Man kann tatsächlich ein Vision-Language-Modell
00:04:17als Annotator und als Judge nutzen und dann trainieren, was man möchte. Aber wie
00:04:24sieht diese Pipeline aus? Ich habe genau das gebaut: Ein VLM für das Labeln, ein VLM als
00:04:35Judge und anschließend das Training. Das ist eine recht langwierige Aufgabe für Coding-Agenten und bietet viele
00:04:42Infrastruktur-Optionen. Man kann es lokal oder remote ausführen. Im Grunde läuft es auf der Hugging-Face-Infrastruktur.
00:04:48Wir haben Jobs, die einmalige Batch-Verarbeitungen oder Trainingsläufe ermöglichen.
00:04:54Wir haben auch ein serverloses Routing-System namens Inference Providers, mit dem man mehrere
00:05:00Anbieter nutzen kann. Zudem nutzen wir Buckets zum Ablegen von Zwischendaten neben den Dataset-
00:05:07und Modell-Repositories. Aber was ermöglicht diese Arbeit? Erstens mein Lieblingsmodell RT-DETR – RT-DETR
00:05:17Segmentation, woran ich aktuell arbeite. Wir haben bessere Agenten für komplexe,
00:05:24mehrstufige Aufgaben, bei denen man den Labeling- und Trainingsprozess überwachen muss.
00:05:32Kleinere, aber leistungsfähigere Vision-Modelle ermöglichen sehr günstiges Labeln. Und mit
00:05:40Transformers haben wir das v5-Refactoring durchgeführt, sodass die Performance für Vision-Modelle derzeit besser ist.
00:05:47So sieht die Pipeline in der Praxis aus: Zuerst labele ich den Datensatz. Ich nehme also einen Bilddatensatz,
00:05:54irgendeinen Bilddatensatz, und labele ihn mit Qwen2.5-VL-7B. Dann übergebe ich den
00:06:02gelabelten Datensatz an zwei Judges: Der erste ist Gemma 3 4B, was ein 4B-Judge ist, und der zweite ist
00:06:10Llama-3.2-11B-Vision mit fast 11B. Ich habe mir die Forschung angesehen: Es ist besser,
00:06:18ein Ensemble kleinerer Judges zu haben. Anschließend führe ich die Urteile zusammen. Ich habe auch die
00:06:26Forschung dazu geprüft: Die meisten bitten das VLM oder LLM, eine Punktzahl zu vergeben. Aber diese Punktzahlen
00:06:34funktionieren überhaupt nicht, besonders wenn die Judges unterschiedlich groß sind. Danach übergebe ich es
00:06:40zum Training von RT-DETR Medium oder Large. Ich habe mich mit den Leuten von Roboflow unterhalten, und sie haben mich ermutigt,
00:06:47das zu nutzen. Und es funktioniert tatsächlich, ich werde es euch gleich zeigen. Aber wie funktioniert es genau?
00:06:55Man nimmt das Repository und fragt es einfach: „Kannst du das Training auf diesem Datensatz
00:07:04auf dem Hub durchführen?“ Dann startet es. Wenn der Datensatz bereits Labels hat, kann man direkt
00:07:11mit dem Training beginnen. Wenn nicht, startet man das Annotieren. Der Trick dabei ist,
00:07:19dass ich dem Judge die Bilder mit den eingeblendeten Bounding Boxes übergebe. Qwen gibt Bounding Boxes
00:07:27technisch als Token aus. Die übergebe ich nicht direkt, sondern zeichne die Bounding Boxes auf das Bild
00:07:33zusammen mit Labels und Label-Beschreibungen. Ich sage: „Wenn diese Label-Beschreibung diese Bounding Box
00:07:40auf dem Bild hat, sag mir, ob du zustimmst oder nicht.“ Dann führe ich die Urteile der Judges
00:07:49über eine Mindestübereinstimmung zusammen und nicht über Konsens – worauf ich gleich noch eingehen werde. Und diese
00:07:56Label-Beschreibungen werden ebenfalls von Coding-Agenten generiert, und man segnet sie als Mensch einfach ab.
00:08:03Die Modelle, die ich in dieser Pipeline verwendet habe, haben alle Apache-2.0-Lizenzen, außer
00:08:10dem Llama-Modell, das eine Lizenz hat, bei der man ab einem gewissen Umsatz
00:08:19dafür zahlt. Aber man kann es bedenkenlos nutzen. Was die Coding-Agenten angeht, die diese Pipeline
00:08:26überwachen: Ich habe sie anfangs mit Claude 3.5 Sonnet gebaut und den Workflow dann mit Qwen 2.5 Coder ausgeführt,
00:08:35das bei komplexen Aufgaben einen wirklich guten Job macht. Zur Infra: Ich arbeite bei Hugging
00:08:42Face, habe viele Compute-Credits und bin ein sehr ungeduldiger Mensch. Deshalb nutze ich ordentlich
00:08:50Hardware für Experimente. Ich habe es aber gebenchmarkt: Insgesamt kostet es etwa 3 bis 4 Dollar, wenn man
00:08:58diese gesamte Pipeline ausführen möchte, um Modelle zu trainieren – was ich verrückt finde. Für Qwen2.5 habe ich anfangs
00:09:05Serverless genutzt, weil ich dachte: Das ist bequem und extrem günstig. Ich habe DeepInfra genutzt, was
00:09:12supergünstig ist. Wenn man Together nutzt, ist es besser, Batch-Verarbeitung über Jobs zu machen.
00:09:19Für das Bewertungssystem habe ich Hugging Face Jobs genutzt, was weniger kostet, und fürs Training eine L4-GPU.
00:09:27Aber das Modell ist extrem klein – RT-DETR ist winzig. Man kann auch etwas anderes nutzen oder es
00:09:33lokal machen, wenn man möchte. Ich bin nur ungeduldig und wollte eine große Batch-Size. Ich habe es an zwei Problemen getestet:
00:09:42Erstens die Erkennung von Verkehrsschildern, zweitens das Parsea von Dokumenten. Für die Verkehrsschilder-Erkennung
00:09:48hatte ich bereits Labels. Ich habe also mit den echten Ground-Truth-Annotationen verglichen, ob meine Pipeline
00:09:54funktioniert oder nicht. Beim Dokumenten-Parsing ging das nicht, weil ich einen DocVQA-
00:10:02Datensatz genutzt habe. Das Problem war, dass ich Bilder, Tabellen, Unterschriften und Ähnliches extrahieren wollte.
00:10:08Das war also eine neuartige Aufgabe, und ich wollte sehen, ob RT-DETR das lernen kann. Erstes Ergebnis: Es funktioniert, juhu!
00:10:19Wir haben eine gute Mean Average Precision von über 50. Ich vergleiche es so: Ich habe ein Test-Set,
00:10:29schicke es durch Qwen und vergleiche es dann mit den Pseudo-Annotationen
00:10:35und den Ground-Truth-Annotationen dieses Test-Sets. Es gibt einen kleinen Unterschied, aber das war zu erwarten,
00:10:42da es von Qwen gelernt hat. Auch die ROC-AUC ist ehrlich gesagt ein sehr guter Wert für so einen
00:10:50Anwendungsfall. Und beim Dokumenten-Parsing verallgemeinert es tatsächlich, was ich verrückt finde.
00:10:58Hier sieht man die Ausgabe des trainierten Modells: Es hat die Unterschrift erkannt, während die Qwen-Annotation
00:11:06dieses Test-Sets sie übersehen hat. Ich würde also sagen, dass es sich auch sehr gut verallgemeinern lässt.
00:11:12Aber das verdanken wir auch der Qualität von RT-DETR als Backbone. Hier sieht man auch,
00:11:21wie es die Bilder technisch erfasst – und zwar eins zu eins. Als ich das gebaut habe, ist mir
00:11:30aufgefallen, dass ich keine Ahnung vom Bauen mit Vision-Agenten hatte. Dazu habe ich ein paar Erkenntnisse.
00:11:37Erstens gibt es ein großes Ungleichgewicht beim Bewerten: Je nach Problem neigt Llama dazu, viel abzulehnen.
00:11:44Deshalb konnte ich keinen Konsens nehmen. Denn wenn ich alles eliminiert hätte, wo sich
00:11:50sowohl Llama als auch Gemma einig waren, es zu entfernen, wären nur sehr wenige Beispiele übrig geblieben.
00:11:58Das hätte zu einer sehr schlechten Verallgemeinerung geführt. Also habe ich entschieden: Wenn einer von beiden „Ja“ sagt,
00:12:04nehme ich dieses Beispiel. Und trotzdem hat es gut funktioniert. Wenn ihr aber einen großen Datensatz habt und euch
00:12:09der Recall wichtig ist, empfehle ich, den Konsens zu nehmen oder es genau zu beobachten. Beim Dokumenten-Parsing
00:12:17ist der Unterschied nicht so groß. Zweitens ist die Prompt-Generierung etwas schwierig. Das ist der einzige Teil, den man
00:12:28als Mensch genehmigen muss: Das Modell generiert die Prompts für den Judge, und man
00:12:35sagt: „Ok, das genehmige ich.“ Denn man muss sich den Datensatz trotzdem kurz ansehen.
00:12:42Daran führt kein Weg vorbei. Und drittens – das ist super interessant: Euer
00:12:52Coding-Agent mag noch so gut sein – egal ob man Claude 3.5 Sonnet nimmt, was ein sehr guter
00:12:59Coding-Agent ist – er ist als Computer-Vision-Ingenieur ebenso ahnungslos und lässt gesunden Menschenverstand vermissen.
00:13:06Er hat zum Beispiel Verkehrsschilder horizontal gespiegelt oder Farbänderungen bei
00:13:14Ampeln vorgenommen, was die Datensätze definitiv beschädigt und unbrauchbar macht. Das habe ich später korrigiert,
00:13:21sodass man festlegen kann, ob man Augmentierung möchte oder nicht. Euer Coding-Agent hilft euch dabei.
00:13:30Und schließlich ist der zweite Teil dieses Toolkits meine bevorzugten Modelle als Tools.
00:13:35Dieses Repository deckt meine Lieblingsmodelle ab, von Tiefenschätzung bis hin zu Zero-Shot-Segmentierung.
00:13:42Und das wird teilweise unterstützt durch erstens die Hugging Face Benchmarks, die wir vor ein paar Monaten herausgebracht haben.
00:13:48Wir haben im Grunde eine Benchmark-Bestenliste, und dort
00:13:55findet man offene Modelle sowie deren Evaluierungsergebnisse, sodass man verschiedene Modelle unterschiedlicher
00:14:02Größen vergleichen kann. Ich halte das auf dem Laufenden, aber es basiert teilweise auch auf mir, da ich gerne
00:14:13Computer-Vision-Konferenzpapiere lese. Ich möchte dieses Modell besonders hervorheben, weil
00:14:20nicht viele davon wissen. Manche Modelle können keine offene Referenzsegmentierung durchführen,
00:14:26wie etwa: "Segmentiere dieses rote Auto", und das klappt. Aber wenn man sagt: "Das rote Auto neben
00:14:33dem orangen Auto, das neben dem blauen Auto steht", schafft es das nicht. Falcon Perception,
00:14:39ein Modell von TII, kann das tatsächlich. Und es hat nur etwa 600 Millionen Parameter mit einer Apache-2.0-Lizenz.
00:14:47Das hier übernimmt also die Zero-Shot-Segmentierung für mich.
00:14:51Das ist keine vollständige Liste. Für Posenschätzung haben wir die Sapiens-Familie
00:14:58für personenzentrierte Aufgaben, bei denen man Keypoint-Erkennung, menschliche
00:15:04Tiefenschätzung usw. benötigt. Für Zero-Shot-Erkennung habe ich Moondream 3 und MM-Grounding-DINO,
00:15:13ein Modell mit Apache-2.0-Lizenz, das ebenfalls sehr gut und im Vergleich zu Moondream sehr klein ist. Ich biete
00:15:20mehrere Modelle in verschiedenen Größen an, je nach Hardware, damit Sie wählen können: Wenn Sie
00:15:25Schnelligkeit wollen, nehmen Sie die Tiny-Alternative. Für OCR habe ich Modelle aus dem olmOCR-Benchmark
00:15:34in verschiedenen Größen genommen. Und bei der Tiefenschätzung habe ich festgestellt, dass das große Modell
00:15:40keine kommerzielle Lizenz hat, der Rest aber schon, sodass man es nutzen kann. Das eine hat
00:15:45eine Apache-2.0-Lizenz und kommt mit Unterstützung für Supervision und Tracker. Beide sind
00:15:51Bibliotheken von Roboflow, mit denen man Instanzen, Bounding Boxes usw. verfolgen kann.
00:16:00Zu den Zukunftsplänen: Ich kann mir vorstellen, dass Sie sagen: "Das wird für
00:16:06Anwendungsfälle in der Industrie nicht funktionieren, weil diese andere Komponenten beinhalten, etwa schwer beschreibbare
00:16:13Teile, für die natürliche Sprache kein guter Zugang ist." In dem Sinne könnte bildgestützte Erkennung
00:16:21helfen. Wer bildgestützte Erkennung nicht kennt: Man hat im Grunde ein Beispielbild,
00:16:27wie zum Beispiel Huggy hier, und bittet das Modell: "Erkenne dieses Objekt in diesem Bild"
00:16:36über alle Bilder hinweg. Ich denke, das könnte bei Industrie-Anwendungsfällen helfen, wo
00:16:41man Dinge nicht mit natürlicher Sprache beschreiben kann. Außerdem möchte ich eine Art
00:16:52"Intersection over Union"-Zusammenführung testen. Man hat gelabelte Boxen und Judge-Boxen. Man bittet den Judge,
00:17:00eine Box zu generieren, und nimmt dann die Intersection over Union, anstatt ihn nur ablehnen oder
00:17:06akzeptieren zu lassen. Derzeit arbeite ich an der Segmentierungsunterstützung. Danke fürs Zuhören! Wenn
00:17:14Sie mehr erfahren möchten: Ich habe ein kleines Vision-Repo. Es enthält alles über
00:17:20Fine-Tuning, Quantisierung von Modellen, multimodale Modelle – einfach alles rund um Vision sowie
00:17:27Transformers-Anleitungen. Wir halten sie aktuell, es gibt viele Tutorials. Wir haben auch Hugging Face Skills,
00:17:36die spezielle Computer-Vision-Skills sowie Infra-Skills bieten, sodass man einfach ein
00:17:43Training per Ein-Zeilen-Prompt durchführen kann. Das ist mein Twitter-Profil, und dieses Repo liegt auf GitHub unter
00:17:51mervenoyan/vision-intern. Ich glaube, ich habe noch Zeit für eine Frage. Vielen Dank!
00:18:04Ja, er fragt, ob ich plane, VLMs selbst zu trainieren, im Sinne einer Selbstverbesserung.
00:18:16Das wäre super spannend, aber zuerst möchte ich das Problem lösen, dass Entwickler
00:18:22aufgabenspezifische Modelle trainieren und auf Edge-Geräten bereitstellen. Und danach könnte das kommen. Vielleicht noch eine Frage, ja?
00:18:34Nicht wirklich, das denke ich nicht. Ich habe nur... weil der Coding-Agent den
00:18:44Kontext hat, wollte ich, dass er den Prompt generiert. Vielleicht noch eine Frage? Okay, vielen Dank!
00:19:04Also,

Key Takeaway

Anstatt rechenintensive Vision-Language-Modelle direkt in Produktionsumgebungen einzusetzen, führt die Nutzung von VLMs als automatische Daten-Annotatoren und Judges zum Training kleinerer Apache-2.0-spezialisierter Modelle wie RT-DETR zu einer kostengünstigen Echtzeitverarbeitung mit über 30 bis 40 FPS.

Highlights

  • Große Vision-Language-Modelle erreichen auf Edge-Geräten keine Echtzeitverarbeitung und erbringen im Vergleich zu spezialisierten Modellen wie RT-DETR eine geringere Leistung bei der Objekterkennung.

  • Die Umstellung von proprietären Lizenzen oder GPL-3.0-Modellen wie YOLO auf Apache-2.0-lizensierte Architekturen verhindert unbeabsichtigte Lizenzkosten in Produktionsumgebungen.

  • Das Training eines spezialisierten RT-DETR-Modells über eine automatisierte Pipeline mit VLM-Annotationen und VLM-Judges kostet insgesamt etwa 3 bis 4 US-Dollar an Rechenkapazität.

  • Die Verwendung eines Ensembles kleinerer Judge-Modelle wie Gemma 3 4B und Llama-3.2-11B-Vision liefert zuverlässigere Evaluierungen als ein einzelnes großes Modell.

  • Für eine erfolgreiche Modellgenerierung ist eine Mindestübereinstimmung der Judges effektiver als ein strenger Konsens, da strikte Ablehnungen sonst zu wenig Trainingsdaten übrig lassen.

  • Coding-Agenten wie Claude 3.5 Sonnet oder Qwen 2.5 Coder benötigen menschliche Überwachung bei Bildtransformationsprozessen, da sie sonst Daten durch fehlerhafte Augmentierungen wie horizontales Spiegeln von Verkehrsschildern unbrauchbar machen.

  • Das Modell Falcon Perception ermöglicht mit etwa 600 Millionen Parametern unter der Apache-2.0-Lizenz komplexe Zero-Shot-Segmentierungen verknüpfter Objektbeziehungen.

Timeline

Grenzen von Vision-Language-Modellen und Lizenzierungsfragen

  • Direkt eingesetzte Vision-Language-Modelle bieten keine Ausführungsgeschwindigkeiten in Echtzeit.
  • Spezialisierte Erkennungsmodelle wie RT-DETR übertreffen allgemeine Vision-Language-Modelle in Robustheit und Verarbeitungstempo.
  • Kommerzielle Risiken entstehen durch unbewusste Nutzung von GPL-3.0-Lizenzen wie bei YOLO-Modellen.

Entwickler neigen dazu, große Vision-Language-Modelle direkt für allgemeine Computer-Vision-Aufgaben zu nutzen. Dies verhindert das Erreichen von Echtzeit-Bildraten von 30 bis 40 FPS auf leistungsschwachen Geräten. Spezialisierte Architekturen wie RT-DETR erzielen bei Aufgaben wie der Objekterkennung oder Instanzsegmentierung stabilere Ergebnisse. Zudem führt der Einsatz verbreiteter Modelle wie YOLO aufgrund restriktiver GPL-3.0-Lizenzen häufig zu unerwarteten Lizenzkosten. Der Wechsel zu Open-Source-Modellen unter Apache-2.0-Lizenzen stellt eine rechtssichere Alternative dar.

Aufbau einer automatisierten VLM-Labeling- und Judge-Pipeline

  • Unannotierte Bilddaten lassen sich mithilfe einer mehrstufigen VLM-Architektur automatisch aufbereiten.
  • Ein VLM übernimmt die Erstannotation, während nachgelagerte Judge-Modelle die Qualität der Bounding Boxes bewerten.
  • Die Ausführung der gesamten Pipeline nutzt serverseitige Job-Infrastrukturen und serverlose Inference Provider.

Das Vibe Vision Toolkit nutzt Gemma 3, SAM 2.1 und andere Komponenten zur Erstellung von End-to-End-Vision-Anwendungen. Wenn Entwickler nur ungelabelte Bilddaten besitzen, fungiert ein primäres VLM als automatischer Annotator. Nachgelagerte VLM-Judges prüfen die generierten Labels, bevor ein spezialisiertes Zielmodell trainiert wird. Dieser Prozess läuft auf Cloud-Infrastrukturen wie Hugging Face Jobs ab, kombiniert mit Objekt-Buckets für Zwischendaten und serverlosem Routing für die Modellausführung.

Ablauf der Datenverarbeitung und Modellauswahl im Experiment

  • Qwen2.5-VL-7B erstellt Erstannotationen für Rohbilddatenbanken.
  • Ein Ensemble aus Gemma 3 4B und Llama-3.2-11B-Vision bewertet eingezeichnete Bounding Boxes visuell.
  • Die Gesamtkosten für Annotations- und Trainingsabläufe belaufen sich auf 3 bis 4 US-Dollar.

Die Pipeline startet mit der Annotation eines Bilddatensatzes durch Qwen2.5-VL-7B. Aus den erzeugten Token-Koordinaten werden Bounding Boxes direkt auf die Bilder gezeichnet und zusammen mit Textbeschreibungen an zwei Judge-Modelle übergeben: Gemma 3 4B und Llama-3.2-11B-Vision. Anstatt numerische Scores abzufragen, stimmen die Judges visuell der Richtigkeit der eingezeichneten Rahmen zu. Das endgültige Training erfolgt auf einem RT-DETR-Modell unter Nutzung einer L4-GPU. Die Kosten reduzieren sich durch die Kombination aus kostengünstigen Inference-Anbietern und kleinen Modellgrößen auf wenige Dollar.

Testergebnisse bei der Erkennung von Verkehrsschildern und Dokumenten

  • Das trainierte RT-DETR-Modell erreicht bei Verkehrsschildern eine Mean Average Precision von über 50.
  • Beim Dokumenten-Parsing erkennt das Zielmodell Objekte, die vom ursprünglichen Labeling-Modell übersehen wurden.
  • Spezialisierte Backbones verallgemeinern visuelle Merkmale besser als ihre generischen Annotations-Modelle.

Die Validierung erfolgte an zwei Testfällen: Erkennung von Verkehrsschildern und Parsing von Dokumentenstrukturen. Bei Verkehrsschildern zeigte das trainierte RT-DETR-Modell im Vergleich zu echten Ground-Truth-Daten eine Mean Average Precision von über 50 sowie starke ROC-AUC-Werte. Beim Auslesen von Dokumenten identifizierte das trainierte RT-DETR-Modell Unterschriften und Tabellen selbst dann zuverlässig, wenn das für die Annotation genutzte Qwen-Modell diese im Test-Set ausgelassen hatte. Dies belegt die hohe Verallgemeinerungsfähigkeit des RT-DETR-Backbones.

Erkenntnisse zu Judge-Logik, Prompting und Schwachstellen von Coding-Agenten

  • Strikter Modellkonsens reduziert die verbleibende Datenmenge aufgrund hoher Ablehnungsraten stark.
  • Menschliche Freigaben bleiben bei der Generierung von Judge-Prompts unerlässlich.
  • Automatisierte Coding-Agenten erzeugen fehlerhafte Bilddaten-Augmentierungen ohne semantisches Verständnis.

Die Auswertung offenbarte systematische Hürden bei der Erstellung visueller Agenten. Da Modelle wie Llama zu strengen Ablehnungen neigen, führt die Pflicht zu vollständigem Konsens zwischen allen Judges zu einem massiven Datenverlust und schlechter Verallgemeinerung. Daher reicht die Zustimmung eines einzelnen Judges aus. Zudem erfordern die vom System generierten Prompts eine kurze menschliche Sichtprüfung. Ein weiteres Risiko bilden automatische Coding-Agenten wie Claude 3.5 Sonnet: Sie wenden mathematische Augmentierungen wie horizontales Spiegeln oder Farbveränderungen unbedacht an, was die Semantik von Objekten wie Verkehrsschildern oder Ampeln zerstört.

Spezialisierte Open-Source-Modelle als Skills für Agenten

  • Falcon Perception führt komplexe Zero-Shot-Segmentierungen mit 600 Millionen Parametern aus.
  • Sapiens deckt personenzentrierte Aufgaben wie Keypoint-Erkennung und Tiefenschätzung ab.
  • MM-Grounding-DINO und Moondream 3 bieten ressourcenschonende Alternativen für die Zero-Shot-Erkennung.

Das vorgestellte Repository stellt Coding-Agenten spezialisierte Modelle als Werkzeuge bereit. Für verschachtelte Anweisungen bei der Segmentierung eignet sich Falcon Perception von TII mit 600 Millionen Parametern unter Apache-2.0-Lizenz. Die Sapiens-Modellfamilie unterstützt personenspezifische Verarbeitungen wie Posenschätzungen. MM-Grounding-DINO und Moondream 3 ermöglichen Zero-Shot-Objekterkennungen auf kleineren Hardware-Instanzen. Ergänzend sind Open-Source-Lösungen für optische Zeichenerkennung aus dem olmOCR-Benchmark sowie Bibliotheken wie Supervision und Tracker für das Tracking von Instanzen integriert.

Zukünftige Entwicklungen und Einsatz in der Industrie

  • Bildgestützte Erkennung schließt Lücken bei schwer beschreibbaren Industrie-Bauteilen.
  • Die Integration von Intersection over Union verbessert die Präzision der Judge-Auswertungen.
  • Agenten-Frameworks bieten vorgefertigte Computer-Vision-Skills für automatisierte Trainingsprozesse.

Für industrielle Anwendungsfälle, in denen Objekte nicht präzise mit natürlicher Sprache beschrieben werden können, soll bildgestützte Erkennung anhand von Referenzbildern integriert werden. Zukünftige Iterationen der Pipeline testen zudem die Bewertung von Bounding Boxes mittels Intersection over Union statt reiner binärer Ablehnungen. Das Repository mervenoyan/vision-intern sowie Hugging Face Skills bieten Tutorials für Fine-Tuning, Quantisierung und Ein-Zeilen-Prompts zur Ausführung von Modelltrainings. Die vorrangige Roadmap zielt auf die Bereitstellung aufgabenspezifischer Modelle auf Edge-Geräten ab.

Community Posts

No posts yet. Be the first to write about this video!

Write about this video