Auf dieser Seite wird erläutert, wie Sie den LLM-Parser der RAG Engine der Gemini Enterprise Agent Platform verwenden.
Einführung
Die RAG Engine der Gemini Enterprise Agent Platform verwendet LLMs zum Parsen von Dokumenten. LLMs können Dokumente auf folgende Weise effektiv verarbeiten:
- Semantische Inhalte in verschiedenen Formaten verstehen und interpretieren
- Relevante Dokumentblöcke abrufen
- Sinnvolle Informationen aus Dokumenten extrahieren
- Relevante Abschnitte in Dokumenten identifizieren
- Komplexe Dokumente genau zusammenfassen
- Visuelle Elemente verstehen und mit ihnen interagieren
- Daten aus Diagrammen extrahieren
- Bilder beschreiben
- Beziehungen zwischen Diagrammen und Text verstehen
- Kontextreichere und genauere Antworten geben
Die Funktionen der RAG Engine der Gemini Enterprise Agent Platform verbessern die Qualität der generierten Antworten erheblich.
Unterstützte Modelle
Die folgenden Modelle unterstützen den LLM-Parser der RAG Engine der Gemini Enterprise Agent Platform:
Unterstützte Dateitypen
Die folgenden Dateitypen werden vom LLM-Parser unterstützt:
application/pdfimage/pngimage/jpegimage/webpimage/heicimage/heif
Preise und Kontingente
Preisdetails finden Sie unter Preise für die Gemini Enterprise Agent Platform.
Informationen zu den geltenden Kontingenten finden Sie unter Raten kontingente.
Der LLM-Parser ruft Gemini-Modelle auf, um Ihre Dokumente zu parsen. Dadurch entstehen zusätzliche Kosten, die Ihrem Projekt in Rechnung gestellt werden. Die Kosten können mit dieser Formel grob geschätzt werden:
cost = number_of_document_files * average_pages_per_document * (average_input_tokens * input_token_pricing_of_selected_model + average_output_tokens * output_token_pricing_of_selected_model)
Beispiel: Sie haben 1.000 PDF-Dateien und jede PDF-Datei hat 50 Seiten. Eine durchschnittliche PDF-Seite hat 500 Tokens und für das Prompting sind zusätzlich 100 Tokens erforderlich. Die durchschnittliche Ausgabe beträgt 100 Tokens.
In Ihrer Konfiguration wird Gemini 2.0 Flash-Lite zum Parsen verwendet.Die Kosten betragen 0,075 $für 1 Mio.Eingabe-Tokens und 0,3 $für Ausgabe-Text-Tokens.
cost = 1,000 * 50 * (600 * 0.075 / 1M + 100 * 0.3 / 1M) = 3.75
Die Kosten betragen 3,75 $.
Dateien mit aktiviertem LlmParser importieren
Ersetzen Sie die Werte in den folgenden Variablen, die in den Codebeispielen verwendet werden:
PROJECT_ID: Die ID Ihres Google Cloud Projekts.
LOCATION: Die Region, in der Ihre Anfrage verarbeitet wird.
RAG_CORPUS_RESOURCE: Die ID Ihres Korpus.
GCS_URI: Der Cloud Storage-URI der Dateien, die Sie importieren möchten.
GOOGLE_DRIVE_URI: Der Google Drive-URI der Dateien , die Sie importieren möchten.
MODEL_NAME: Der Ressourcenname des Modells, das zum Parsen verwendet wird.
Format:
projects/{project_id}/locations/{location}/publishers/google/models/{model_id}CUSTOM_PARSING_PROMPT: Optional: Custom Prompt, der vom Kunden für den LLM-Parser konfiguriert wird, um Dokumente zu parsen.
MAX_PARSING_REQUESTS_PER_MIN: Optional: Die maximale Anzahl von Anfragen, die der Job pro Minute an das Agent Platform-Modell senden kann. Weitere Informationen finden Sie unter Generative AI auf der Agent Platform Raten limits und auf der Seite Kontingente & System limits für Ihr Projekt, um einen geeigneten Wert festzulegen.
REST
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/ragCorpora/RAG_CORPUS_RESOURCE/ragFiles:import" -d '{
"import_rag_files_config": {
"gcs_source": {
"uris": ["GCS_URI", "GOOGLE_DRIVE_URI"]
},
"rag_file_chunking_config": {
"chunk_size": 512,
"chunk_overlap": 102
},
"rag_file_parsing_config": {
"llm_parser": {
"model_name": "MODEL_NAME",
"custom_parsing_prompt": "CUSTOM_PARSING_PROMPT"
"max_parsing_requests_per_min": "MAX_PARSING_REQUESTS_PER_MIN"
}
}
}
}'
Python
Informationen zur Installation des Vertex AI SDK for Python finden Sie unter Installieren des Vertex AI SDK for Python. Weitere Informationen finden Sie in der Referenzdokumentation zur Python API.
from vertexai import rag
import vertexai
PROJECT_ID = "PROJECT_ID"
CORPUS_NAME = "RAG_CORPUS_RESOURCE"
LOCATION = "LOCATION"
MODEL_ID = "MODEL_ID"
MODEL_NAME = "projects/{PROJECT_ID}/locations/{LOCATION}/publishers/google/models/{MODEL_ID}"
MAX_PARSING_REQUESTS_PER_MIN = MAX_PARSING_REQUESTS_PER_MIN # Optional
CUSTOM_PARSING_PROMPT = "Your custom prompt" # Optional
PATHS = ["https://drive.google.com/file/123", "gs://my_bucket/my_files_dir"]
# Initialize Agent Platform API once per session
vertexai.init(project={PROJECT_ID}, location={LOCATION})
transformation_config = rag.TransformationConfig(
chunking_config=rag.ChunkingConfig(
chunk_size=1024, # Optional
chunk_overlap=200, # Optional
),
)
llm_parser_config = rag.LlmParserConfig(
model_name = MODEL_NAME,
max_parsing_requests_per_min=MAX_PARSING_REQUESTS_PER_MIN, # Optional
custom_parsing_prompt=CUSTOM_PARSING_PROMPT, # Optional
)
rag.import_files(
CORPUS_NAME,
PATHS,
llm_parser=llm_parser_config,
transformation_config=transformation_config,
)
Prompting
Der LLM-Parser der RAG Engine der Gemini Enterprise Agent Platform verwendet einen vordefinierten und abgestimmten Prompt zum Parsen von Dokumenten. Wenn Sie jedoch spezielle Dokumente haben, die möglicherweise nicht für einen allgemeinen Prompt geeignet sind, können Sie bei Verwendung der API einen benutzerdefinierten Prompt zum Parsen angeben. Wenn Sie Gemini auffordern, Ihre Dokumente zu parsen, fügt die RAG Engine der Gemini Enterprise Agent Platform Ihrem Standard-System-Prompt einen Prompt hinzu.
Tabelle mit Prompt-Vorlagen
Die folgende Tabelle enthält ein Beispiel für eine Prompt-Vorlage, die Ihnen beim Erstellen von Prompts helfen soll, die von der RAG Engine der Gemini Enterprise Agent Platform zum Parsen Ihrer Dokumente verwendet werden können:
| Anleitung | Vorlagenanweisung | Beispiel |
|---|---|---|
| Rolle angeben. | Sie sind ein/e [Rolle angeben, z. B. ein/e Faktenextraktor /in oder ein/e Informationsabrufer/in]. | Sie sind ein/e Informationsabrufer/in. |
| Aufgabe angeben. | Extrahieren Sie [Art der Informationen angeben, z. B. Faktenaussagen, Schlüsseldaten oder bestimmte Details] aus dem/der [Dokumentquelle angeben, z. B. Dokument, Text, Artikel, Bild, Tabelle]. | Extrahieren Sie Schlüsseldaten aus der Datei „sample.txt“. |
| Erläutern Sie, wie das LLM die Ausgabe gemäß Ihren Dokumenten generieren soll. | Präsentieren Sie jede Tatsache in einem [Ausgabeformat angeben, z. B. strukturierte Liste oder Textformat] und verlinken Sie sie mit der [Quellort angeben, z. B. Seite, Absatz, Tabelle oder Zeile]. | Präsentieren Sie jede Tatsache in einer strukturierten Liste und verlinken Sie sie mit der Beispieldatei. |
| Heben Sie hervor, worauf sich das LLM konzentrieren soll. | Extrahieren Sie [Schlüsseldatentypen angeben, z. B. Namen, Daten, Zahlen, Attribute oder Beziehungen] genau wie angegeben. | Extrahieren Sie Namen und Daten. |
| Heben Sie hervor, was das LLM vermeiden soll. | [Aktionen auflisten, die vermieden werden sollen, z. B. Analyse, Interpretation, Zusammenfassung, Schlussfolgerung oder Meinungsäußerung]. Extrahieren Sie nur das, was im Dokument ausdrücklich steht. | Keine Meinungsäußerung. Extrahieren Sie nur das, was im Dokument ausdrücklich steht. |
Allgemeine Anleitung
Folgen Sie dieser Anleitung, um Ihren Prompt für den LLM-Parser zu schreiben.
- Spezifisch: Definieren Sie die Aufgabe und die Art der zu extrahierenden Informationen klar.
- Detailliert: Geben Sie detaillierte Anweisungen zum Ausgabeformat, zur Quellen angabe und zum Umgang mit verschiedenen Datenstrukturen.
- Einschränkend: Geben Sie explizit an, was die KI nicht tun soll, z. B. Analyse oder Interpretation.
- Klar: Verwenden Sie eine klare und direktive Sprache.
- Strukturiert: Organisieren Sie die Anweisungen logisch mit nummerierten Listen oder Aufzählungs zeichen, um die Lesbarkeit zu verbessern.
Analyse der Parsing-Qualität
In dieser Tabelle sind die Ergebnisse von Szenarien aufgeführt, die Kunden mit der RAG Engine der Gemini Enterprise Agent Platform ausgeführt haben. Das Feedback zeigt, dass der LLM-Parser die Qualität des Parsens von Dokumenten verbessert.
| Szenario | Ergebnis | |
|---|---|---|
| Informationen auf Folien parsen und Abschnitte verknüpfen | Der LLM-Parser hat Abschnittstitel auf einer Folie erfolgreich mit den detaillierten Informationen auf den nachfolgenden Folien verknüpft. | |
| Informationen aus Tabellen verstehen und extrahieren | Der LLM-Parser hat Spalten und Überschriften in einer großen Tabelle korrekt zugeordnet, um bestimmte Fragen zu beantworten. | |
| Flussdiagramme interpretieren | Der LLM-Parser konnte der Logik eines Flussdiagramms folgen und die richtige Reihenfolge der Aktionen und die entsprechenden Informationen extrahieren. | |
| Daten aus Diagrammen extrahieren | Der LLM-Parser konnte verschiedene Arten von Diagrammen interpretieren, z. B. Liniendiagramme, und bestimmte Datenpunkte basierend auf der Abfrage extrahieren. | |
| Beziehungen zwischen Überschriften und Text erfassen | Der LLM-Parser hat sich anhand des Prompts an den Überschriften Strukturen orientiert und konnte alle relevanten Informationen abrufen, die mit einem bestimmten Thema oder Abschnitt verknüpft sind. | |
| Möglichkeit, Einschränkungen bei der Einbettung mit Prompt Engineering zu überwinden | Obwohl die Einschränkungen des Einbettungsmodells in einigen Anwendungsfällen zunächst ein Problem darstellten, haben zusätzliche Tests gezeigt, dass ein gut formulierter Prompt für den LLM-Parser diese Probleme möglicherweise beheben und die richtigen Informationen abrufen kann, auch wenn das semantische Verständnis für das Einbettungsmodell allein eine Herausforderung darstellt. |
Der LLM-Parser verbessert die Fähigkeit des LLM, den Kontext in einem Dokument zu verstehen und zu analysieren, was zu genaueren und umfassenderen Antworten führt.
Abrufabfrage
Nachdem Sie einen Prompt eingegeben haben, der an ein generatives KI-Modell gesendet wird, durchsucht die Abrufkomponente in RAG in ihrer Wissensdatenbank nach Informationen, die für die Abfrage relevant sind. Weitere Informationen zum Abrufen von RAG-Dateien aus einem Korpus finden Sie unter Methode: ragFiles.get.
Nächste Schritte
Weitere Informationen zur RAG Engine der Gemini Enterprise Agent Platform finden Sie unter Übersicht über die RAG Engine der Gemini Enterprise Agent Platform.
Weitere Informationen zur RAG Engine der Gemini Enterprise Agent Platform finden Sie unter: