Auf dieser Seite wird erläutert, wie Sie den LLM-Parser der Vertex AI RAG Engine verwenden.
Einführung
Die Vertex AI RAG Engine 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 und Grafiken extrahieren
- Bilder beschreiben
- Beziehungen zwischen Diagrammen und Text verstehen
- Kontextuell reichhaltigere und genauere Antworten geben
Die Funktionen der Vertex AI RAG Engine verbessern die Qualität der generierten Antworten erheblich.
Unterstützte Modelle
Die folgenden Modelle unterstützen den LLM-Parser der Vertex AI RAG Engine:
- Gemini 3.1 Flash-Lite
- Gemini 3 Flash
- Gemini 2.5 Pro
- Gemini 2.5 Flash
- Gemini 2.5 Flash-Lite
- Gemini 2.5 Flash
- Gemini 2.5 Flash-Lite
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 Vertex AI-Preise.
Informationen zu den geltenden Kontingenten finden Sie unter Ratenkontingente.
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 der folgenden 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 für Ihr Google Cloud Projekt.
- 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 Vertex AI-Modell senden kann. Weitere Informationen finden Sie unter Ratenlimits für Generative AI auf Vertex AI und auf der Seite Kontingente und Systemlimits 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 documentation.
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 Vertex AI 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 Vertex AI RAG Engine verwendet einen vordefinierten und optimierten 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 Vertex AI RAG Engine 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 die Vertex AI RAG Engine zum Parsen Ihrer Dokumente verwenden kann:
| Anweisung | Vorlagenaussage | 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 [Dokumentquelle angeben, z. B. ein Dokument, Text, Artikel, Bild, eine Tabelle]. | Extrahieren Sie Schlüsseldaten aus der Datei „sample.txt“. |
| Erklären Sie, wie das LLM die Ausgabe gemäß Ihren Dokumenten generieren soll. | Präsentieren Sie jede Tatsache in einem [Ausgabeformat angeben, z. B. eine strukturierte Liste oder ein Textformat] und verlinken Sie sie mit der [Quellposition angeben, z. B. eine Seite, ein Absatz, eine Tabelle oder eine Zeile]. | Präsentieren Sie jede Tatsache in einer strukturierten Liste und verlinken Sie sie mit der entsprechenden Beispieldatei. |
| Heben Sie hervor, worauf sich das LLM konzentrieren soll. | Extrahieren Sie [Schlüsseldatentypen angeben, z. B. Namen, Datumsangaben, Zahlen, Attribute oder Beziehungen] genau wie angegeben. | Extrahieren Sie Namen und Datumsangaben. |
| 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 gesagt wird. | Keine Meinungsäußerung. Extrahieren Sie nur das, was im Dokument ausdrücklich gesagt wird. |
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 zur Verarbeitung verschiedener 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 Vertex AI RAG Engine 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 sowie die entsprechenden Informationen extrahieren. | |
| Daten aus Grafiken extrahieren | Der LLM-Parser konnte verschiedene Arten von Grafiken interpretieren, z. B. Liniendiagramme, und basierend auf der Abfrage bestimmte Datenpunkte extrahieren. | |
| Beziehungen zwischen Überschriften und Text erfassen | Der LLM-Parser hat sich an den Prompt gehalten und die Überschriftenstrukturen berücksichtigt. So konnte er 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. Ein Beispiel für das Abrufen von RAG-Dateien aus einem Korpus basierend auf einem Abfragetext finden Sie unter Abrufabfrage.
Nächste Schritte
- Weitere Informationen zur Vertex AI RAG Engine finden Sie unter Vertex AI RAG Engine – Übersicht.
- Weitere Informationen zur Vertex AI RAG Engine finden Sie unter Vertex AI RAG Engine API.