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.
Eine RAG-Lösung, die auf Azure KI-Suche basiert, ist auf die Einbettung von Modellen für die Vektorisierung sowie auf Chatvervollständigungsmodelle angewiesen, um Suchvorgänge für Ihre Daten in natürlicher Sprache durchführen zu können.
Hinweis
Wir empfehlen jetzt den agentischen Abruf für RAG-Workflows, aber klassische RAG ist einfacher. Wenn sie Ihre Anwendungsanforderungen erfüllt, ist es immer noch eine gute Wahl.
In diesem Tutorial führen Sie Folgendes durch:
- Erfahren Sie mehr über die azure-Modelle, die für die integrierte Vektorisierung unterstützt werden
- Erfahren Sie mehr über die azure-Modelle, die für den Chatabschluss unterstützt werden
- Bereitstellen von Modellen und Sammeln von Modellinformationen für Ihren Code
- Konfigurieren des Suchmaschinenzugriffs auf Azure-Modelle
- Kennenlernen benutzerdefinierter Skills und Vektorisierer zum Anfügen Azure-fremder Modelle
Wenn Sie kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.
Voraussetzungen
Azure-Portal zum Bereitstellen von Modellen und Konfigurieren von Rollenzuweisungen in der Azure-Cloud
Eine Rolle vom Typ Besitzer oder Benutzerzugriffsadministrator für Ihr Azure-Abonnement. Diese wird zum Erstellen von Rollenzuweisungen benötigt. In diesem Tutorial verwenden Sie mindestens drei Azure-Ressourcen. Die Verbindungen werden mithilfe von Microsoft Entra ID authentifiziert. Dafür ist die Möglichkeit zum Erstellen von Rollen erforderlich. Rollenzuweisungen für das Herstellen einer Verbindung mit Modellen werden in diesem Artikel dokumentiert. Wenn Sie keine Rollen erstellen können, können Sie stattdessen API-Schlüssel verwenden.
Ein Modellanbieter wie Azure OpenAI, Azure Vision in Foundry Tools über eine Microsoft Foundry-Ressource oder den Foundry-Modellkatalog. Stellen Sie für Azure Vision sicher, dass sich Ihre Foundry-Ressource in derselben Region befindet wie Azure AI Search und die multimodalen Azure Vision-APIs.
In diesem Tutorial wird Azure OpenAI verwendet. Weitere Anbieter sind angegeben, damit Sie Ihre Optionen für die integrierte Vektorisierung kennen.
Azure KI-Suche (mindestens Basic-Tarif) bietet eine verwaltete Identität, die in Rollenzuweisungen verwendet wird.
Überprüfen von Modellen, die integrierte Vektorisierung unterstützen
Vektorisierte Inhalte verbessern die Abfrageergebnisse in einer RAG-Lösung. Azure KI-Suche unterstützt eine integrierte Vektorisierungsaktion in einer Indizierungspipeline. Außerdem wird die Vektorisierung zur Abfragezeit unterstützt, um Text- oder Bildeingaben in Einbettungen für eine Vektorsuche zu konvertieren. Identifizieren Sie in diesem Schritt ein für Ihre Inhalte und Abfragen geeignetes Einbettungsmodell. Falls Sie rohe Vektordaten und rohe Vektorabfragen bereitstellen oder Ihre RAG-Lösung keine Vektordaten enthält, überspringen Sie diesen Schritt.
Vektorabfragen, die einen Text-zu-Vektor-Konvertierungsschritt enthalten, müssen das gleiche Einbettungsmodell verwenden, das auch bei der Indizierung verwendet wurde. Die Suchmaschine löst zwar keinen Fehler aus, wenn Sie unterschiedliche Modelle verwenden, Sie erhalten allerdings schlechte Ergebnisse.
Um die Anforderung der Verwendung des gleichen Modells zu erfüllen, wählen Sie Einbettungsmodelle aus, auf die während der Indizierung über Skills und während der Abfrageausführung über Vektorisierer verwiesen werden kann. In der folgenden Tabelle sind die Skill- und Vektorisierungspaare aufgeführt. Unter Erstellen einer Indizierungspipeline finden Sie Code, der einen Einbettungsskill und eine passende Vektorisierung aufruft, und sehen, wie Einbettungsmodelle verwendet werden.
Azure KI-Suche bietet Skill- und Vektorisiererunterstützung für die folgenden Einbettungsmodelle in der Azure-Cloud:
| Kunde | Einbetten von Modellen | Skill | Vektorisierung |
|---|---|---|---|
| Azure OpenAI | text-embedding-ada-002 text-embedding-3-large text-embedding-3-small |
AzureOpenAIEmbedding | AzureOpenAIEmbedding |
| Azure Vision | multimodal 4.01 | AzureAIVision | AzureAIVision |
| Gießereimodellkatalog | Cohere-embed-v3-english 1 Cohere-embed-v3-multilingual 1 Cohere-embed-v4 1, 2 |
AML3 | Gießereimodellkatalog |
1 Unterstützt Text- und Bildvektorisierung.
2 Derzeit können Sie dies nur embed-v-4-0 programmgesteuert über die AML-Fähigkeit oder den Microsoft Foundry-Modellkatalog-Vektorisierer festlegen, nicht über das Azure-Portal. Sie können das Portal jedoch verwenden, um das Skillset oder den Vectorizer nachträglich zu verwalten.
3 Auf bereitgestellte Modelle im Modellkatalog wird über einen AML-Endpunkt zugegriffen. Für diese Verbindung verwenden wir den vorhandenen AML-Skill.
Neben den hier aufgeführten Modellen können auch andere Modelle verwendet werden. Weitere Informationen finden Sie in diesem Artikel unter Verwenden Azure-fremder Modelle für Einbettungen.
Hinweis
Bei Eingaben für Einbettungsmodelle handelt es sich in der Regel um segmentierte Daten. In einem RAG-Muster für Azure KI-Suche wird die Segmentierung in der Indexerpipeline durchgeführt. Dies wird in einem anderen Tutorial dieser Reihe behandelt.
Überprüfen von Modellen, die für generative KI zur Abfragezeit verwendet werden
Azure KI-Suche verfügt über keinen Integrationscode für Chatmodelle. Wählen Sie daher ein LLM, mit dem Sie vertraut sind und das Ihre Anforderungen erfüllt. Sie können Abfragecode ändern, um verschiedene Modelle zu testen, ohne einen Index neu erstellen oder einen Teil der Indizierungspipeline erneut ausführen zu müssen. Unter Suchen und Generieren von Antworten finden Sie Code zum Aufrufen des Chatmodells.
Folgende Modelle werden häufig für eine chatbasierte Sucherfahrung verwendet:
| Kunde | Chatmodelle |
|---|---|
| Azure OpenAI | GPT-4, GPT-4o, GPT-4.1. GPT-5 |
GPT-4- und GPT-5-Modelle sind für die Arbeit mit Eingaben optimiert, die als Unterhaltung formatiert sind.
In diesem Tutorial wird GPT-4o verwendet.
Bereitstellen von Modellen und Sammeln von Informationen
Modelle müssen über einen Endpunkt bereitgestellt werden und zugänglich sein. Sowohl einbettungsbezogene Skills als auch Vektorisierer benötigen die Anzahl von Dimensionen und den Modellnamen.
In dieser Tutorialreihe werden die folgenden Modelle und Modellanbieter verwendet:
- „Text-embedding-3-large“ in Azure OpenAI für Einbettungen
- GPT-4o in Azure OpenAI für Chatvervollständigung
Sie müssen mindestens Mitwirkender für Cognitive Services OpenAI sein, um Modelle in Azure OpenAI bereitstellen zu können.
Melden Sie sich beim Foundry-Portal an.
Wählen Sie "Texteinbettung-3-groß" aus, und wählen Sie dann "Dieses Modell verwenden" aus.
Geben Sie einen Namen für die Bereitstellung an. Wir empfehlen text-embedding-3-large.
Übernehmen Sie die Standardeinstellungen.
Klicken Sie auf Bereitstellen.
Wiederholen Sie die vorherigen Schritte für gpt-4o.
Notieren Sie sich die Modellnamen und den Endpunkt. Einbettungsskills und Vektorisierer bilden intern den vollständigen Endpunkt. Daher benötigen Sie lediglich den Ressourcen-URI. So muss beispielsweise bei
https://MY-FAKE-ACCOUNT.openai.azure.com/openai/deployments/text-embedding-3-large/embeddings?api-version=2024-06-01in Skill- und Vektorisiererdefinitionen der Endpunkthttps://MY-FAKE-ACCOUNT.openai.azure.comangegeben werden.
Konfigurieren des Suchmaschinenzugriffs auf Azure-Modelle
Für die Pipeline- und Abfrageausführung werden in diesem Tutorial Microsoft Entra ID für die Authentifizierung und Rollen für die Autorisierung verwendet.
Weisen Sie sich selbst und der Suchdienstidentität Berechtigungen für Azure OpenAI zu. Der Code für dieses Tutorial wird lokal ausgeführt. Anforderungen an Azure OpenAI stammen aus Ihrem System. Außerdem werden Suchergebnisse aus der Suchmaschine an Azure OpenAI übergeben. Aus diesen Gründen benötigen sowohl Sie als auch der Suchdienst Berechtigungen für Azure OpenAI.
Melden Sie sich beim Azure-Portal an, und suchen Sie Ihren Suchdienst.
Konfigurieren Sie Azure KI-Suche für die Verwendung einer systemseitig verwalteten Identität.
Navigieren Sie zu Ihrer Azure OpenAI-Ressource.
Wählen Sie im linken Menü die Option Zugriffssteuerung (IAM) aus.
Wählen Sie Rollenzuweisung hinzufügen aus.
Wählen Sie Cognitive Services OpenAI-Benutzer aus.
Wählen Sie verwaltete Identität und dann Mitglieder aus. Navigieren Sie in der Dropdownliste zu der systemseitig verwalteten Identität für Ihren Suchdienst.
Wählen Sie als Nächstes die Option Benutzer, Gruppe oder Dienstprinzipal und anschließend Mitglieder aus. Navigieren Sie in der Dropdownliste zu Ihrem Benutzerkonto, und wählen Sie es aus.
Stellen Sie sicher, dass der Rolle zwei Sicherheitsprinzipale zugewiesen sind.
Wählen Sie Überprüfen + zuweisen aus, um die Rollenzuweisungen zu erstellen.
Für den Zugriff auf Modelle in Azure Vision weisen Sie den Dienst Cognitive Services OpenAI User zu. Weisen Sie Azure AI-Entwickler für Foundry zu.
Verwenden Azure-fremder Modelle für Einbettungen
Das Muster für die Integration eines beliebigen Einbettungsmodells besteht darin, es in einen benutzerdefinierten Skill und in einen benutzerdefinierten Vektorisierer einzuschließen. Dieser Abschnitt enthält Links zu Referenzartikeln. Ein Codebeispiel, in dem ein Azure-fremdes Modell aufgerufen wird, finden Sie in der Demo zu benutzerdefinierten Einbettungen.
| Kunde | Einbetten von Modellen | Skill | Vektorisierung |
|---|---|---|---|
| Beliebig | Beliebig | Benutzerdefinierter Skill | benutzerdefinierter Vektorisierer |