Gemini · Files, Embeddings und RAG mit Google
Sie kkDie durchschnittliche Zahl neuer Nutzer, die jeder bestehende Nutzer über Empfehlungen generiert. Über 1,0 verstärkt sich das Wachstum selbst und wird exponentiell.Vollständige Definition ansehen →önnen Gemini ein 200-seitiges Mitarbeiterhandbuch geben, fragen „Wie viele Remote-Tage habe ich im zweiten Jahr?“ und erhalten eine fundierte Antwort mit der exakten Klausel. Diese Lektion zeigt Ihnen vier Wege, das mit Google AI umzusetzen, von „einfach die Datei hochladen“ bis „echtes Retrieval über einen Dokumentbestand aufbauen“, und wann Sie welchen Weg wählen.
Retrieval-Strategien, sortiert nach Aufwand
Treffen Sie die Entscheidung, bevor Sie Code schreiben. Viele verlieren Wochen, weil sie das Falsche bauen.
- Long Context (die Datei in den Prompt legen). Das Kontextfenster von Gemini fasst ganze Dokumente. Für ein einzelnes Handbuch brauchen Sie RAGRAGVerfahren, mit dem ein KI-Modell aus Ihren eigenen Dokumenten antwortet, indem es relevante Passagen abruft, bevor es eine Antwort erzeugt.Vollständige Definition ansehen → womöglich gar nicht.
- Die File API. Für Dateien, die zu groß zum Inline-Senden sind, oder Dateien, die Sie in vielen Requests wiederverwenden: einmal hochladen und über ein Handle referenzieren. Das ist weiterhin Long-Context-Retrieval, nur besser verwaltet.
- Das File Search Tool. Das ist Managed RAG innerhalb der Gemini APIAPIApplication Programming Interface: eine standardisierte Schnittstelle, über die Anwendungen kommunizieren und Daten austauschen, ohne die interne Funktionsweise der jeweils anderen zu kennen.Vollständige Definition ansehen →. Sie laden Dokumente in einen Store hoch, und Gemini holt die relevanten Chunks für Sie, mit Quellenangaben.
- Eigene Embeddings + Vector Store. Das brauchen Sie, wenn Sie volle Kontrolle über Chunking, Ranking oder den Speicherort der Vektoren wollen.
Der Reflex aus dem Grundlagenblock ist, direkt zu RAG zu greifen. Widerstehen Sie ihm. Wenn der gesamte Korpus in den Kontext passt, schlägt Long Context RAG bei Genauigkeit und Einfachheit.
Strategie 1: Einfach die Datei hochladen
Ziehen Sie in Google AI Studio das PDF Ihres Handbuchs in einen Prompt und stellen Sie Ihre Frage. Gemini liest das PDF direkt, inklusive Tabellen und Layout, ohne OCR-Schritt.
Über die API können Sie kleine Dateien inline als Bytes senden. Sobald eine Datei groß ist oder Sie viele Fragen dazu stellen werden, nutzen Sie stattdessen die File API.
Strategie 2: Die File API für große, wiederverwendbare Dateien
Die File API speichert eine Datei auf Googles Seite und gibt Ihnen ein Handle zurück. Sie laden einmal hoch und referenzieren die Datei dann in vielen Requests, ohne die Bytes erneut zu senden. Hochgeladene Dateien werden für einen begrenzten Zeitraum aufbewahrt (derzeit etwa 48 Stunden), und die Speicherung ist kostenlos. Damit passt das gut zu einer Session nach dem Muster „Handbuch laden, zehn Fragen stellen“.
from google import genai
client = genai.Client() # liest GEMINI_API_KEY aus der Umgebung
handbook = client.files.upload(file="employee_handbook.pdf")
resp = client.models.generate_content(
model="gemini-2.5-flash",
contents=[
handbook,
"How many remote work days am I allowed in my second year? "
"Quote the exact policy clause and its section number.",
],
)
print(resp.text)Das ist der komplette Ablauf „Antwort aus unserem Handbuch“ für ein einzelnes Dokument. Ein Modell der Flash-Klasse ist hier die richtige Wahl, weil es schnell und günstig ist und ein PDF problemlos liest. Pro heben Sie sich für anspruchsvolleres Reasoning über unübersichtliche Inputs aus mehreren Dokumenten auf. Modell-IDs ändern sich mit neuen Generationen (die Gemini-3-Familie ist inzwischen verfügbar). Prüfen Sie die Modellseite und setzen Sie die aktuelle Flash-ID ein.
Upload-Limits und unterstützte Dateitypen stehen im Files-Guide. Schauen Sie dort nach, statt Größenlimits zu raten, denn die ändern sich.
Long context and the File API in Gemini
Wann Long Context nicht mehr reicht
Long Context funktioniert gut, bis es nicht mehr funktioniert. Drei Signale zeigen Ihnen, dass Sie auf echtes RAG umsteigen sollten:
- Der Korpus übersteigt das Fenster: fünfzig Handbücher, ein Wiki-Export, Policy-Memos aus mehreren Jahren.
- Die Kosten pro Abfrage spielen eine Rolle. Sie zahlen für Input-TokensTokensEin Token ist die grundlegende Texteinheit, die Sprachmodelle verarbeiten, oft ein Wortfragment, ein ganzes Wort oder ein Satzzeichen und nicht ein einzelnes Zeichen.Vollständige Definition ansehen →, also ist es Verschwendung, bei jeder von 10.000 täglichen Fragen das ganze Handbuch mitzuschicken, wenn jede Antwort nur zwei Absätze braucht.
- Sie brauchen präzise, zitierfähige Herkunftsangaben über viele Quellen hinweg, nicht „irgendwo in diesem großen Block“.
Strategie 3: Das File Search Tool (Managed RAG in der Gemini API)
Seit Ende 2025 hat die Gemini API ein integriertes File Search Tool. Sie legen einen Store an und laden Dokumente hinein. Google übernimmt Chunking, EmbeddingEmbeddingEin Embedding ist ein numerischer Vektor, der Daten (Text, Bilder oder Objekte) so darstellt, dass ihre Bedeutung erfasst wird: Ähnliche Elemente liegen im Raum dicht beieinander.Vollständige Definition ansehen → und Indexierung. Bei der Abfrage übergeben Sie den Store als Tool, und Gemini holt die relevanten Passagen und liefert Quellenangaben in den Grounding-Metadaten der Response. Eine Vektordatenbank müssen Sie nicht betreiben.
import time
from google import genai
from google.genai import types
client = genai.Client()
store = client.file_search_stores.create(config={"display_name": "hr-policies"})
op = client.file_search_stores.upload_to_file_search_store(
file="employee_handbook.pdf",
file_search_store_name=store.name,
)
while not op.done:
time.sleep(5)
op = client.operations.get(op)
resp = client.models.generate_content(
model="gemini-2.5-flash",
contents="How many remote days do I get in my second year?",
config=types.GenerateContentConfig(
tools=[types.Tool(file_search=types.FileSearch(
file_search_store_names=[store.name]
))]
),
)
print(resp.text)
print(resp.candidates[0].grounding_metadata) # welche Chunks verwendet wurdenAnders als die 48-Stunden-Dateien der File API bleiben Dokumente in einem Store erhalten, bis Sie sie löschen. Zum Start berechnete Google das Embedding bei der Indexierung (etwa 0,15 $ pro Million Tokens), während Speicherung und Embeddings zur Abfragezeit kostenlos waren. Prüfen Sie aktuelle Preise und Limits in der File-Search-Dokumentation.
Für die meisten Projekte nach dem Muster „unsere 50 Policy-PDFs abfragbar machen“ ist das inzwischen der Standard-Einstieg.
Strategie 4: Eigene Embeddings und eigener Vector StoreVector StoreEine Vector Database speichert Daten als hochdimensionale numerische Vektoren (Embeddings) und findet Inhalte über Ähnlichkeit statt über exakte Treffer. Sie ist die Grundlage für semantische Suche und KI-Anwendungen.Vollständige Definition ansehen →
Bauen Sie die PipelinePipelineAlle aktiven Verkaufschancen über die Phasen des Vertriebsprozesses hinweg, zusammen mit ihrem gesamten potenziellen Wert und ihrer Abschlusswahrscheinlichkeit.Vollständige Definition ansehen → selbst, wenn Sie das Chunking steuern, Keyword-Suche einbinden, Ergebnisse reranken oder Vektoren in einer Datenbank halten wollen, die Sie bereits betreiben.
Ein Embedding ist ein Vektor (eine Liste von Zahlen), der die Bedeutung eines Textabschnitts abbildet, sodass ähnliche Chunks nahe beieinander liegen. Sie erzeugen die Embeddings der Chunks einmal und speichern sie. Bei der Abfrage erzeugen Sie das Embedding der Frage und holen die nächstgelegenen Chunks.
Googles Embedding-Modell ist gemini-embedding-001. Es unterstützt einen Task-Type-Parameter: Verwenden Sie RETRIEVAL_DOCUMENT für gespeicherte Chunks und RETRIEVAL_QUERY für die Suchfrage. Diese Einstellung wegzulassen ist der häufigste Fehler, und ererDas Verhältnis von Interaktionen (Likes, Kommentare, Shares) zur Reichweite eines Inhalts. Zeigt, wie stark die Zielgruppe reagiert, gemessen an der Zahl der Personen, die den Inhalt gesehen haben.Vollständige Definition ansehen → kostet Retrieval-Qualität.
Schritt 1: Dokumente chunken und embedden
chunks = [
"Section 4.2 Remote Work: In their second year of employment, "
"staff are entitled to up to 80 remote working days per year...",
"Section 4.3 Equipment: The company provides a laptop and...",
]
doc_vectors = client.models.embed_content(
model="gemini-embedding-001",
contents=chunks,
config={"task_type": "RETRIEVAL_DOCUMENT"},
).embeddingsFür ein kleines internes Tool reicht eine In-Memory-Liste mit Kosinus-Ähnlichkeit.
Schritt 2: Die Abfrage embedden und Chunks abrufen
import numpy as np
def cosine(a, b):
a, b = np.array(a), np.array(b)
return a @ b / (np.linalg.norm(a) * np.linalg.norm(b))
question = "How many remote days do I get in my second year?"
q_vec = client.models.embed_content(
model="gemini-embedding-001",
contents=[question],
config={"task_type": "RETRIEVAL_QUERY"},
).embeddings[0].values
scored = sorted(
zip(chunks, doc_vectors),
key=lambda c: cosine(q_vec, c[1].values),
reverse=True,
)
top_chunks = [c[0] for c in scored[:3]]Schritt 3: Eine fundierte Antwort generieren
context = "\n\n".join(top_chunks)
resp = client.models.generate_content(
model="gemini-2.5-flash",
contents=(
f"Answer using ONLY the handbook excerpts below. "
f"Cite the section number. If the answer is not present, say so.\n\n"
f"{context}\n\nQuestion: {question}"
),
)
print(resp.text)Die Anweisung, nur aus den Auszügen zu antworten und es zu sagen, wenn die Antwort fehlt, ist Ihre Absicherung gegen Halluzinationen. RAG allein hält ein Modell nicht davon ab, Antworten zu erfinden. Das gilt auch für File Search, also gehört dieselbe Anweisung auch dort in Ihren Prompt.
Wissenscheck
1. Wann sollten Sie laut der Lektion Long Context dem Aufbau einer echten RAG-Pipeline vorziehen?
2. Was ist der Hauptzweck der File API von Google im Vergleich zum Inline-Senden einer Datei?
3. Warum entfällt laut der Lektion dank nativer Multimodalität der OCR-Schritt beim Hochladen eines PDFs?
4. Wählen Sie ALLE Szenarien, in denen echtes RAG (Embeddings + Vector Store) die richtige Wahl ist.
Wählen Sie alle richtigen Antworten aus.
5. Wählen Sie ALLE Aussagen, die die File API so beschreiben, wie sie in der Lektion dargestellt wird.
Wählen Sie alle richtigen Antworten aus.
Verwechseln Sie RAG nicht mit Grounding mit Google Search
Grounding mit Google Search verbindet Gemini mit dem öffentlichen Live-Web, um aktuelle Fakten mit Quellenangaben zu liefern. Ihr Handbuch ist privat, Search Grounding findet es also nicht. Search Grounding aktivieren Sie als Tool. Für Ihre eigenen Dateien nutzen Sie File Search oder eigene Embeddings. Braucht eine Abfrage sowohl öffentliche Fakten als auch interne Richtlinien, nutzen Sie beides.
Hochskalieren: Vertex AI RAG Engine
Wenn Sie Enterprise-Kontrollen wie Data Residency, IAM, Audit-Logging oder VPC-Sicherheit brauchen, wechseln Sie zu Vertex AI, der Managed-AI-Plattform von Google Cloud. Deren RAG Engine übernimmt Chunking, Embedding, Speicherung und Retrieval über Korpora in Cloud Storage oder Drive. Außerdem können Sie Ihre Vektordatenbank selbst wählen. Einstieg unter cloud.google.com/vertex-ai.
Grobe Faustregel:
- Managed RAG mit minimalem Setup: das File Search Tool der Gemini API.
- Eigenes Ranking oder eigene Datenbank:
gemini-embedding-001plus Ihr Vector Store. - Produktion mit Compliance-Anforderungen: Vertex AI RAG Engine.
- Agentisches Retrieval innerhalb eines größeren Workflows: Kapseln Sie das Retrieval als Tool im Agent Development Kit (ADK), damit ein Agent entscheiden kann, wann er im Handbuch und wann im Web sucht.
Der No-Code-Weg: dort, wo Ihr Handbuch schon liegt
Wenn das Handbuch ein Google Doc in einer geteilten Drive ist, brauchen Sie womöglich überhaupt keine Pipeline:
- Ein Gem (eine individuelle, wiederverwendbare Gemini-Konfiguration) kann das Handbuch als Referenzdatei aufnehmen, dazu eine Anweisung wie „Beantworte HR-Fragen und nenne den Abschnitt der Richtlinie“. Die Einrichtung finden Sie unter support.google.com.
- Gemini in Google Workspace kann über das Seitenpanel mit Drive-Dateien arbeiten, wobei Sie Dateien mit „@“ referenzieren.
- Mit Apps Script können Sie die Gemini API aus Workspace heraus aufrufen. Ein Sheet könnte zum Beispiel Support-Tickets den Kategorien des Handbuchs zuordnen.
Ein Gem löst womöglich in fünf Minuten, wofür Sie gerade eine Woche Programmierarbeit einplanen wollten.
Ein praktischer Entscheidungsablauf
Wenn jemand sagt „Mach unser Handbuch abfragbar“, fragen Sie:
- Ein Dokument, gelegentliche Nutzung? Nutzen Sie die File API.
- Ein paar Dutzend Dokumente, und es soll heute Nachmittag laufen? Nutzen Sie File Search.
- Eigenes Chunking, hybride Suche oder eigene Datenbank nötig? Bauen Sie Ihre eigene Embedding-Pipeline.
- Produktion mit Compliance-Anforderungen? Nutzen Sie die Vertex AI RAG Engine.
- Nicht-technischer Verantwortlicher, und das Dokument liegt schon in Drive? Nutzen Sie ein Gem oder das Workspace-Seitenpanel.
- Werden zusätzlich öffentliche Fakten aus dem Web gebraucht? Ergänzen Sie Grounding mit Google Search.
Key Takeaways
- Probieren Sie Long Context vor RAG. Wenn der Korpus ins Fenster passt, liefert die File API mit wenig Code genaue Antworten.
- Das File Search Tool der Gemini API ist inzwischen der schnellste Weg zu Managed RAG: in einen Store hochladen, als Tool übergeben und Quellenangaben zurückbekommen.
- Bauen Sie eine eigene Pipeline mit
gemini-embedding-001nur, wenn Sie Kontrolle brauchen. Setzen Sietask_typebei jedem Aufruf:RETRIEVAL_DOCUMENTfür Chunks,RETRIEVAL_QUERYfür Fragen. - Sichern Sie sich im Prompt gegen Halluzinationen ab, indem Sie Gemini anweisen, nur aus den abgerufenen Auszügen zu antworten und es zu sagen, wenn die Antwort fehlt.
- Grounding mit Google Search deckt öffentliche Fakten ab, nicht Ihre privaten Dateien. Wechseln Sie zur Vertex AI RAG Engine, wenn Compliance es verlangt, und probieren Sie zuerst ein Gem, wenn die Nutzer nicht technisch sind.
Was Sie aus dieser Lektion umsetzen
Diese Maßnahmen sind im Playbook der Rolle zusammengefasst.
- Einzelne große Artefakte in den Long Context legen und RAG für große Korpora reservieren