Multimodal RAG
Multimodales RAG ruft neben Text auch Bilder, Videoframes, Audio und Seitenabbildungen ab. Anschließend beantwortet ein Vision-Language-Modell Fragen anhand der gefundenen Inhalte.
Multimodale RAG ist Retrieval-Augmented Generation (RAG) über eine Wissensdatenbank, die neben Text auch Bilder, Videos, Audio sowie gescannte oder gerenderte Dokumente enthält. Eine Frage ruft die relevantesten Elemente aus jeder dieser Modalitäten ab. Ein Vision-Language-Modell (VLM) erstellt daraus die Antwort. So lassen sich Schaltpläne, Produktfotos oder Diagramme in PDFs direkt abrufen und auswerten, statt nur über eine zuvor von jemandem verfasste Textbeschreibung.
Nichttextuelle Daten indizieren#
Der einfachste Ansatz wandelt alles in Text um. Bildbeschreibungen, optische Zeichenerkennung (OCR), Spracherkennung und die Beschriftungen aus der Objekterkennung beschreiben jedes Element in Worten, die ein gewöhnlicher Textindex durchsuchen kann. Dadurch lässt sich eine Text-RAG-Pipeline unverändert wiederverwenden. Allerdings gehen dabei alle Informationen verloren, die in der Beschreibung fehlen.
Der zweite Ansatz bildet Bilder und Text in einem gemeinsamen Raum ab. Mit kontrastivem Lernen trainierte Modelle wie OpenAIs CLIP und Googles SigLIP ordnen ein Foto und einen beschreibenden Satz nahe beieinander liegenden Embeddings zu. So ruft eine Textfrage Bilder direkt aus einer Vektordatenbank ab. Für Dokumente bettet ColPali (2024) jeden Seiten-Screenshot als Raster aus Patch-Vektoren ein und vergleicht ihn mithilfe einer späten Interaktion nach ColBERT-Art mit den Tokens der Frage. Bei PDFs voller Tabellen und Diagramme entfällt dadurch die OCR und das Parsen des Layouts.
Bei der Generierung werden die abgerufenen Elemente, oft eine Mischung aus Bildern und Textpassagen, zusammen mit der Frage an das VLM weitergegeben. Die Verankerung der Antwort in abgerufenen Bildern verringert Halluzinationen über visuelle Details, die das Modell während des Trainings nie gesehen hat, etwa das Layout des Bedienfelds eines bestimmten Unternehmens.
Suche in einem gemeinsamen Embedding-Raum#
Dieses Beispiel verwendet den CLIP-ViT-B/32-Checkpoint, um aus einer Wissensdatenbank mit zwei Bildern das Bild auszuwählen, das die jeweilige Frage beantwortet:
import requests
from PIL import Image
from transformers import CLIPModel, CLIPProcessor
model = CLIPModel.from_pretrained("openai/clip-vit-base-patch32")
processor = CLIPProcessor.from_pretrained("openai/clip-vit-base-patch32")
# Image knowledge base: CLIP embeds images and text into one shared vector space
urls = ["https://ultralytics.com/images/bus.jpg", "https://ultralytics.com/images/zidane.jpg"]
images = [Image.open(requests.get(url, stream=True, timeout=10).raw) for url in urls]
questions = ["What color is the man's tie?", "How many people are standing next to the bus?"]
# Retrieve: score each question against every image and keep the best match for the VLM
inputs = processor(text=questions, images=images, return_tensors="pt", padding=True)
scores = model(**inputs).logits_per_text
for question, row in zip(questions, scores):
print(f"{question} -> {urls[row.argmax()].split('/')[-1]}")Bei der Frage nach einer Krawatte wird zidane.jpg abgerufen, bei der Frage nach einem Bus bus.jpg. CLIP ordnet den Text-Embedding jeder Frage dem Foto am nächsten zu, um das es geht. Die Ultralytics-LLM-Schnittstelle übernimmt den folgenden Generierungsschritt: llm(question, image=...) sendet die Frage und das abgerufene Bild in einem Aufruf an ein beliebiges OpenAI-kompatibles Vision-Language-Modell und gibt die Antwort des Anbieters zurück.
Multimodale RAG im Vergleich zu verwandten Begriffen#
- Visuelle Fragebeantwortung (VQA): Beantwortet eine Frage zu einem vom Nutzer bereitgestellten Bild. Multimodale RAG findet unter Tausenden Bildern, Seiten oder Clips zuerst die relevanten.
- Multimodale Modelle: Die Generatoren, etwa GPT von OpenAI oder Gemini von Google, die Bilder und Text gemeinsam verarbeiten. Multimodales RAG ist das Abrufsystem, das bestimmt, was diese Modelle sehen.
- Semantische Suche: Der Abrufschritt für sich allein. Er liefert einer Person statt einem Modell eine nach Relevanz sortierte Ergebnisliste.
Anwendungen in der Praxis#
- Wartung in der Fertigung: Ein Techniker fotografiert ein defektes Teil. Das System ruft die Handbuchseite mit der passenden Explosionszeichnung sowie Fotos früherer Reparaturen derselben Baugruppe ab.
- Einzelhandel: Suche und Support: Ein Foto eines Kunden ruft visuell ähnliche Katalogartikel ab. Der Assistent beantwortet Fragen zu Passform oder Kompatibilität anhand der Produktdatenblätter.
- Beantwortung von Fragen zu Dokumenten: In Jahresberichten, wissenschaftlichen Arbeiten und Präsentationen stehen wichtige Zahlen oft in Diagrammen und Tabellen. Der Abruf von Seitenbildern findet diese ohne zusätzlichen Tabellenparser.
- Videoverständnis: Werden Stichprobenbilder oder kurze Clips anhand ihrer Embeddings indiziert, kann eine Frage wie „Wann ist der Lieferwagen angekommen?“ die richtigen Minuten des Videomaterials abrufen. Das VLM wertet dann nur einige Bilder statt stundenlanger Videos aus.
Abwägungen beim Entwurf#
Bilder beanspruchen viel Kontext: Ein VLM wandelt jedes Bild in Hunderte oder Tausende Tokens um. Daher übergeben Pipelines meist nur die wenigen relevantesten abgerufenen Bilder und ergänzen sie um kürzere Textpassagen. Für Abrufsysteme mit gemeinsamen Embeddings gelten zudem die Grenzen ihrer Trainingsdaten. Der Textencoder von CLIP kann höchstens 77 Tokens verarbeiten. Längere Fragen werden vor dem Abgleich abgeschnitten, und Embeddings des Gesamtbilds erfassen den allgemeinen Szeneninhalt besser als kleine Details wie eine Seriennummer auf einem Etikett. Die Umwandlung in Text macht solche Details durchsuchbar, sofern die OCR sie lesen kann. Daher indizieren viele Systeme sowohl OCR-Text als auch Bild-Embeddings und führen die beiden Ergebnislisten mithilfe einer hybriden Suche zusammen.










