Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Zurzeit wird folgendes angezeigt:Foundry (klassische) Portalversion - Wechseln zur Version für das neue Foundry-Portal
Retrieval augmented generation (RAG) ist ein Muster, das den Suchvorgang mit großen Sprachmodellen (LLMs) kombiniert, sodass die Antworten auf Ihren Daten basieren. In diesem Artikel wird erläutert, wie RAG in Microsoft Foundry funktioniert, welche Rollenindizes spielen und wie agentische Abrufe klassische RAG-Muster ändern.
LLMs werden auf öffentlichen Daten trainiert, die zur Schulungszeit verfügbar sind. Wenn Sie Antworten basierend auf Ihren privaten Daten oder auf häufig wechselnden Informationen benötigen, hilft IHNEN RAG:
- Abrufen relevanter Informationen aus Ihren Daten (häufig über einen Index).
- Stellen Sie diese Informationen für das Modell als Erdungsdaten bereit.
- Generieren Sie eine Antwort, die Zitate zurück zu Quellinhalten enthalten kann.
Was ist RAG?
Große Sprachmodelle (LLMs) wie ChatGPT werden auf öffentlichen Internetdaten trainiert, die beim Trainieren des Modells verfügbar waren. Die öffentlichen Daten reichen möglicherweise nicht für Ihre Anforderungen aus. Sie benötigen beispielsweise Antworten basierend auf privaten Dokumenten oder aktuelle Informationen.
RAG behandelt dies, indem relevante Inhalte aus Ihren Daten abgerufen und in die Modelleingabe eingeschlossen werden. Das Modell kann dann Antworten generieren, die im abgerufenen Inhalt geerdet werden.
Kernkonzepte für RAG:
- Basisdaten: Abgerufene Inhalte, die Sie dem Modell zur Verfügung stellen, um das Raten zu minimieren.
- Index: Eine für den Abruf optimierte Datenstruktur (Schlüsselwort, Semantik, Vektor oder Hybridsuche).
- Einbettungen: Numerische Darstellungen von Inhalten, die für die Vektorgleichheitssuche verwendet werden. Siehe Einbettungen verstehen.
- Systemmeldung und Eingabeaufforderungen: Anweisungen, die die Verwendung abgerufener Inhalte durch das Modell leiten. Siehe Prompt-Entwicklung und Sicherheits-Nachrichtensysteme.
Wie funktioniert RAG?
RAG folgt einem dreistufigen Ablauf:
- Abfragen: Wenn ein Benutzer eine Frage stellt, durchsucht Ihre Anwendung ein Index oder Datenspeicher, um relevante Inhalte zu finden.
- Augment: Die App kombiniert die Frage des Benutzers mit den abgerufenen Inhalten (Grundlagendaten), um eine Eingabeaufforderung zu erstellen.
- Generieren: Das Modell empfängt die erweiterte Eingabeaufforderung und generiert eine Antwort, die im abgerufenen Inhalt geerdet wird, wodurch Ungenauigkeiten reduziert und genaue Zitate aktiviert werden.
Was ist ein Index und warum benötige ich ihn?
RAG funktioniert am besten, wenn Sie relevante Inhalte schnell und konsistent abrufen können. Ein Index hilft, indem Sie Ihre Inhalte für einen effizienten Abruf organisieren.
Viele RAG-Lösungen verwenden einen Index, der einen oder mehrere dieser Abrufmodi unterstützt:
- Stichwortsuche
- Semantische Suche
- Vektorsuche
- Hybridsuche (Schlüsselwort + Vektor, manchmal mit semantischer Rangfolge)
Ein Index kann auch Felder speichern, die die Zitatqualität verbessern (z. B. Dokumenttitel, URLs oder Dateinamen).
Foundry kann Ihr Projekt mit einem Azure KI-Suche Dienst und Index für den Abruf verbinden. Je nachdem, welche Feature- und API-Oberfläche Sie verwenden, werden diese Verbindungsinformationen möglicherweise als Projektverbindung oder Indexobjekt-ID dargestellt.
Beispielsweise enthält die Findry-Project REST-API-Vorschau ein index_asset_id-Feld für Azure KI-Suche Indexressourcen. Siehe Foundry Project REST API Preview.
Azure KI-Suche ist ein empfohlener Indexspeicher für RAG-Szenarien. Azure KI-Suche unterstützt das Abrufen von Vektor- und Textdaten, die in Suchindizes gespeichert sind, und es kann auch andere Ziele abfragen, wenn Sie den agentischen Abruf verwenden. Siehe What is Azure KI-Suche?.
Agentische RAG: moderne Methode zur Datenwiederherstellung
Herkömmliche RAG-Muster verwenden häufig eine einzelne Abfrage, um Informationen aus Ihren Daten abzurufen. Agentic retrieval, auch agentic RAG genannt, ist eine Entwicklung in der Abrufarchitektur, die ein Modell verwendet, um komplexe Eingaben in mehrere fokussierte Unterabfragen aufzuteilen, sie parallel auszuführen und strukturierte Erdungsdaten zurückzugeben, die gut mit Chat-Abschlussmodellen funktionieren.
Agentic-Abruf bietet gegenüber klassischem RAG mehrere Vorteile:
- Kontextbezogene Abfrageplanung – Verwendet den Unterhaltungsverlauf, um Kontext und Absicht zu verstehen. Nachverfolgungsfragen bewahren den Kontext früherer Austausche, wodurch mehrstufige Gespräche natürlicher werden.
- Parallele Ausführung – Führt mehrere fokussierte Unterabfragen gleichzeitig aus, um eine bessere Abdeckung zu ermöglichen. Anstatt eine einzelne Abfrage sequenziell abzurufen, verringert die parallele Ausführung die Latenz und ruft vielfältigere relevante Ergebnisse ab.
- Strukturierte Antworten – Gibt geerdete Daten, Zitate und Ausführungsmetadaten zusammen mit Ergebnissen zurück. Diese strukturierte Ausgabe erleichtert es Ihrer Anwendung, Quellen genau zu zitieren und die Begründung hinter den Antworten nachzuvollziehen.
- Integrierte semantische Rangfolge – Stellt eine optimale Relevanz der Ergebnisse sicher. Semantische Rangfolge filtert Rauschen und priorisiert wirklich relevante Passagen, was besonders wichtig bei großen Datasets ist.
- Optionale Antwortsynthese – Kann LLM-formulierte Antworten direkt in die Abfrageantwort einschließen. Alternativ können Sie rohe und wortwörtliche Passagen zur Verarbeitung an Ihre Anwendung übergeben.
Wenn Sie Azure KI-Suche als Abrufmodul verwenden, lesen Sie Agentic-Abruf und Quickstart: Agentic-Abruf.
Auswählen eines Ansatzes in Foundry
Foundry unterstützt mehrere Muster für das Arbeiten mit privaten Daten. Wählen Sie basierend auf Ihrer Anwendungsfallkomplexität und wie viel Kontrolle Sie benötigen:
- Verwenden Sie RAG , wenn Sie Antworten benötigen, die in privaten oder häufig ändernden Daten geerdet sind.
- Verwenden Sie Feinabstimmung, wenn Sie das Modellverhalten, den Stil oder die Aufgabenleistung ändern müssen, anstatt neues Wissen hinzuzufügen.
- Verwenden Sie eine verwaltete Erfahrung „Ihre Daten verwenden“, wenn Sie eine geführtere Möglichkeit zum Verbinden, Aufnehmen und Chatten über Ihre Daten wünschen. Siehe Azure OpenAI On Your Data und Quickstart: Chatten Sie mit Azure OpenAI-Modellen mit Ihren eigenen Daten.
Erste Schritte mit RAG in Foundry
Die Implementierung von RAG in Foundry folgt in der Regel diesem Workflow:
- Vorbereiten Ihrer Daten: Organisieren und Aufteilen Ihrer privaten Dokumente oder Wissensbasis in durchsuchbare Inhalte
- Setup an index: Erstellen sie einen Azure KI-Suche Index, oder verwenden Sie einen anderen Abrufdienst, um Ihre Inhalte für eine effiziente Suche zu organisieren.
- Herstellen einer Verbindung mit Foundry: Erstellen einer Verbindung aus Ihrem Foundry-Projekt mit Ihrem Index- oder Abrufdienst
- Erstellen Sie Ihre RAG-Anwendung: Integrieren Sie den Abruf in Ihre LLM-Aufrufe mit dem Foundry SDK oder den REST-APIs
- Testen und bewerten: Überprüfen Sie, ob die Abrufqualität gut ist und dass Antworten korrekt und mit richtiger Zitierung erfolgen.
Folgen Sie den folgenden Lernprogrammen, um zu beginnen:
- Tutorial: Teil 1 – Einrichten einer Projekt- und Entwicklungsumgebung zum Erstellen einer benutzerdefinierten RAG-App (Knowledge Retrieval) mit dem Microsoft Foundry SDK
- Tutorial: Teil 2 – Erstellen einer benutzerdefinierten RAG-App (Knowledge Retrieval) mit dem Microsoft Foundry SDK
Überlegungen zu Sicherheit und Datenschutz
RAG-Systeme können vertrauliche Inhalte offenlegen, wenn Sie den Zugriff und die Aufforderungen nicht sorgfältig entwerfen.
- Wenden Sie die Zugriffssteuerung zum Abrufzeitpunkt an. Wenn Sie Azure KI-Suche als Datenquelle verwenden, können Sie die Zugriffssteuerung auf Dokumentebene mit Sicherheitsfiltern verwenden.
- Prefer Microsoft Entra ID über API-Schlüssel für die Produktion. API-Schlüssel sind praktisch für die Entwicklung, werden jedoch nicht für Produktionsszenarien empfohlen. Weitere Informationen zum Azure KI-Suche RBAC-Leitfaden finden Sie unter Azure KI-Suche unter Verwendung von Rollen verbinden.
- Behandelt abgerufene Inhalte als nicht vertrauenswürdige Eingaben. Ihre Systemnachrichten- und Anwendungslogik sollte das Risiko von Prompt Injection aus Dokumenten und abgerufenen Textabschnitten verringern. Siehe Sicherheitssystemmeldungen.
Überlegungen zu Kosten und Latenz
RAG fügt im Vergleich zu einer nur-Modell-Anforderung zusätzliche Arbeit hinzu.
- Abrufkosten und Latenz: Das Abfragen eines Indexes erhöht die Anzahl der Roundtrips und den Rechenaufwand.
- Kosten und Latenz beim Einbetten: Die Vektorsuche erfordert Einbettungen zur Indizierungszeit und häufig zur Abfragezeit.
- Tokennutzung: Abgerufene Passagen erhöhen Eingabetoken, wodurch die Kosten erhöht werden können.
Wenn Sie Azure KI-Suche verwenden, bestätigen Sie die Dienstebene und die Preise vor dem Produktionsrollout. Wenn Sie semantische oder hybride Abrufe verwenden, lesen Sie die Preise und Grenzwerte von Azure KI-Suche in der Azure KI-Suche-Dokumentation.
Einschränkungen und Problembehandlung
Bekannte Einschränkungen
- DIE RAG-Qualität hängt von der Inhaltsvorbereitung, der Abrufkonfiguration und dem Promptdesign ab. Schlechte Datenvorbereitung oder Indizierungsstrategie wirken sich direkt auf die Antwortqualität aus.
- Wenn der Abruf irrelevante oder unvollständige Passagen zurückgibt, kann das Modell trotz Verankerung noch unvollständige oder ungenaue Antworten erzeugen.
- Wenn Sie den Zugriff auf Quellinhalte nicht steuern, können fundierte Antworten vertrauliche Informationen aus Ihrem Index preisgeben.
Häufige Herausforderungen und Abschwächung
- Schlechte Abrufqualität: Wenn Ihr Index keine relevanten Passagen zurückgibt, überprüfen Sie Ihre Datenabschnittsstrategie, die Qualität des Einbettungsmodells und die Suchkonfiguration (Schlüsselwort vs. Semantik vs. Hybrid).
- Halluzination trotz Verankerung: Selbst bei abgerufenen Inhalten können Modelle weiterhin ungenaue Antworten generieren. Aktivieren Sie Zitate, und verwenden Sie klare Systemmeldungen und Aufforderungen, damit das Modell sich an den abgerufenen Inhalt hält.
- Latenzprobleme: Große Indizes können den Abruf verlangsamen. Erwägen Sie die Indizierungsstrategie, Filterung und erneute Rangfolge, um die Menge der verarbeiteten Passagen zu reduzieren.
- Tokenbudget überschritten: Abgerufene Passagen können schnell die Tokenlimits aufbrauchen. Implementieren Sie Passagenfilterung, Bewertungen oder Zusammenfassungen, um innerhalb des Budgets zu bleiben.
Anleitungen zur Bewertung der RAG-Effektivität finden Sie in den Tutorials und Schnelleinstiegen im untenstehenden Abschnitt zugehöriger Inhalte.
Verwandte Inhalte
- Tutorial: Teil 1 – Einrichten einer Projekt- und Entwicklungsumgebung zum Erstellen einer benutzerdefinierten RAG-App (Knowledge Retrieval) mit dem Microsoft Foundry SDK
- Tutorial: Teil 2 – Erstellen einer benutzerdefinierten RAG-App (Knowledge Retrieval) mit dem Microsoft Foundry SDK
- Quickstart: Chatten Sie mit Azure OpenAI-Modellen mit Ihren eigenen Daten
- Azure OpenAI auf Ihren Daten