Gemini hat standardmäßig ein Kontextfenster von 1 Million Tokens. Bisher waren Large Language Models (LLMs) durch die Menge an Text (oder Tokens) stark eingeschränkt, die dem Modell gleichzeitig übergeben werden konnten. Das Gemini-Kontextfenster mit nahezu perfektem Abruf (>99%) eröffnet viele neue Anwendungsfälle und Entwicklerparadigmen.
Der Code, den Sie bereits für Anwendungsfälle wie Inhaltsgenerierung oder multimodale Eingaben verwenden, funktioniert sofort mit dem langen Kontext.
In diesem Leitfaden werden die Grundlagen des Kontextfensters, die Überlegungen von Entwicklern zum langen Kontext, verschiedene praktische Anwendungsfälle für den langen Kontext und Möglichkeiten zur Optimierung der Verwendung des langen Kontexts behandelt.
Was ist ein Kontextfenster?
Die Gemini-Modelle werden in der Regel so verwendet, dass Sie dem Modell Informationen (Kontext) übergeben, woraufhin es eine Antwort generiert. Das Kontextfenster lässt sich mit dem Kurzzeitgedächtnis vergleichen. Im Kurzzeitgedächtnis einer Person kann nur eine begrenzte Menge an Informationen gespeichert werden. Das gilt auch für generative Modelle.
Weitere Informationen zur Funktionsweise von Modellen finden Sie in unserem Leitfaden zu generativen Modellen.
Erste Schritte mit langem Kontext
Die meisten generativen Modelle, die in den letzten Jahren entwickelt wurden, konnten jeweils nur 8.000 Tokens verarbeiten. Neuere Modelle haben diese Grenze auf 32.000 Tokens oder 128.000 Tokens erhöht. Gemini ist das erste Modell, das 1 Million Tokens verarbeiten kann. Mit Gemini 1.5 Pro sind es jetzt sogar 2 Millionen Tokens.
In der Praxis würden 1 Million Tokens so aussehen:
- 50.000 Codezeilen (mit den standardmäßigen 80 Zeichen pro Zeile)
- Alle SMS, die Sie in den letzten fünf Jahren gesendet haben
- 8 englische Romane mit durchschnittlicher Länge
- Transkripte von über 200 Podcastfolgen durchschnittlicher Länge
Auch wenn die Modelle immer mehr Kontext aufnehmen können, geht ein Großteil der konventionellen Weisheit über die Verwendung von Large Language Models von dieser inhärenten Einschränkung des Modells aus, die ab 2024 nicht mehr zutrifft.
Einige gängige Strategien zur Bewältigung der Einschränkung kleiner Kontextfenster:
- Alte Nachrichten / Text werden willkürlich aus dem Kontextfenster entfernt, wenn neuer Text eingeht.
- Vorherige Inhalte zusammenfassen und durch die Zusammenfassung ersetzen, wenn das Kontextfenster fast voll ist
- RAG mit semantischer Suche verwenden, um Daten aus dem Kontextfenster in eine Vektordatenbank zu verschieben
- Deterministische oder generative Filter verwenden, um bestimmten Text oder bestimmte Zeichen aus Prompts zu entfernen und so Tokens zu sparen
Viele dieser Methoden sind in bestimmten Fällen immer noch relevant. Der Standardansatz besteht jedoch darin, alle Tokens in das Kontextfenster einzufügen. Da Gemini-Modelle speziell für ein langes Kontextfenster entwickelt wurden, eignen sie sich viel besser für das In-Context Learning. Mit nur Lehrmaterialien (einer 500 Seiten umfassenden Referenzgrammatik, einem Wörterbuch und etwa 400 zusätzlichen parallelen Sätzen), die alle im Kontext bereitgestellt werden, können Gemini 1.5 Pro und Gemini 1.5 Flash lernen, zu übersetzen. Das gilt auch für die Übersetzung aus dem Englischen ins Kalamang – eine Sprache, die in Papua-Neuguinea von weniger als 200 Menschen gesprochen wird und daher kaum online vertreten ist. Die Qualität der Übersetzung ist dabei vergleichbar mit der einer Person, die aus denselben Materialien gelernt hat.
Dieses Beispiel zeigt, wie Sie sich vorstellen können, was mit langem Kontext und den In-Context-Learning-Funktionen von Gemini möglich ist.
Anwendungsfälle mit langem Kontext
Der Standardanwendungsfall für die meisten generativen Modelle ist zwar weiterhin die Texteingabe, die Gemini-Modellfamilie ermöglicht jedoch ein neues Paradigma multimodaler Anwendungsfälle. Diese Modelle können Text, Video, Audio und Bilder nativ verstehen. Sie werden durch die Vertex AI API für Gemini, die multimodale Dateitypen akzeptiert, ergänzt.
Text im Langformat
Text hat sich als die Intelligenzebene erwiesen, die einen Großteil der Dynamik rund um LLMs untermauert. Wie bereits erwähnt, lag ein Großteil der praktischen Einschränkungen von LLMs daran, dass kein ausreichend großes Kontextfenster für bestimmte Aufgaben zur Verfügung stand. Dies führte zur schnellen Einführung von Retrieval-Augmented Generation (RAG) und anderen Techniken, die dem Modell dynamisch relevante Kontextinformationen liefern. Mit immer größeren Kontextfenstern (derzeit bis zu 2 Millionen bei Gemini 1.5 Pro) stehen neue Techniken zur Verfügung, die neue Anwendungsfälle ermöglichen.
Einige neue und Standardanwendungsfälle für langen Kontext auf Textbasis:
- Zusammenfassen großer Textmengen
- Bei früheren Zusammenfassungsoptionen mit kleineren Kontextmodellen war ein gleitendes Fenster oder eine andere Technik erforderlich, um den Status der vorherigen Abschnitte beizubehalten, wenn neue Tokens an das Modell übergeben wurden.
- Fragen und Antworten
- Bisher war dies aufgrund der begrenzten Menge an Kontext und der geringen Faktenwiedergabe von Modellen nur mit RAG möglich.
- Agentische Workflows
- Text ist die Grundlage dafür, wie Agents den Status ihrer Aktionen und der erforderlichen Aktionen beibehalten. Wenn nicht genügend Informationen über die Welt und das Ziel des Agents vorhanden sind, wird die Zuverlässigkeit von Agents eingeschränkt.
Many-shot in-context learning ist eine der einzigartigsten Funktionen, die durch lange Kontextmodelle ermöglicht werden. Studien haben gezeigt, dass die Skalierung des gängigen Paradigmas mit einem oder mehreren Beispielen, bei dem dem Modell ein oder mehrere Beispiele für eine Aufgabe präsentiert werden, auf Hunderte, Tausende oder sogar Hunderttausende von Beispielen zu neuen Modellfunktionen führen kann. Es hat sich gezeigt, dass dieser Many-Shot-Ansatz ähnlich wie Modelle funktioniert, die für eine bestimmte Aufgabe optimiert wurden. Für Anwendungsfälle, in denen die Leistung eines Gemini-Modells für einen Produktions-Roll-out noch nicht ausreicht, können Sie den Many-Shot-Ansatz ausprobieren. Wie Sie später im Abschnitt zur Optimierung des langen Kontexts noch einmal untersuchen werden, ist diese Art von Arbeitslast mit hoher Eingabetoken durch Kontext-Caching in einigen Fällen wesentlich wirtschaftlicher und hat sogar eine geringere Latenz.
Videos im Langformat
Die Nützlichkeit von Videoinhalten war lange Zeit durch die mangelnde Zugänglichkeit des Mediums selbst eingeschränkt. Es war schwierig, den Inhalt zu überfliegen, Transkripte konnten oft nicht die Nuancen eines Videos erfassen und die meisten Tools verarbeiten Bild, Text und Audio nicht gemeinsam. Mit Gemini können Sie Fragen zu multimodalen Eingaben beantworten lassen und Schlussfolgerungen dazu ziehen. Dabei bleibt die Leistung konstant.
Hier sind einige neue und standardmäßige Anwendungsfälle für Video-Langkontext:
- Fragen und Antworten zu Videos
- Videospeicher, wie er bei Project Astra von Google gezeigt wird
- Videountertitelung
- Videoempfehlungssysteme, indem vorhandene Metadaten mit neuen multimodalen Informationen angereichert werden
- Videoanpassung durch Analyse eines Datensatzes und zugehöriger Videometadaten und anschließendes Entfernen von Teilen von Videos, die für den Zuschauer nicht relevant sind
- Moderation von Videoinhalten
- Videoverarbeitung in Echtzeit
Bei der Arbeit mit Videos ist es wichtig zu berücksichtigen, wie die Videos in Tokens umgewandelt werden, da dies sich auf die Abrechnung und die Nutzungslimits auswirkt. Weitere Informationen zum Erstellen von Prompts mit Videodateien finden Sie im Leitfaden zum Erstellen von Prompts.
Audioinhalte im Langformat
Die Gemini-Modelle waren die ersten nativ multimodalen großen Sprachmodelle, die Audio verstehen konnten. Bisher mussten Entwickler für die Verarbeitung von Audio mehrere domänenspezifische Modelle wie ein Speech-to-Text-Modell und ein Text-to-Text-Modell miteinander verknüpfen. Dies führte zu zusätzlicher Latenz, die durch die Ausführung mehrerer Roundtrip-Anfragen erforderlich war, und zu einer verringerten Leistung, die in der Regel auf die nicht zusammenhängenden Architekturen der Einrichtung mehrerer Modelle zurückzuführen ist.
Bei Standardbewertungen von Audio-Hystacks kann Gemini 1.5 Pro die ausgeblendeten Audiodaten in 100% der Tests finden und Gemini 1.5 Flash in 98, 7% der Tests. Gemini 1.5 Flash kann bis zu 9,5 Stunden Audio in einer einzelnen Anfrage verarbeiten.Gemini 1.5 Pro kann mit dem Kontextfenster von 2 Millionen Tokens bis zu 19 Stunden Audio verarbeiten. Außerdem erreicht Gemini 1.5 Pro bei einem Testset von 15-minütigen Audioclips eine Wortfehlerrate (Word Error Rate, WER) von etwa 5,5%, was deutlich niedriger ist als bei spezialisierten Speech-to-Text-Modellen.Dabei ist keine zusätzliche Eingabesegmentierung und Vorverarbeitung erforderlich.
Einige neue und Standardanwendungsfälle für Audio-Kontext sind:
- Sprache-zu-Text und Übersetzung in Echtzeit
- Fragen und Antworten zu Podcasts und Videos
- Besprechungstranskript und ‑zusammenfassung
- Sprachassistenten
Weitere Informationen zum Erstellen von Prompts mit Audiodateien finden Sie im Prompting-Leitfaden.
Optimierungen für langen Kontext
Die primäre Optimierung bei der Arbeit mit langem Kontext und den Gemini-Modellen ist die Verwendung von Kontext-Caching. Neben der bisherigen Unmöglichkeit, viele Tokens in einer einzigen Anfrage zu verarbeiten, waren die Kosten die andere Haupteinschränkung. Wenn Sie eine App "Mit Ihren Daten chatten" haben, bei der ein Nutzer 10 PDFs, ein Video und einige Arbeitsdokumente hochlädt, müssten Sie in der Vergangenheit mit einem komplexeren RAG-Tool (Retrieval Augmented Generation) / Framework arbeiten, um diese Anfragen zu verarbeiten und einen erheblichen Betrag für in das Kontextfenster verschobene Tokens zu bezahlen. Jetzt können Sie die vom Nutzer hochgeladenen Dateien im Cache speichern und die Speicherung stundenweise bezahlen. Die Kosten für Ein- und Ausgabe pro Anfrage sind geringer als die Standardkosten für Ein- und Ausgabe. Wenn der Nutzer also häufig genug mit seinen Daten chattet, können Sie als Entwickler viel Geld sparen.
Einschränkungen bei langem Kontext
In verschiedenen Abschnitten dieses Leitfadens ging es darum, wie Gemini-Modelle eine hohe Leistung bei verschiedenen „Nadel im Heuhaufen“-Evaluationsvorgängen erzielen. Bei diesen Tests wird das einfachste Setup berücksichtigt, bei dem Sie nur eine Nadel suchen. Wenn Sie mehrere „Nadeln“ oder bestimmte Informationen suchen, ist die Genauigkeit des Modells nicht so hoch. Die Leistung kann je nach Kontext stark variieren. Das ist wichtig, da es einen inhärenten Kompromiss zwischen dem Abrufen der richtigen Informationen und den Kosten gibt. Sie können mit einer einzigen Anfrage eine Genauigkeit von etwa 99% erreichen, müssen aber jedes Mal, wenn Sie diese Anfrage senden, die Kosten für die Eingabetokens bezahlen. Wenn Sie also 100 Informationen abrufen möchten und eine Leistung von 99% benötigen, müssen Sie wahrscheinlich 100 Anfragen senden. Dies ist ein gutes Beispiel dafür, wie sich durch das Zwischenspeichern von Kontext die Kosten für die Verwendung von Gemini-Modellen erheblich senken lassen, ohne dass die Leistung darunter leidet.
Nächste Schritte
- Informationen zum Auflisten und Zählen von Tokens
- Multimodale Prompts senden
- Texteinbettungen abrufen