0 / 0
Zurück zur englischen Version der Dokumentation
Automatisierung eines RAG-Musters mit AutoAI (Beta)
Letzte Aktualisierung: 16. Jan. 2025
Automatisierung eines RAG-Musters mit AutoAI (Beta)

Verwenden Sie AutoAI, um die Suche nach einem optimierten, produktionsqualitätsbasierten Retrieval-Augmented-Generation-Muster (RAG) auf der Grundlage Ihrer Daten und Ihres Anwendungsfalls zu automatisieren und zu beschleunigen.

Wichtig: Diese Funktion ist eine Beta-Version. Solange sich diese Funktion in der Beta-Phase befindet, ist die Durchführung des Experiments kostenlos, und es werden keine Token verbraucht. Allerdings verbrauchen die Aufrufe von RAG-Mustern und deren Ableitungen, die nach Abschluss des Experiments erfolgen, Ressourcen in der üblichen Höhe.
Datenformat:
Dokumentensammlungsdateien des Typs PDF, HTML, DOCX oder einfacher Text
Testdaten mit Fragen und Antworten im JSON-Format '
Datendateigrenzen
Bis zu 20 Dateien oder Ordner für die Dokumentensammlung
1 JSON-Datei für Testdaten '
Umgebungsgröße
Groß: 8 CPUs und 32 GB RAM

Genaue Antworten mit Retrieval-unterstützter Generierung

Retrieval-augmented generation (RAG) kombiniert die generative Kraft eines großen Sprachmodells mit der Genauigkeit einer Sammlung von Grundlagendokumenten. Die Interaktion mit einer RAG-Anwendung folgt diesem Muster:

  1. Ein Nutzer stellt eine Frage an die App.
  2. Bei der Suche wird zunächst der relevante Kontext aus einer Reihe von Grundlagendokumenten abgerufen.
  3. Das dazugehörige große Sprachmodell erzeugt eine Antwort, die die relevanten Informationen enthält.

Die Beispiel-Notebooks, die für dieses Feature zur Verfügung gestellt werden, verwenden beispielsweise die Produktdokumentation für die watsonx.ai Python als Basisdokumente für eine Q&A-App über die Programmierung von watsonx.ai. Pattern-Nutzer profitieren von spezifischen, relevanten Informationen aus der Dokumentation, wobei das generative KI-Modell den Kontext hinzufügt und die Antworten in natürlicher Sprache präsentiert.

Eine vollständige Beschreibung und Beispiele dafür, wie die abruferweiterte Generierung Ihre Frage- und Antwortanwendungen verbessern kann, finden Sie unter Retrieval-erweiterte Generierung (RAG).

Automatisierung der Suche nach der besten RAG-Konfiguration

RAG verfügt über zahlreiche Konfigurationsparameter, z. B. welches große Sprachmodell gewählt werden soll, wie die Grundlagendokumente zerlegt werden sollen und wie viele Dokumente abgerufen werden sollen. Konfigurationsoptionen, die für einen anderen Anwendungsfall gut funktionieren, sind möglicherweise nicht die beste Wahl für Ihre Daten. Um das bestmögliche RAG-Muster für Ihren Datensatz zu erstellen, können Sie alle möglichen Kombinationen von RAG-Konfigurationsoptionen untersuchen, um die beste Lösung zu finden, zu bewerten und einzusetzen. Dieser Teil des Prozesses kann eine erhebliche Investition von Zeit und Ressourcen erfordern. So wie Sie AutoAI nutzen können, um Modelle für maschinelles Lernen schnell zu trainieren und zu optimieren, können Sie AutoAI-Funktionen nutzen, um die Suche nach der optimalen RAG-Lösung auf der Grundlage Ihrer Daten und Ihres Anwendungsfalls zu automatisieren. Die Beschleunigung der Versuche kann die Zeit bis zur Produktion drastisch verkürzen.

Zu den wichtigsten Merkmalen des AutoAI-Ansatzes gehören:

  • Vollständige Erkundung und Bewertung einer begrenzten Anzahl von Konfigurationsoptionen .
  • Schnelle Neubewertung und Anpassung der Konfiguration, wenn sich etwas ändert. So können Sie zum Beispiel den Trainingsprozess leicht wiederholen, wenn ein neues Modell verfügbar ist oder wenn die Auswertungsergebnisse eine Änderung der Qualität der Antworten signalisieren.

Die Verwendung von AutoAI automatisiert den gesamten Ablauf von der Erprobung bis zur Bereitstellung. Das folgende Diagramm veranschaulicht den AutoAI-Ansatz, um ein optimiertes RAG-Muster für Ihre Daten und Ihren Anwendungsfall in 3 Ebenen zu finden:

  • Auf der Basisebene befinden sich parametrisierte RAG-Pipelines, die zum Auffüllen eines Vektorspeichers (Index) und zum Abrufen von Daten aus dem Vektorspeicher verwendet werden, wenn das große Sprachmodell Antworten generiert.
  • Anschließend wird die Qualität der Antworten mit Hilfe von RAG-Bewertungsmetriken und Benchmarking-Tools bewertet.
  • Schließlich sucht ein Hyperparameter-Optimierungsalgorithmus nach der bestmöglichen RAG-Konfiguration für Ihre Daten.

Automatisieren eines RAG-Musters mit dem AutoAI SDK

AutoAI RAG-Optimierungsverfahren

