RAG-Tool Object Storage - Richtlinien für generative KI-Agents
In den folgenden Abschnitten wird beschrieben, wie Sie Object Storage-Daten für RAG-Tools in Generative AI Agents vorbereiten.
Allgemeine Richtlinien
Befolgen Sie die folgenden Richtlinien, um Daten für Datenquellen von Generative AI Agents vorzubereiten, bevor Sie sie in Object Storage hochladen:
- Datenquellen: Daten für generative AI-Agents müssen als Dateien in einen Objektspeicher-Bucket hochgeladen werden.
- Anzahl Buckets: Pro Datenquelle ist nur ein Bucket zulässig.
- Unterstützte Dateitypen: Die Dateien
PDF
,txt
,JSON
,HTML
und Markdown (MD
) werden unterstützt. - Limit für Dateigröße: Jede Datei darf nicht größer als 100 MB sein. Alle Dateien, die den Grenzwert überschreiten, werden ignoriert. Weitere Anforderungen finden Sie unter Dateitypanforderungen und Support.
- URLs: Alle in den Dokumenten vorhandenen Hyperlinks werden extrahiert und als Hyperlinks in der Chatantwort angezeigt.
- Daten nicht bereit: Wenn Ihre Daten noch nicht verfügbar sind, erstellen Sie einen leeren Ordner für die Datenquelle, und füllen Sie ihn später auf. Auf diese Weise können Sie Daten in die Quelle aufnehmen, nachdem der Ordner aufgefüllt wurde.
Richten Sie die folgenden Object Storage-Berechtigungen ein, bevor Sie fortfahren.
- Benutzerzugriff auf Object Storage-Dateien
- Zugriff auf Datenaufnahmejobs auf Object Storage-Dateien für Jobs mit langer Ausführungszeit
Die Berechtigungen finden Sie unter Zugriff erhalten.
Dateitypanforderungen und Support
Datenquellendateien müssen in Object Storage hochgeladen werden. Stellen Sie sicher, dass die Anforderungen für den Typ der aufzunehmenden Datei erfüllt sind.
Folgende Anforderungen und Unterstützung für die Aufnahme von PDF
-Dateien sind erforderlich:
- Dateierweiterung: Muss
.pdf
lauten - Dateigröße: Eine einzelne Datei darf 100 MB nicht überschreiten.
- Dateikennwort: Wenn eine PDF-Datei passwortgeschützt ist, wird ein Dateifehler in den Statuslogs aufgezeichnet.
- Inhalt: Eine PDF-Datei kann Bilder, Diagramme und Referenztabellen enthalten, darf jedoch 8 MB nicht überschreiten.
- Diagrammvorbereitung: Für Diagramme ist keine spezielle Vorbereitung erforderlich, solange sie zweidimensional mit beschrifteten Achsen sind. Das Modell kann Fragen zu den Diagrammen ohne explizite Erklärungen beantworten.
- Tabellenvorbereitung: Verwenden Sie Referenztabellen mit mehreren Zeilen und Spalten. Beispiel: Der Agent kann die Tabelle auf der Seite Limits lesen.
txt
Folgende Anforderungen und Unterstützung für die Aufnahme von txt
-Dateien sind erforderlich:
- Dateierweiterung: Muss
.txt
lauten - Dateigröße: Eine einzelne Datei darf 100 MB nicht überschreiten.
JSON
Folgende Anforderungen und Unterstützung für die Aufnahme von JSON
-Dateien sind erforderlich:
- Dateierweiterung: Muss
.json
lauten - Dateigröße: Eine einzelne Datei darf 100 MB nicht überschreiten.
- Codierung: Nur UTF-8-Codierung in Englisch wird unterstützt. Die strukturierten JSON-Daten können Schlüssel/Wert-Paare, Arrays und verschachtelte Objekte enthalten.
- Verschachtelungstiefe: Die Strukturtiefe darf 50 nicht überschreiten.
- Listenlimit: Eine Liste innerhalb der JSON-Struktur darf nicht länger als 10000 Elemente sein.
HTML
Folgende Anforderungen und Unterstützung für die Aufnahme von HTML
-Dateien sind erforderlich:
- Dateierweiterung: Muss
.html
lauten - Dateigröße: Eine einzelne Datei darf 100 MB nicht überschreiten.
- Inhalt: Nur sichtbarer Inhalt wird aufgenommen. Dynamischer Inhalt wird nicht aufgenommen, und Skripttags werden entfernt.
- Bilder: Images, die in einer Datei referenziert werden, können verarbeitet werden, wenn die Bildquelle kein externer
HTTP
- oder absoluter Pfad ist. Bilder, die folgende Anforderungen nicht erfüllen, werden ignoriert.- Nur
JPEG
-Images (.jpg
oder.jpeg
) werden unterstützt. - Ein einzelnes Bild darf 6 MB nicht überschreiten. Alle Bilder, die den Grenzwert überschreiten, werden ignoriert.
- Bilder müssen auf derselben Ebene wie die hochgeladene HTML-Datei oder darunter in Object Storage hochgeladen werden.
- Der Quellpfad (Attribut
src
) zu jedem Bild muss ein Pfad relativ zur übergeordneten HTML-Datei sein. Beispiel:<img src="./my-image.jpg"> <img src="./myfolder/my-imagetwo.jpg">
- Der Quellpfad (Attribut
src
) zu jedem Image darf keine URLs (http
,https
oderdata
) angeben
- Nur
MD (Preisabschrift)
Folgende Anforderungen und Unterstützung für die Aufnahme von MD
-(Markdown-)Dateien sind erforderlich:
- Dateierweiterung: Muss
.md
lauten - Dateigröße: Eine einzelne Datei darf 100 MB nicht überschreiten.
- Bilder: Bilder werden ignoriert und nicht verarbeitet.
Erweiterte Tabellen verstehen
Ein verbessertes Tabellenverständnis, ein Feature von RAG-Tools, zielt darauf ab, die Genauigkeit von Antworten auf Abfragen mit Antworten zu verbessern, die in PDF-Tabellendaten eingebettet sind. Diese Tabellen werden verarbeitet, um genauere und relevantere Antworten zu generieren, die auf die enthaltenen Informationen abgestimmt sind. Im Allgemeinen können die RAG-Tools die Tabellen lesen. Damit das RAG-Tool die Tabellen mit verbessertem Tabellenverständnis lesen kann, stellen Sie sicher, dass die Tabellen über die folgenden Features verfügen:
- Alle Zellen der Tabelle sind durch sichtbare Linien oder Objektgrenzen von anderen Zellen getrennt, einschließlich der Headernamen in der ersten Zeile.
- Alle Spalten, einschließlich der ersten Spalte, haben einen Headernamen.
- Jede Tabelle enthält mehr als eine Spalte und mehr als eine Zeile, wobei die Zeile mit Headernamen ausgeschlossen wird.
Count of tables that support enhanced table understanding in following PDFs:
- enhanced_table_test_data/2025_Report1.pdf has 4 tables processed successfully
- enhanced_table_test_data/2025_Report2.pdf has 3 tables processed successfully
- enhanced_table_test_data/2025_Report3.pdf has 3 tables processed successfully
Antworten mit Metadatenfilterung verbessern
Verwenden Sie vordefinierte Metadaten, um Filter während eines Chats anzuwenden. Wenn Filter angewendet werden, sind die Suchvorgänge eines Agent in einer Chatsession auf Datendateien beschränkt, die mit den Metadaten verknüpft sind. So kann das Modell Antworten generieren, die für den Inhaltsumfang relevant sind, und so die Antwortgenauigkeit und Relevanz des Agent verbessern.
In den folgenden Schritten wird ein Überblick über die Verwendung der Metadatenfilterfunktion beschrieben. Nachdem Sie die Workflowübersicht verstanden haben, prüfen Sie die Details für Ihren Anwendungsfall in den Abschnitten, die nach den Überblickschritten bereitgestellt wurden.
- Erstellen Sie in einem Texteditor das Metadatenschema, das für die Filter erforderlich ist, die Sie zur Verfügung stellen möchten. Schreiben Sie das Schema im JSON-Format. Geben Sie der Datei den Namen
_metadata_schema.json
.Beispiel:
{ "metadataSchema": [ { "name": "publication_year", "type": "integer" }, { "name": "title", "type": "string" } ] }
- Laden Sie die in Schritt 1 erstellte Datei
_metadata_schema.json
auf die Stammebene des Objektspeicher-Buckets hoch, der die Datendateien für eine Wissensdatenbank enthält. - Erstellen Sie JSON-Dateien, um Datendateien mit den vordefinierten Metadaten zu verknüpfen und die Metadatenwerte bereitzustellen.
Beispiel:
{ "metadataAttributes": { "publication_year": 2020 } }
Sie können eine oder mehrere Datendateien oder alle Dateien in einem Bucket mit den Metadaten verknüpfen. Einzelheiten zu den JSON-Dateinamenskonventionen, die für die ausgewählten Optionen verwendet werden sollen, finden Sie unter Metadatenfilteroptionen (Dateiname und Speicherort).
- Laden Sie die in Schritt 3 erstellten JSON-Dateien in den Objektspeicher-Bucket hoch, der die Datendateien für eine Wissensdatenbank enthält. Stellen Sie für jede Option sicher, dass Sie die Datei am richtigen Speicherort in der Hierarchie speichern.
- Erstellen Sie eine Wissensdatenbank. Wählen Sie Object Storage als Datenspeichertyp und die Option, den Aufnahmejob automatisch zu starten.
Wenn die Datendateien aufgenommen werden, erstellt Generative AI Agents eine Liste der Metadatennamen und der Werte, die in einem Chat ausgewählt werden können. Informationen zum Anzeigen der aufgenommenen Metadatennamen und -werte finden Sie unter Details einer Knowledge Base in Generative AI Agents abrufen.
- Erstellen Sie einen Agent mit einem RAG-Tool, und wählen Sie die in Schritt 5 erstellte Wissensdatenbank aus. Wählen Sie im Agent die Option zum automatischen Erstellen eines Endpunkts aus. Wenn Sie Hilfe benötigen, lesen Sie Agent erstellen und RAG-Tool erstellen.
- Fügen Sie in einem Chatfenster einen oder mehrere vordefinierte Metadatenfilter hinzu, und wählen Sie die anzuwendenden Werte aus. Siehe Metadatenfilter in einem Chat verwenden.
In den folgenden Abschnitten erfahren Sie, wie Sie Metadaten-JSON-Dateien für Ihren Anwendungsfall vorbereiten und Metadatenfilter in einer Chatsession hinzufügen und anwenden.
Wählen Sie eine oder mehrere der folgenden Methoden, die für Sie am besten geeignet sind.
Methode | Dateiname und Speicherort | Verwendung |
---|---|---|
Fügen Sie Metadaten für alle Dateien in einem Bucket ein, ohne die Dateinamen zu nennen. | Erstellen Sie eine _common.metadata.json -Datei auf der Object Storage-Root-Ebene. |
Verwenden Sie diese Datei für Metadaten, die für alle Dateien im Bucket gelten. Mit dieser Methode wird verhindert, dass objektübergreifend Metadaten doppelt eingegeben werden. |
Erstellen Sie in einer Datei einen Metadateneintrag für jede Datei in einem Bucket, und fügen Sie die Dateinamen ein. | Erstellen Sie eine _all.metadata.json -Datei auf der Object Storage-Root-Ebene. |
Verwenden Sie diese Methode, wenn Sie viele Dateien haben, und das Erstellen einer Datei, die alle Dateinamen enthält, ist für Sie bequemer als das Erstellen einer Metadatendatei pro Datei. |
Erstellen Sie eine Metadatendatei für jede Datei in einem Bucket. | Erstellen Sie eine <file-name>.metadata.json -Datei für jede Datei auf Dateiebene.
|
Verwenden Sie diese Methode, wenn die Metadaten für jede Datei unterschiedlich sind und es nicht viele Dateien gibt, für die eine Metadatendatei erstellt werden kann, oder wenn Sie die Erstellung der Metadatendateien automatisieren. |
Fügen Sie jeder Datei Object Storage-Metadatenheader hinzu. | Fügen Sie einen Metadatenheader über die Object Storage-Metadateneigenschaft jeder Datei hinzu. | Verwenden Sie diese Methode, wenn Sie nur wenige Metadateneigenschaften enthalten müssen. Wir empfehlen Ihnen, die anderen Methoden mit JSON-Dateien zu verwenden, da Dateien einfacher zu aktualisieren und zu verwalten sind und Metadatenheader schwer zu aktualisieren sind. |
Für alle Methoden müssen Sie eine Metadaten-Schemadatei mit dem Namen _metadata_schema.json
auf der Root-Ebene des Object Storage-Buckets definieren.
Im Folgenden finden Sie eine Beispielhierarchie, in der Sie die benötigten Metadatendateien speichern.
Die folgenden Schritte zeigen anhand von Beispielen, wie die Metadaten-JSON-Dateien formatiert werden. Siehe auch Limits für Metadatenfilterung.
Sie können die Metadatenfelder nicht ändern oder entfernen, nachdem die Wissensdatenbankdaten aufgenommen wurden. Sie können neue Felder mit dem zulässigen Limit hinzufügen. Um ein Feld zu entfernen oder zu aktualisieren, erstellen Sie die Wissensdatenbank neu.
Bei der folgenden Prozedur wird davon ausgegangen, dass Sie das erforderliche Metadatenschema und die optionalen Metadatenfilter-JSON-Dateien, eine Wissensdatenbank und einen Agent mit einem RAG-Tool und einem Endpunkt erstellt haben.
Beschreibung | Grenzwert |
---|---|
Maximale Anzahl Einträge in _all.metadata.json |
10.000 |
Maximale Anzahl Metadatenfelder, die für jede Datei angegeben werden können | 20 |
Maximale Anzahl von Elementen in einer list_of_string type |
10 |
Maximale Länge eines einzelnen Elements in einem list_of_string -Typ |
50 |
Maximale Länge eines Metadatenschlüssels in Zeichen | 25 |
Maximale Länge des Metadatenwerts in Zeichen | 50 |
Metadaten zu einem Object Storage-Metadatenheader hinzufügen
Daten mit benutzerdefinierter URL zu einem Object Storage-Bucket hinzufügen
Beta-Kunden:
Wenn Sie in der Beta-Phase eine Wissensdatenbank erstellt haben, müssen Sie möglicherweise die Datenquelle löschen und neu erstellen, damit das URL-Handling-Feature funktioniert.
Einem Zitat eine benutzerdefinierte URL zuweisen
metadata
eine benutzerdefinierte URL für diese Datei hinzufügen.In diesem Thema wird gezeigt, wie Sie das Objekt metadata
über die OCI-CLI hinzufügen oder aktualisieren.
- Das Objekt
metadata
, das die Standardzitation außer Kraft setzt, muss den Namencustomized_url_source
haben. - Sie können ein
metadata
-Objekt mit dem Namencustomized_url_source
verwenden. - Jede
customized_url_source
kann nur eine URL haben. - Die Befehle im 5. Schritt können das Objekt
metadata
hinzufügen und aktualisieren, da sie den Wert des aktuellen Objektsmetadata
ersetzen. - Stellen Sie sicher, dass Sie die Werte für das Objekt
--metadata
mit dem Format übergeben, das in den Befehlen im 5. Schritt angezeigt wird.