Vision Understanding

Gemma 4, das neueste Modell der Gemma-Familie, kann eine Vielzahl von Vision-Language-Aufgaben ausführen, z. B. Objekterkennung, optische Zeichenerkennung (Optical Character Recognition, OCR), Visual Question Answering, Bilduntertitelung und Schlussfolgern anhand mehrerer Bilder. Außerdem wird die Verarbeitung mit variabler Auflösung unterstützt, sodass Sie die Inferenzgeschwindigkeit und die Ausgabegenauigkeit anpassen können.

In diesem Abschnitt wird erläutert, wie Sie visuelle Daten effektiv für Ihre Prompts vorbereiten und verwenden.

Visuelle Daten

Visuelle Daten können in vielen Formaten und Auflösungen vorliegen. Die unterstützten Dateiformate (z. B. JPEG und PNG) hängen vom Framework ab, das Sie zum Konvertieren Ihrer visuellen Daten in Tensoren auswählen.

Hier sind die wichtigsten Aspekte bei der Vorbereitung visueller Daten für Gemma:

  • Token-Kosten:Für jedes Bild werden in der Regel 256 Tokens verwendet. Die Token-Kosten für PaliGemma-Bilder variieren jedoch je nach ausgewähltem Modell.
  • Auflösung:Die interpretierte Auflösung – also die Anzahl der Pixel, die in Tokens codiert und vom Modell verarbeitet werden – hängt von der verwendeten Gemma-Version ab:
    • Gemma 4:Variable Auflösung basierend auf dem Tokenbudget. Sie können zwischen Budgetgrößen von 70, 140, 280, 560 oder 1.120 Tokens wählen. Dadurch wird festgelegt, wie stark das Eingabebild skaliert und verarbeitet wird.
    • Gemma 3: (4B und höher) Auflösung von 896 × 896 Pixeln mit Pan-and-Scan-Optionen für größere Bilder.
    • Gemma 3n:Auflösung von 256 × 256, 512 × 512 oder 768 × 768 Pixel
    • PaliGemma 2:Auflösung 224 × 224, 448 × 448 oder 896 × 896

Bilder mit niedrigerer Auflösung werden schneller verarbeitet, enthalten aber weniger visuelle Details. Um die Inferenzgeschwindigkeit zu optimieren, sollten Sie visuelle Daten bereitstellen, die einer der integrierten interpretierten Auflösungen des ausgewählten Gemma-Modells entsprechen.

Variable Auflösung und Token-Budgets

Mit Gemma 4-Modellen können Bilder mit unterschiedlichen Auflösungen verarbeitet werden. So können Sie die visuellen Eingaben an Ihre jeweilige Aufgabe anpassen. So kann es beispielsweise sinnvoll sein, eine hohe Auflösung zu wählen, um kleine Details bei der Objekterkennung zu erfassen. Eine niedrigere Auflösung kann dagegen bei der Analyse einzelner Videoframes die Verarbeitung beschleunigen. Mit dieser Funktion können Sie die Geschwindigkeit der Inferenz gegen die Genauigkeit der visuellen Darstellung abwägen.

Sie verwalten diesen Kompromiss mit einem Token-Budget. Mit diesem Budget wird ein hartes Limit für die Anzahl der visuellen Tokens (auch als visuelle Token-Einbettungen bezeichnet) festgelegt, die das Modell für ein einzelnes Bild generieren kann.

Sie können ein Budget von 70, 140, 280, 560 oder 1.120 Tokens auswählen:

  • Hohe Budgets (z. B. 1.120 Tokens): Die Bildauflösung bleibt höher. So werden mehr Patches für das Modell generiert, was sich ideal für die Erfassung feiner, komplexer Details eignet.
  • Niedrige Budgets (z.B. 70 Tokens): Das Bild wird verkleinert, was zu weniger Patches führt. Dadurch werden die Inferenzzeiten erheblich verkürzt.

So funktioniert das Budget: Das Tokenbudget steuert direkt, wie stark ein Bild verkleinert wird, indem es die maximale Anzahl der ursprünglichen Bild-Patches festlegt. Das System generiert neunmal so viele Patches wie in Ihrem ausgewählten Budget angegeben. Bei einem Budget von 280 Tokens können beispielsweise bis zu 2.520 Patches generiert werden (280 × 9).

Der Multiplikator 9 ergibt sich aus der Art und Weise, wie die Patches komprimiert werden: Während der Verarbeitung nimmt das Modell jedes 3×3-Raster benachbarter Patches und mittelt sie, um ein einzelnes Embedding zu erstellen. Diese konsolidierten Einbettungen sind Ihre endgültigen visuellen Tokens. Ein höheres Token-Budget führt daher zu mehr endgültigen Einbettungen, sodass das Modell umfassendere und detailliertere Informationen aus Ihren visuellen Daten extrahieren kann.

Dos

Hier sind einige Best Practices, die Sie beim Prompten von Gemma mit visuellen Daten beachten sollten.

  • Seien Sie konkret: Wenn Sie bestimmte Aufgaben haben, geben Sie ausreichend Kontext und Anleitungen an. Anstelle von „Beschreibe dieses Bild“ können Sie auch „Beschreibe die Szene auf diesem Bild und konzentriere dich dabei auf die Beziehung zwischen den Personen und den Objekten“ eingeben.

  • Einschränkungen angeben: Wenn Sie einen bestimmten Stil oder Tonfall wünschen, müssen Sie dies in Ihrem Prompt angeben. Bitten Sie Gemma beispielsweise, „Schreibe eine Kurzgeschichte zu diesem Bild im Stil eines Film noir“, anstatt eine allgemeine Geschichte zu verfassen.

  • Iterative Optimierung: Um die gewünschte Ausgabe zu erhalten, sind oft Experimente und eine Optimierung der Prompts erforderlich. Beginnen Sie mit einem einfachen Prompt und fügen Sie nach und nach Komplexität hinzu.

Don'ts

Hier sind einige Dinge, die Sie vermeiden sollten, wenn Sie Gemma mit visuellen Daten auffordern.

  • Genaue Anzahl für extrem dichte Objekte erwarten: Gemma 4 ist zwar hervorragend bei der Objekterkennung und OCR, liefert aber möglicherweise Schätzungen statt genauer Zahlen für extrem dichte oder winzige Objekte (z. B. beim Zählen einzelner Grashalme). Um die beste Genauigkeit für visuelle Aufgaben zu erzielen, sollten Sie ein höheres Token-Budget verwenden.

  • Vage oder mehrdeutige Prompts: Anstelle von allgemeinen Prompts wie „Generiere etwas basierend auf diesem Bild“ sollten Sie spezifische Anweisungen geben, um die gewünschten Ergebnisse zu erzielen. Definieren Sie genau, was „etwas“ ist, z. B. ein Gedicht, ein Rezept oder ein Code-Snippet.