Herstellen einer Verbindung mit Azure KI Services aus Workflows in Azure Logic Apps
Gilt für: Azure Logic Apps (Verbrauch + Standard)
Um Unternehmensdienste, -systeme und -daten mit KI-Technologien zu kombinieren, können sich Ihre Logik-App-Workflows mit Azure OpenAI- und Azure KI-Suche-Ressourcen verbinden, die Sie für diese Integrationsszenarien verwenden.
Dieser Leitfaden enthält eine Übersicht und Beispiele für die Verwendung der Connectorvorgänge für Azure OpenAI und Azure KI-Suche in Ihrem Workflow.
Warum sollte ich Azure Logic Apps mit KI-Diensten verwenden?
Die Erstellung von KI-Lösungen umfasst in der Regel mehrere wichtige Schritte und erforderliche Bausteine. In erster Linie müssen Sie über eine dynamische Erfassungspipeline und über eine Chatschnittstelle verfügen, die mit großen Sprachmodellen (Large Language Models, LLMs) und mit Vektordatenbanken kommunizieren kann.
Tipp
Um mehr zu erfahren, können Sie Azure Copilot folgende Fragen stellen:
- Was ist eine dynamische Aufnahmepipeline in KI?
- Was ist eine Vektordatenbank in KI?
Um Azure Copilot zu finden, wählen Sie auf der Symbolleiste im Azure-Portal die Option Copilot aus.
Sie können verschiedene Komponenten zusammenstellen – nicht nur zum Erfassen von Daten, sondern auch, um ein robustes Back-Ends für die Chatschnittstelle bereitzustellen. Dieses Back-End erleichtert die Eingabe von Prompts und generiert bei Interaktionen zuverlässige Antworten. Die Erstellung des Codes zum Verwalten und Steuern all dieser Elemente kann sich jedoch bei den meisten Lösungen als schwierig erweisen.
Azure Logic Apps bietet einen Low-Code-Ansatz und vereinfacht die Back-End-Verwaltung durch Bereitstellung vordefinierter Connectors, die Sie als Bausteine zum Optimieren des Back-End-Prozesses verwenden können. Dadurch können Sie sich auf die Beschaffung Ihrer Daten konzentrieren und sicherstellen, dass Suchergebnisse aktuelle und relevante Informationen liefern. Mit diesen KI-Connectors fungiert Ihr Workflow als Orchestrierungs-Engine, die Daten zwischen KI-Diensten und anderen Komponenten überträgt, die Sie integrieren möchten.
Weitere Informationen finden Sie in den folgenden Ressourcen:
Voraussetzungen
Ein Azure-Konto und ein Azure-Abonnement. Wenn Sie nicht über ein Azure-Abonnement verfügen, können Sie sich für ein kostenloses Azure-Konto registrieren.
Die Azure KI-Suche- und Azure OpenAI-Ressourcen, auf die Sie zugreifen und die Sie in Ihrem Workflow verwenden können, einschließlich Verbindungsinformationen:
Ein Logik-App-Workflow, in dem Sie auf Ihre Azure OpenAI- und Azure KI-Suche-Ressourcen zugreifen möchten
Die Connectors für diese Dienste bieten derzeit nur Aktionen und keine Trigger. Bevor Sie eine Azure KI-Connector-Aktion hinzufügen können, stellen Sie sicher, dass Ihr Workflow mit dem passenden Trigger für Ihr Szenario beginnt.
Technische Referenz für den Connector
Für Verbrauchsworkflows befinden sich die verwalteten oder gemeinsam genutzten Azure OpenAI- und Azure KI-Suche-Connectors derzeit in der Vorschau und unterliegen den Zusätzliche Nutzungsbedingungen für Microsoft Azure-Vorschauen.
Azure OpenAI
Azure OpenAI Service bietet Zugriff auf die Sprachmodelle von OpenAI, einschließlich der Modellserien GPT-4, GPT-4 Turbo mit Vision, GPT-3.5-Turbo und Embeddings. Mit dem Azure OpenAI-Connector kann Ihr Workflow eine Verbindung mit Azure OpenAI Service herstellen und OpenAI-Einbettungen für Ihre Daten abrufen oder Chatvervollständigungen generieren.
Tipp
Um mehr zu erfahren, können Sie Azure Copilot folgende Fragen stellen:
- Was ist eine Einbettung in KI?
- Was ist eine Chatvervollständigung in KI?
Um Azure Copilot zu finden, wählen Sie auf der Symbolleiste im Azure-Portal die Option Copilot aus.
Es gibt verschiedene Versionen für den Azure OpenAI-Connector, die auf dem Typ und dem Hostingmodell der Logik-App basieren:
Logik-App | Environment | Connector-Version |
---|---|---|
Verbrauch | Azure Logic Apps mit mehreren Mandanten | Verwalteter, von Azure gehosteter Connector, der im Connectorkatalog unter Runtime>Freigegeben angezeigt wird. Weitere Informationen finden Sie in der Azure OpenAI-Referenz zu verwalteten Connectors. |
Standard | Single-Tenant Azure Logic Apps, App Service-Umgebung v3 (nur Windows-Pläne) oder Hybridbereitstellung, die Ihre eigene Infrastruktur ist. | Integrierter Connector auf Dienstanbieterbasis, der im Connectorkatalog unter Runtime>In-App angezeigt wird ist. Der integrierte Connector verfügt unter anderem über die folgenden Funktionen: - Unterstützung für mehrere Authentifizierungstypen - Direkter Zugriff auf Ressourcen in virtuellen Azure-Netzwerken und -Endpunkten für Azure OpenAI hinter Firewalls. Weitere Informationen finden Sie in der Azure OpenAI-Referenz zu integrierten Connectors. |
Azure KI Cognitive Search
Azure KI-Suche ist eine Plattform für KI-gestütztes Abrufen von Informationen, die es Entwicklern ermöglicht, große Sprachmodelle mit Unternehmensdaten zu kombinieren und so umfangreiche Suchfunktionen und generative KI-Apps zu erstellen. Mit dem Azure KI-Suche-Connector kann Ihr Workflow eine Verbindung mit Azure KI-Suche herstellen, um Dokumente zu indizieren und Vektorsuchen für Ihre Daten durchzuführen.
Der Azure KI-Suche-Connector hat verschiedene Versionen, die auf dem Typ der logischen Anwendung und der Hostumgebung basieren:
Logik-App | Environment | Connector-Version |
---|---|---|
Verbrauch | Azure Logic Apps mit mehreren Mandanten | Verwalteter, von Azure gehosteter Connector, der im Connectorkatalog unter Runtime>Freigegeben angezeigt wird. Weitere Informationen finden Sie in der Azure KI-Suche-Referenz zu verwalteten Connectors. |
Standard | Single-Tenant Azure Logic Apps, App Service-Umgebung v3 (nur Windows-Pläne) oder Hybridbereitstellung, die Ihre eigene Infrastruktur ist. | Integrierter Connector auf Dienstanbieterbasis, der im Connectorkatalog unter Runtime>In-App angezeigt wird ist. Der integrierte Connector verfügt unter anderem über die folgenden Funktionen: - Unterstützung für mehrere Authentifizierungstypen - Direkter Zugriff auf Ressourcen in virtuellen Azure-Netzwerken und -Endpunkten für Azure OpenAI hinter Firewalls. Weitere Informationen finden Sie in der Azure KI-Suche-Referenz zu integrierten Connectors. |
Authentifizierung
Für die KI-verwalteten Connectors ist ein API-Schlüssel für die Authentifizierung erforderlich. Die integrierten KI-Connectors unterstützen jedoch mehrere Authentifizierungstypen für Ihren KI-Dienstendpunkt. Diese Optionen bieten eine robuste Authentifizierung, die die Anforderungen der meisten Kunden erfüllt. Beide integrierte Connectors können auch direkt eine Verbindung mit Azure OpenAI- und Azure KI-Suche-Ressourcen in virtuellen Netzwerken oder hinter Firewalls herstellen.
Die folgende Tabelle beschreibt die Authentifizierungsoptionen für integrierte Connectors, für die Sie die URL für den Dienstendpunkt des KI-Dienstes angeben müssen:
Authentifizierungstyp | Beschreibung |
---|---|
URL und schlüsselbasierte Authentifizierung | Stellen Sie den vom KI-Dienst generierten API-Schlüssel oder Administrator bereit. |
Active Directory OAuth (Microsoft Entra ID) | Stellen Sie Informationen wie Ihren Entra-Mandanten, die Client-ID und das Kennwort für die Authentifizierung als Entra-Benutzer bereit. |
Verwaltete Identität | Nachdem Sie die Authentifizierung mit verwalteten Identitäten für Ihre KI-Dienstressource und Ihre Logik-App-Ressource eingerichtet haben, können Sie diese Identität verwenden, um den Zugriff für den Connector zu authentifizieren. |
Wichtig
Um optimale Sicherheit zu gewährleisten, verwenden Sie nach Möglichkeit Microsoft Entra ID mit verwalteten Identitäten für die Authentifizierung. Diese Methode bietet mehr Sicherheit, ohne Anmeldeinformationen angeben zu müssen. Azure verwaltet diese Identität und hilft, die Sicherheit von Authentifizierungsinformationen zu bewahren, damit Sie diese sensiblen Daten nicht selbst verwalten müssen. Weitere Informationen zum Einrichten einer verwalteten Identität für Azure Logic Apps finden Sie unter Authentifizieren des Zugriffs auf und der Verbindungen mit Azure-Ressourcen mithilfe verwalteter Identitäten in Azure Logic Apps.
Wenn Sie einen anderen Authentifizierungstyp verwenden müssen, verwenden Sie die nächst höhere verfügbare Sicherheitsoption. Angenommen, Sie müssen stattdessen eine Verbindung mithilfe einer Verbindungszeichenfolge erstellen. Eine Verbindungszeichenfolge enthält die Autorisierungsinformationen, die Ihre App für den Zugriff auf eine bestimmte Ressource benötigt. Der Zugriffsschlüssel in der Verbindungszeichenfolge ähnelt einem Stammkennwort.
In Produktionsumgebungen sollten Sie vertrauliche Informationen und geheime Schlüssel, z. B. Anmeldeinformationen, Zertifikate, Fingerabdruck, Zugriffstasten und Verbindungszeichenfolgen, immer schützen. Stellen Sie sicher, dass Sie diese Informationen sicher speichern, indem Sie Microsoft Entra ID und Azure Key Vault verwenden. Vermeiden Sie die Hardcodierung dieser Informationen, die Freigabe für andere Benutzer oder das Speichern in Nur-Text an Orten, auf die andere Benutzer zugreifen können. Rotieren Sie Ihre Geheimnisse so bald wie möglich, wenn Sie der Meinung sind, dass diese Informationen kompromittiert wurden. Weitere Informationen finden Sie unter Informationen zu Azure Key Vault.
Weitere Informationen finden Sie in den folgenden Ressourcen:
- Authentifizieren von Anforderungen an Azure KI Services
- Was ist Microsoft Entra ID
- Was sind verwaltete Identitäten für Azure-Ressourcen?
- Authentifizieren des Zugriffs auf und der Verbindungen mit Azure-Ressourcen mithilfe verwalteter Identitäten in Azure Logic Apps
Hinzufügen einer Aktion für Azure OpenAI oder Azure KI-Suche zu Ihrem Workflow
Derzeit werden von den Connectors für Azure OpenAI und Azure KI-Suche nur Aktionen, aber keine Trigger bereitgestellt. Sie können Ihren Workflow mit jedem beliebigen Trigger starten, der zu Ihrem Szenario oder Ihren Bedürfnissen passt. Abhängig davon, ob Sie einen Verbrauchs- oder einen Standard-Workflow haben, können Sie dann die folgenden allgemeinen Schritte ausführen, um Aktionen für Azure OpenAI, Azure KI-Suche und andere Vorgänge hinzuzufügen.
Szenarien
In den folgenden Szenarien werden nur zwei der vielen Verwendungsmöglichkeiten beschrieben, die für KI-Connectorvorgänge in Ihren Workflows verfügbar sind:
Erstellen einer Wissensdatenbank für Ihre Unternehmensdaten
Azure Logic Apps bietet über 1.400 von Microsoft verwaltete Connectors und nativ ausgeführte integrierte Connectors für Ihren Workflow, um eine sichere Verbindung mit nahezu jeder Datenquelle (z. B. SharePoint, Oracle DB, Salesforce, OneDrive, Dropbox, SAP, IBM usw.) herzustellen. Jeder Connector stellt Vorgänge bereit, die Trigger und/oder Aktionen umfassen, die Sie in Ihrem Workflow verwenden können.
Sie können z. B. aus zahlreichen Triggertypen wählen, um Ihren automatisierten Workflow gemäß eines Zeitplans oder basierend auf bestimmten Ereignissen auszuführen (beispielsweise, wenn neue Dokumente in eine SharePoint-Website hochgeladen werden). Dank des riesigen Angebots an Vorgängen können Sie eine Wissensdatenbank einrichten und ganz einfach eine Dokumenterfassungspipeline mit Vektoreinbettungen für diese Dokumente in Azure KI-Suche erstellen.
Weitere Informationen finden Sie in den folgenden Ressourcen:
Generieren von Vervollständigungen
Ein Azure Logic Apps-Workflow kann Eingaben akzeptieren, während Azure OpenAI Service Vervollständigungsvorgänge ausführen kann. Dadurch kann Ihr Workflow Fragen in Echtzeit erfassen und Antworten im Zusammenhang mit Ihren Daten generieren oder mithilfe von Azure OpenAI automatisierte Antworten senden. Die Antworten können umgehend an den Client oder zur Überprüfung an einen Genehmigungsworkflow gesendet werden.
Weitere Informationen finden Sie in den folgenden Ressourcen:
Beispielszenario mit Beispielcode: Erfassen von Daten und Erstellen von Chatinteraktionen
In diesem Beispiel für den Standard-Workflow wird gezeigt, wie Sie die Back-End-Logik für die Erfassung von Daten und die Durchführung einfacher Chatunterhaltungen mithilfe der integrierten Azure OpenAI- und Azure KI-Suche-Connectors in zwei wichtige Workflows unterteilen können. Zur Verbesserung der Leistung können Sie zustandslose Workflows erstellen, die standardmäßig keinen Verlauf für jede Ausführung speichern.
Beispielcode
Erstellen eines Chats unter Verwendung erfasster Daten
Weitere Voraussetzungen
Ein Standard-Logik-App-Workflow
Weitere Informationen finden Sie in den Anforderungen für den Beispielcode.
Die folgenden umgebungsübergreifenden Parameterwerte werden auch von den Workflowvorgängen in diesem Beispiel verwendet:
Parametername Beschreibung aisearch_admin_key Der Administratorschlüssel für Azure KI-Suche aisearch_endpoint Die Endpunkt-URL für das Azure KI-Suche-Beispiel aisearch_index_name Der zu verwendende Index für das Azure KI-Suche-Beispiel openapi_api_key Der API-Schlüssel für Azure OpenAI openai_deployment_id Die Bereitstellungs-ID für das Azure OpenAI-Beispiel openai_endpoint Die Endpunkt-URL für das Azure OpenAI-Beispiel tokenize_function_url Die URL für eine benutzerdefinierte Azure-Funktion, die Daten in Batches bündelt und mit Token versieht (für Azure OpenAI zum ordnungsgemäßen Erstellen von Einbettungen für dieses Beispiel erforderlich).
Weitere Informationen zu dieser Funktion finden Sie im Beispielcode für „Erstellen eines Chats unter Verwendung erfasster Daten“.
Video: Informationen zum Erstellen von KI-Anwendungen mithilfe von Logik-Apps
Informationen zum Erstellen von KI-Anwendungen mithilfe von Logik-Apps
Workflow für die Datenerfassung
Implementieren Sie mit jeder beliebigen Datenquelle das folgende Muster, um die Erstellung einer Erfassungspipeline erheblich zu beschleunigen und zu vereinfachen. Dieses Muster umfasst alle Vorteile, die derzeit von Standardworkflows in Azure Logic Apps mit einem einzelnen Mandanten geboten werden.
Jeder Schritt in diesem Muster stellt sicher, dass die KI nahtlos alle wichtigen Informationen aus Ihren Datendateien extrahiert. Wenn das Muster als zustandsloser Workflow ausgeführt wird, ist es außerdem schneller. Dieser Ansatz vereinfacht nicht nur die Programmierung, sondern sorgt auch dafür, dass Ihre Workflows über effektive Authentifizierungs-, Überwachungs- und Bereitstellungsprozesse verfügen.
Schritt | Task | Zugrunde liegender Vorgang | Beschreibung |
---|---|---|---|
1 | Überprüfen auf neue Daten | Bei Eingang einer HTTP-Anforderung | Ein Trigger, der entweder eine Abfrage durchführt oder wartet, bis neue Daten eintreffen – entweder basierend auf einer geplanten Serie oder als Reaktion auf bestimmte Ereignisse. Ein solches Ereignis kann beispielsweise eine neue Datei sein, die in ein bestimmtes Speichersystem wie SharePoint, OneDrive oder Azure Blob Storage hochgeladen wird. In diesem Beispiel wartet der Triggervorgang vom Typ Anforderung auf eine HTTP- oder HTTPS-Anforderung, die von einem anderen Endpunkt gesendet wurde. Die Anforderung enthält die URL für ein neues hochgeladenes Dokument. |
2 | Rufen Sie die Daten ab. | HTTP | Eine HTTP-Aktion, die das hochgeladene Dokument unter Verwendung der Datei-URL aus der Triggerausgabe abruft. |
3 | Erstellen von Dokumentdetails | Compose | Eine Datenvorgänge-Aktion, die verschiedene Elemente verkettet. In diesem Beispiel werden Schlüssel-Wert-Informationen zu dem Dokument verkettet. |
4 | Erstellen Sie eine Tokenzeichenfolge. | Dokument parsen | Eine Aktion unter Datenvorgänge, die anhand der Ausgabe der Aktion Erstellen eine Tokenzeichenfolge erzeugt. |
5 | Erstellen Sie Inhaltsblöcke. | Text segmentieren | Eine Aktion unter Datenvorgänge, die die Tokenzeichenfolge basierend auf der Anzahl von Zeichen oder Token pro Inhaltsblock aufteilt. |
6 | Konvertieren tokenisierter Daten in JSON | Parse JSON | Eine Aktion unter Datenvorgänge, die die Blöcke der Tokenzeichenfolge in ein JSON-Array konvertiert. |
7 | Auswählen von JSON-Arrayelementen | Auswählen | Eine Datenvorgänge-Aktion, die mehrere Elemente aus dem JSON-Array auswählt. |
8 | Generieren der Einbettungen | Abrufen mehrerer Einbettungen | Eine Azure OpenAI-Aktion, die Einbettungen für jedes JSON-Arrayelement erstellt. |
9 | Auswählen von Einbettungen und anderen Informationen | Auswählen | Eine Datenvorgänge-Aktion, die Einbettungen und andere Dokumentinformationen auswählt. |
10 | Indizieren der Daten | Indizieren von Dokumenten | Eine Azure KI-Suche-Aktion, die die Daten basierend auf den ausgewählten Einbettungen indiziert. |
Chatworkflow
Da Ihre Vektordatenbanken immer weiter Daten erfassen, müssen die Daten einfach durchsuchbar sein, damit der Standard-Workflow der Back-End-Logik-App Prompts verarbeiten und eine zuverlässige Antwort generieren kann, wenn Benutzer Fragen stellen.
Das folgende Muster ist nur ein Beispiel, das zeigt, wie ein Chatworkflow aussehen kann:
Schritt | Task | Zugrunde liegender Vorgang | Beschreibung |
---|---|---|---|
1 | Warten auf Eingabeprompt | Bei Eingang einer HTTP-Anforderung | Ein Trigger, der entweder eine Abfrage durchführt oder wartet, bis neue Daten eintreffen – entweder basierend auf einer geplanten Serie oder als Reaktion auf bestimmte Ereignisse. In diesem Beispiel wartet der Trigger vom Typ Anforderung auf die Frage des Kunden und erfasst sie. |
2 | Eingeben der Systemmeldung für das Modell | Compose | Eine Datenvorgänge-Aktion, die Eingaben zum Trainieren des Modells bereitstellt. |
3 | Eingeben von Beispielfragen und -antworten | Compose | Eine Datenvorgänge-Aktion, die Beispielfragen von Kunden und zugehörige Rollen zum Trainieren des Modells bereitstellt. |
4 | Eingeben der Systemmeldung für die Suchabfrage | Compose | Eine Datenvorgänge-Aktion, die Suchabfrageeingaben zum Trainieren des Modells bereitstellt. |
5 | Generieren der Suchabfrage | Ausführen von JavaScript-Code | Eine Inlinecode-Aktion, die JavaScript verwendet, um basierend auf den Ausgaben der vorherigen Compose-Aktionen eine Suchabfrage für den Vektorspeicher zu erstellen. |
6 | Konvertieren der Abfrage in eine Einbettung | Abrufen von Chatvervollständigungen | Eine Azure OpenAI-Aktion, die eine Verbindung mit der Chatvervollständigungs-API herstellt, um zuverlässige Antworten in Chatunterhaltungen zu gewährleisten. In diesem Beispiel akzeptiert die Aktion Suchabfragen und Rollen als Eingabe für das Modell und gibt Vektoreinbettungen als Ausgabe zurück. |
7 | Abrufen einer Einbettung | Abrufen einer Einbettung | Eine Azure OpenAI-Aktion, die eine einzelne Vektoreinbettung abruft. |
8 | Durchsuchen der Vektordatenbank | Durchsuchen von Vektoren | Eine Azure KI-Suche-Aktion, die Suchvorgänge im Vektorspeicher durchführt. |
9 | Erstellen eines Prompts | Ausführen von JavaScript-Code | Eine Inlinecode-Aktion, die JavaScript verwendet, um Prompts zu erstellen. |
10 | Durchführen der Chatvervollständigung | Abrufen von Chatvervollständigungen | Eine Azure OpenAI-Aktion, die eine Verbindung mit der Chatvervollständigungs-API herstellt, um zuverlässige Antworten in Chatunterhaltungen zu gewährleisten. In diesem Beispiel akzeptiert die Aktion Prompts und Rollen als Eingabe für das Modell und gibt vom Modell generierte Antworten als Ausgabe zurück. |
11 | Zurückgeben einer Antwort | Antwort | Eine Aktion vom Typ Anforderung, die die Ergebnisse an den Aufrufer zurückgibt, wenn Sie den Trigger Anforderung verwenden. |