Freigeben über


Retrieval Augmented Generation mithilfe von Azure Machine Learning-Prompt-Flow (Vorschau)

Wichtig

Dieses Feature ist zurzeit als öffentliche Preview verfügbar. Diese Vorschauversion wird ohne Vereinbarung zum Servicelevel bereitgestellt und ist nicht für Produktionsworkloads vorgesehen. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar.

Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.

Retrieval Augmented Generation (RAG) ist ein Muster, das mit vortrainierten großen Sprachmodellen (Large Language Models, LLM) und Ihren eigenen Daten arbeitet, um Antworten zu generieren. In Azure Machine Learning können Sie jetzt RAG in einem Prompt-Flow implementieren. Die Unterstützung für RAG ist derzeit in der Public Preview.

In diesem Artikel sind einige der Vorteile von RAG aufgelistet. Zudem bietet er eine technische Übersicht und beschreibt die RAG-Unterstützung in Azure Machine Learning.

Hinweis

Neu bei LLM und RAG-Konzepten? Dieser Videoclip aus einer Microsoft-Präsentation bietet eine einfache Erklärung.

Gründe für die Verwendung von RAG

Normalerweise wird ein Basismodell mit Zeitpunktdaten trainiert, um seine Effektivität bei der Ausführung bestimmter Aufgaben und der Anpassung an die gewünschte Domäne sicherzustellen. Manchmal müssen Sie jedoch mit neueren oder aktuelleren Daten arbeiten. Zwei Ansätze können das Basismodell ergänzen: Die Optimierung oder das weitere Training des Basismodells mit neuen Daten oder RAG, das Prompt Engineering verwendet, um das Modell in Echtzeit zu ergänzen oder zu steuern.

Die Feinabstimmung eignet sich für die kontinuierliche Domänenanpassung, wodurch die Modellqualität erheblich verbessert werden kann, aber häufig höhere Kosten anfallen. Im Gegensatz dazu bietet RAG einen alternativen Ansatz, der es ermöglicht, dasselbe Modell als Schlussfolgerungs-Engine für neue Daten zu verwenden, die in einer Eingabeaufforderung bereitgestellt werden. Dieses Verfahren ermöglicht kontextbezogenes Lernen, ohne dass eine teure Feinabstimmung erforderlich ist, und ermöglicht Unternehmen die effizientere Nutzung von LLMs.

Mit RAG können Unternehmen maßgeschneiderte Lösungen erreichen, wobei die Relevanz der Daten erhalten bleibt und die Kosten optimiert werden. Durch die Einführung von RAG können Unternehmen die Schlussfolgerungsfunktionen von LLMs nutzen, wobei sie die vorhandenen Modelle zur Verarbeitung und Generierung von Antworten basierend auf neuen Daten einsetzen. RAG ermöglicht regelmäßige Datenaktualisierungen, ohne dass eine Feinabstimmung erforderlich ist, und optimiert die Integration von LLMs in Unternehmen.

  • Bereitstellen zusätzlicher Daten als Anweisung oder Eingabeaufforderung für das LLM
  • Fügt eine Faktenüberprüfungskomponente zu Ihren vorhandenen Modellen hinzu
  • Trainieren Sie Ihr Modell anhand aktueller Daten, ohne den zusätzlichen Zeit- und Kostenaufwand, der mit der Optimierung verbunden ist.
  • Trainieren Ihrer geschäftsspezifischen Daten

Technische Übersicht über die Verwendung von RAG bei großen Sprachmodellen (LLMs)

Beim Informationsabruf ist RAG ein Ansatz, der es Ihnen ermöglicht, die Leistungsfähigkeit von LLMs mit Ihren eigenen Daten nutzbar zu machen. Damit eine LLM auf benutzerdefinierte Daten zugreifen kann, sind die folgenden Schritte erforderlich. Erstens sollten die großen Daten in verwaltbare Teile unterteilt werden. Zweitens müssen die Blöcke in ein durchsuchbares Format konvertiert werden. Drittens sollten die konvertierten Daten an einem Ort gespeichert werden, der einen effizienten Zugriff ermöglicht. Darüber hinaus ist es wichtig, relevante Metadaten für Zitate oder Verweise zu speichern, wenn das LLM Antworten bereitstellt.