Die Durchführung von Experimenten mit AutoAI RAG vermeidet das Testen aller RAG-Konfigurationsoptionen (z. B. eine Gittersuche) durch die Verwendung eines Hyperparameter-Optimierungsalgorithmus. Das folgende Diagramm zeigt eine Teilmenge des RAG-Konfigurationssuchraums mit 16 zur Auswahl stehenden RAG-Mustern. Wenn das Experiment sie alle bewertet, werden sie in eine Rangliste von 1 bis 16 eingeordnet, wobei die drei Konfigurationen mit der höchsten Bewertung als die leistungsfähigsten gekennzeichnet werden. Der Optimierungsalgorithmus bestimmt, welche Teilmenge der RAG-Muster ausgewertet werden soll, und beendet die Verarbeitung der anderen, die grau dargestellt sind. Dieses Verfahren vermeidet die Erkundung eines exponentiellen Suchraums und wählt dennoch die in der Praxis besser funktionierenden RAG-Muster aus.

Automatisieren des Optimierungsprozesses für RAG-Muster

Verwenden Sie den schnellen Weg zur Automatisierung der Suche nach einem RAG-Muster

AutoAI bietet eine no-code Lösung für die Automatisierung der Suche nach einem RAG-Muster. Um den Fastpath zu nutzen, beginnen Sie mit einem Projekt und verwenden die AutoAI, um Ihre Erdungs- und Prüfunterlagen hochzuladen. Übernehmen Sie die Standardkonfiguration oder aktualisieren Sie die Experimenteinstellungen. Führen Sie das Experiment durch, um die für Ihren Anwendungsfall am besten geeigneten RAG-Muster zu erstellen.

Verwenden Sie das AutoAI SDK für die Kodierung eines RAG-Musters

Verwenden Sie die Beispiel-Notebooks, um zu lernen, wie Sie die watsonx.ai Python Client-Bibliothek (Version 1.1.11 oder höher) verwenden, um eine automatisierte RAG-Lösung für Ihren Anwendungsfall zu programmieren.

Beispiel Beschreibung
Automatisierung der RAG-Muster mit der Chroma-Datenbank
- Verwendet die watsonx.ai Python SDK Dokumentationsdateien als Grundlagendokumente für ein RAG-Muster.
- Speichert den vektorisierten Inhalt in der standardmäßigen, speicherinternen Chroma-Datenbank
Automatisierung des RAG-Musters mit Milvus – Verwendet die Dokumentationsdateien Python SDK von watsonx.ai als Grundlage für ein RAG-Muster.
- Speichert den vektorisierten Inhalt in einer externen Milvus -Datenbank

Unterstützte Funktionen

Überprüfen Sie diese Details für Funktionen, die in der Beta-Version des AutoAI RAG-Prozesses enthalten sind.

Funktion Beschreibung
Unterstützte Schnittstelle -API
Dateiformate für die Sammlung von Grundlagendokumenten PDF, HTML, DOCX, einfacher Text
Datenverbindungen für die Dokumentensammlung IBM Cloud Object Storage (Bucket)
Ordner im Bucket
Dateien (bis zu 20)
Testdatenformat JSON mit festem Schema (Felder: - question, correct_answer, correct_answer_document_ids)
Datenverbindungen für Testdaten IBM Cloud Object Storage(einzelne JSON-Datei) "
einzelne JSON-Datei im Projekt oder Raum (Datenbestand) "
einzelne JSON-Datei im NFS
Chunking Mehrere Voreinstellungen von 64-1024 Zeichen '
Erdungsdokumente werden in Abschnitte mit optimierter Größe und Überlappung aufgeteilt.
Einbettungsmodell Unterstützte Einbettungsmodelle, die mit watsonx.ai verfügbar sind
Vektorspeicher Milvus und ChromaDB
Chunk-Erweiterung Aktiviert (umliegende Teile aus dem Dokument hinzufügen)
Suchart Standard (in einem einzigen Index)
Generative Modelle Siehe Stiftungsmodelle nach Aufgabe
Stichprobenentnahme Benchmark-gesteuert (erst die Fragen auswählen, dann die Dokumente, mit zufälligen Fragen auffüllen bis zum Limit)
Such-Algorithmus Tree Parzen Estimator (TPE) aus der hyperopt-Bibliothek wird für die Optimierung von Hyperparametern verwendet
Metriken Korrektheit der Antwort, Treue, Korrektheit des Kontexts. Für weitere Informationen siehe
Siehe Unitxt lexical rag metrics
Optimierung Metrik Die Metrik, die als Optimierungsziel verwendet wird. Antwortrichtigkeit und Treue werden unterstützt.
Anpassbare Benutzereinschränkungen Einbettungsmodell
Generatives Modell
Grenzwert für die Anzahl der Konfigurationen (max. Anzahl der Ausgabemuster 4 bis 20)
Bereitstellung Milvus : AutoAI für die Indexierung und Inferenz unter Verwendung der externen Vektordatenbank Milvus
Chroma: einzelnes AutoAI für die Indexierung und Inferenz unter Verwendung der In-Memory-Vektordatenbank von Chroma

Nächste Schritte

Übergeordnetes Thema: Codierung generativer KI-Lösungen

Generative KI-Suche und -Antwort
Diese Antworten werden von einem großen Sprachmodell in watsonx.ai basierend auf dem Inhalt der Produktdokumentation generiert. Weitere Informationen