Screenshot: Diagramm der technischen Übersicht über ein LLM, das die RAG-Schritte durchläuft

Sehen wir uns das Diagramm einmal genauer an.

  • Quelldaten: Hier befinden sich Ihre Daten. Dies kann eine Datei oder ein Ordner auf Ihrem Computer, eine Datei im Cloudspeicher, eine Azure Machine Learning-Datenressource, ein Git-Repository oder eine SQL-Datenbank sein.

  • Datensegmentierung: Die Daten in Ihrer Quelle müssen in Nur-Text konvertiert werden. Beispielsweise müssen Word-Dokumente oder PDF-Dateien geöffnet und in Text konvertiert werden. Der Text wird dann in kleinere Teile unterteilt.

  • Konvertieren des Texts in Vektoren: Dies wird als Einbettungen bezeichnet. Vektoren sind numerische Darstellungen von Konzepten, die in Zahlensequenzen konvertiert werden, wodurch Computer die Beziehungen zwischen diesen Konzepten leichter verstehen können.

  • Verknüpfungen zwischen Quelldaten und Einbettungen: Diese Informationen werden als Metadaten für die erstellten Blöcke gespeichert, die dann verwendet werden, um die LLMs beim Generieren von Zitaten während der Generierung von Antworten zu unterstützen.

RAG mit Azure Machine Learning (Vorschau)

RAG in Azure Machine Learning wird durch die Integration mit Azure OpenAI Service für große Sprachmodelle und Vektorisierung ermöglicht, mit Unterstützung für Faiss und Azure AI Search (ehemals Cognitive Search) als Vektorspeicher und Unterstützung für Open-Source-Angebots-Tools und Frameworks wie LangChain für das Chunking von Daten.

Für die Implementierung von RAG müssen einige wichtige Anforderungen erfüllt sein. Zunächst sollten Daten so formatiert werden, dass sie effizient durchsucht werden können, bevor sie an das LLM gesendet werden, was letztendlich den Tokenverbrauch reduziert. Um die Effektivität von RAG zu gewährleisten, ist es außerdem wichtig, die Daten regelmäßig zu aktualisieren. Darüber hinaus können Sie die Ausgabe des LLM mithilfe Ihrer Daten auswerten und so die Wirksamkeit Ihrer Verfahren messen. Azure Machine Learning ermöglicht Ihnen nicht nur einen einfachen Einstieg in diese Aspekte, sondern auch die Verbesserung und Produktion von RAG. Azure Machine Learning bietet Folgendes:

  • Beispiele zum Einstieg in RAG-basierte Q&A-Szenarios
  • Assistentenbasierte Benutzeroberfläche zum Erstellen und Verwalten von Daten und deren Integration in Prompt-Flows.
  • Möglichkeit zum Messen und Verbessern von RAG-Workflows, einschließlich der Generierung von Testdaten, der automatischen Erstellung von Prompts und visualisierter Prompt-Auswertungsmetriken.
  • Erweiterte Szenarien mit mehr Kontrolle durch die neuen integrierten RAG-Komponenten zum Erstellen benutzerdefinierter Pipelines in Notebooks.
  • Benutzeroberfläche für Code, die die Nutzung von Daten ermöglicht, die mit Open Source-Angeboten wie LangChain erstellt wurden.
  • Nahtlose Integration von RAG-Workflows in MLOps-Workflows mithilfe von Pipelines und Aufträgen.

Zusammenfassung

Mit Azure Machine Learning können Sie RAG in Ihre KI integrieren. Dazu wird Azure Machine Learning-Studio oder Code mit Azure Machine Learning-Pipelines verwendet. Es bietet verschiedene zusätzliche Features wie die Messung und Verbesserung von RAG-Workflows, die Generierung von Testdaten, die automatische Erstellung von Prompts und die Visualisierung von Prompt-Auswertungsmetriken. Es ermöglicht die Integration von RAG-Workflows in MLOps-Workflows mithilfe von Pipelines. Sie können Ihre Daten auch mit Open Source-Angeboten wie LangChain verwenden.

Nächste Schritte

Verwenden von Vektorspeichern mit Azure Machine Learning (Vorschau)

Erstellen eines Vektorindexes in Azure Machine Learning-Prompt-Flow (Vorschau)