Freigeben über


Verbinden eines KI-Agents mit Microsoft Teams

Von Bedeutung

Dieses Feature befindet sich in der Public Preview.

Diese Seite zeigt, wie KI-Agents mithilfe der OAuth-Authentifizierung "Im Auftrag von" in Microsoft Teams integriert werden. Mit dieser Integration können Ihre Databricks-Agents mit Benutzern über Microsoft Teams interagieren und gleichzeitig sicheren, vom Benutzer delegierten Zugriff auf Databricks-Ressourcen erhalten.

Beispiel für die Microsoft Teams-Agent-OBO-Authentifizierung

Überblick

Das Verbinden eines Databricks-Agents mit Microsoft Teams erfordert eine Koordination auf drei Plattformen: Databricks, Azure und Microsoft Teams. Auf hoher Ebene führen Sie die folgenden Schritte aus:

  1. Erstellen Sie einen Agenten in Databricks: Ein KI-Agenten erstellen und auf einem Servierungsendpunkt bereitstellen.
  2. Konfigurieren von Azure-Ressourcen: Einrichten von Azure Bot Service, Azure App Service und Konfigurieren von OAuth-Authentifizierungseinstellungen.
  3. Erstellen Sie eine OAuth-Verbundrichtlinie: Aktivieren sie den sicheren Tokenaustausch zwischen Microsoft Entra ID und Databricks.
  4. Stellen Sie den Botcode bereit: Stellen Sie den Anwendungscode bereit, der Teams mit Ihrem Databricks-Agent verbindet.
  5. Testen Sie die Integration: Überprüfen Sie, ob Benutzer Sich authentifizieren und mit Ihrem Agent über Teams interagieren können.

Anforderungen

Bevor Sie beginnen, überprüfen Sie Folgendes:

  • Berechtigungen für Arbeitsbereichsadministratoren zum Erstellen von Unity-Katalogverbindungen und zum Bereitstellen von Agents
  • Zugriff auf ein Azure-Abonnement, in dem Sie Ressourcen erstellen können
  • Databricks-Administratorberechtigungen zum Erstellen von OAuth-Verbundrichtlinien
  • Zugriff auf einen Microsoft Teams-Arbeitsbereich zum Testen

Schritt 1. Erstellen eines KI-Agents in Databricks

Erstellen Sie einen KI-Agent in Databricks, der Abfragen von Microsoft Teams verarbeitet. Dieser Agent dient als Kernintelligenz Ihres Chatbots und behandelt die folgenden Aufgaben:

  • Verarbeitet Benutzerabfragen von Teams
  • Interagiert mit Databricks-Diensten für den Datenabruf und die Berechnung
  • Gibt relevante Antworten an die Teams-Schnittstelle zurück.

Um einen Agenten zu erstellen, finden Sie Informationen unter "AI-Agenten im Code erstellen". Nachdem Sie Ihren Agent erstellt haben, stellen Sie ihn auf einem Dienstendpunkt bereit.

Beachten Sie die Zustellendpunkt-URL, da Sie sie benötigen, wenn Sie die Azure-Webanwendungsumgebungsvariablen konfigurieren.

Schritt 2. Konfigurieren von Azure-Ressourcen

Die Integration erfordert spezifische Azure-Ressourcen, um die Authentifizierung zu unterstützen und die Teams-Bot-Komponenten bereitzustellen.

Erstellen Sie die folgenden Azure-Ressourcen, um die Teams-Bot-Integration zu unterstützen. Alle Ressourcen müssen sich in derselben Azure-Region befinden.

Hinweis

Speichern Sie die Microsoft App-ID, die App-Mandanten-ID und den geheimen Clientschlüssel, während Sie diese Ressourcen erstellen, da Sie sie für spätere Konfigurationsschritte benötigen.

Erstellen einer Ressourcengruppe

  1. Navigieren Sie zum Azure-Portal.

  2. Klicken Sie auf "Ressource erstellen".

  3. Suchen Sie nach Ressourcengruppe , und wählen Sie sie aus.

    Von Bedeutung

    Alle azure-Ressourcen, die Sie erstellen, müssen sich in derselben Region wie Ihre Ressourcengruppe befinden.

Konfigurieren sie die Ressourcengruppe:

  1. Wählen Sie Ihr Azure-Abonnement aus.
  2. Geben Sie einen Namen für die Ressourcengruppe ein.
  3. Wählen Sie eine Azure-Region (z. B. Ost-USA) aus.
  4. Klicken Sie auf "Überprüfen" und "Erstellen", und klicken Sie dann auf "Erstellen".

Erstellen eines App Service-Plans

  1. Klicken Sie im Azure-Portal auf "Ressource erstellen".
  2. Suchen Sie nach App Service Plan , und wählen Sie ihn aus.

Konfigurieren sie den App Service Plan:

  1. Wählen Sie Ihr Azure-Abonnement aus.
  2. Wählen Sie die von Ihnen erstellte Ressourcengruppe aus.
  3. Geben Sie einen Namen für den App Service Plan ein.
  4. Wählen Sie Linux als Betriebssystem aus.
  5. Wählen Sie die gleiche Region wie für Ihre Ressourcengruppe aus.
  6. Wählen Sie für "Preisplan" die Option "Basic B1" aus.
  7. Klicken Sie auf "Überprüfen" und "Erstellen", und klicken Sie dann auf "Erstellen".

Erstellen einer „“-Web-App

  1. Klicken Sie im Azure-Portal auf "Ressource erstellen".
  2. Suchen Sie nach Web App , und wählen Sie sie aus.

Konfigurieren der Web-App:

  1. Wählen Sie Ihr Azure-Abonnement aus.
  2. Wählen Sie die von Ihnen erstellte Ressourcengruppe aus.
  3. Geben Sie einen Namen für die Web App ein.
  4. Legen Sie " Veröffentlichen auf Code" fest.
  5. Wählen Sie Python 3.13 als Laufzeitstapel aus.
  6. Wählen Sie dieselbe Azure-Region wie Ihre anderen Ressourcen aus.
  7. Stellen Sie Secure Unique Default Hostname auf Ein.
  8. Klicken Sie auf "Überprüfen" und "Erstellen", und klicken Sie dann auf "Erstellen".

Erstellen eines Azure-Bots

  1. Klicken Sie im Azure-Portal auf "Ressource erstellen".
  2. Suchen Sie nach Azure Bot , und wählen Sie ihn aus.

Konfigurieren sie den Azure Bot:

  1. Geben Sie einen Bot-Handle (Name) ein.
  2. Wählen Sie Ihr Azure-Abonnement aus.
  3. Wählen Sie die von Ihnen erstellte Ressourcengruppe aus.
  4. Legen Sie data residency auf Global fest.
  5. Legen Sie den Preisplan auf "Kostenlos" fest.
  6. Legen Sie den App-Typ auf einen einzelnen Mandanten fest.
  7. Legen Sie den Erstellungstyp auf " Neue Microsoft App-ID erstellen" fest.
  8. Lassen Sie die Dienstverwaltungsreferenz leer.
  9. Klicken Sie auf "Überprüfen" und "Erstellen", und klicken Sie dann auf "Erstellen".

Nachdem der Azure Bot erstellt wurde, konfigurieren Sie seine Einstellungen:

  1. Navigieren Sie zu Ihrer Azure Bot-Ressource.

  2. Klicken Sie unter Einstellungen auf Konfiguration.

  3. Legen Sie den Messaging-Endpunkt auf https://<your-webapp-name>.azurewebsites.net/api/messages.

    Ersetzen Sie <your-webapp-name> durch den Namen Ihrer Web-App. Sie können die URL bestätigen, indem Sie die Standarddomäne in Ihrer Web App-Ressource überprüfen.

  4. Klicken Sie auf Anwenden.

  5. Kopieren Sie die Microsoft App-ID und die App-Mandanten-ID, und speichern Sie sie.

  6. Klicken Sie neben der Microsoft App-ID auf "Kennwort verwalten".

  7. Klicken Sie auf "Neuer geheimer Clientschlüssel ", um einen neuen geheimen Clientschlüssel zu erstellen.

  8. Kopieren und speichern Sie den Wert des geheimen Clientschlüssels. Dieser Wert kann nicht erneut angezeigt werden, nachdem Sie die Seite verlassen haben.

Von Bedeutung

Sie werden ein bestehendes Client-Geheimnis sehen, wenn Sie zu der Seite navigieren, aber Sie müssen ein neues für diese Integration erstellen.

Konfigurieren des Azure-Bots

Konfigurieren des Microsoft Teams-Kanals

  1. Wählen Sie in Ihrer Azure Bot-Ressource unter "Kanäle"Microsoft Teams aus.
  2. Akzeptieren Sie die Nutzungsbedingungen.

Nachdem Sie diese Schritte ausgeführt haben, haben Sie die folgenden Ressourcen erstellt und konfiguriert:

  • Ressourcengruppe: Ein logischer Container für verwandte Azure-Ressourcen
  • App-Serviceplan: Eine Konfiguration für Computeressourcen, die definieren, wie Anwendungen ausgeführt werden
  • Webanwendung: Hosten des Botcodes
  • Azure-Bot: Ein Dienst, der die Kanalaktivierung für die Interaktion mit dem Bot ermöglicht
  • Azure-Anwendung: Verwaltet Authentifizierungskonfigurationen, einschließlich geheimer Clientschlüssel, Schlüssel, Bereiche und Token

Konfigurieren der Azure-Anwendung für OAuth

Konfigurieren Sie Ihre Azure-Anwendung, um die OAuth 2.0-Authentifizierung im Namen des Benutzers zu aktivieren.

  1. Navigieren Sie im Azure-Portal zu Ihrer Azure-Anwendung für den Bot.

Fügen Sie im Abschnitt "Authentifizierung " eine Umleitungs-URL hinzu:

  1. Klicken Sie auf "Eine Plattform hinzufügen>Web.

  2. Umleitungs-URI hinzufügen: https://token.botframework.com/.auth/web/redirect

  3. Klicken Sie auf Konfigurieren.

    Umleitungs-URL

Fügen Sie im Abschnitt "Tokenkonfiguration " einen optionalen Anspruch für das Zugriffstoken hinzu:

  1. Klicken Sie auf "Optionale Anspruch hinzufügen>Zugriffstoken".
  2. Suchen und wählen Sie den preferred_username Claim aus.

Erstellen Sie im Abschnitt "Verfügbarmachen einer API " einen Bereich:

  1. Legen Sie den Anwendungs-ID-URI auf api://<app_id> (verwenden Sie Ihre Anwendungs-/Client-ID).

  2. Klicken Sie auf Speichern>Bereich hinzufügen.

  3. Konfigurieren Sie den Geltungsbereich:

    • Bereichsname: access_as_user
    • Wer kann zustimmen: Administratoren und Benutzer
    • Anzeigename der Administratorzustimmung: API-Zugriff als angemeldeter Benutzer
    • Beschreibung der Administratorzustimmung: Zulassen, dass die Anwendung als Benutzer auf die API zugreifen kann
    • Anzeigename der Benutzergenehmigung: API-Zugriff als Sie
    • Beschreibung der Benutzerzustimmung: Zulassen, dass die Anwendung auf die API zugreifen kann, während Sie

Fügen Sie im Abschnitt "API-Berechtigungen" Microsoft Graph-Berechtigungen hinzu:

  1. Klicken Sie auf "Eine Berechtigung hinzufügen>Microsoft Graph>Delegierte Berechtigungen".
  2. Wählen Sie email, openidund profile Berechtigungen aus.

Überprüfen Sie im Abschnitt "Manifest " die Version des Zugriffstokens:

  1. Suchen Sie den api Schlüssel im JSON-Manifest.
  2. Stellen Sie sicher, dass requestedAccessTokenVersion auf 2 eingestellt ist. Wenn es nicht der Fall ist, ändern Sie es in 2 und speichern.

Überprüfen der Zugriffstokenversion

Konfigurieren der Azure Bot OAuth-Verbindung

Konfigurieren Sie die OAuth-Verbindung in Ihrer Azure Bot-Ressource:

  1. Navigieren Sie in Ihrem Azure Bot zu "Einstellungenkonfiguration>>" zu "OAuth-Verbindungseinstellungen hinzufügen".

  2. Konfigurieren Sie die Verbindung:

    • Name: Wählen Sie einen beschreibenden Namen aus (Sie verwenden diesen in der Web-App-Konfiguration)
    • Dienstanbieter: Azure Active Directory v2
    • Client-ID: Ihre Azure-Bot-Anwendung/Client-ID
    • Geheimer Clientschlüssel: Der geheime Schlüssel, den Sie für die Anwendung erstellt haben
    • Mandanten-ID: Der Mandanten-ID Ihrer Organisation
    • Bereiche: api://<app_id>/access_as_user (Ihre Azure-Anwendungs-/Client-ID verwenden)
  3. Klicken Sie auf "Speichern".

    Hinzufügen einer OAuth-Verbindung zum Azure-Bot

Konfigurieren der Webanwendung für die Agentintegration

Konfigurieren Sie die Webanwendungsumgebungsvariablen und den Startbefehl für die Databricks-Agent-Integration:

  1. Navigieren Sie zu DenEinstellungsumgebungsvariablen> in Ihrer Webanwendung.
  2. Fügen Sie die folgenden Databricks-Agentvariablen hinzu:
Variablenname Wert Description
ConnectionName <oauth_connection_name> Der Name der OAuth-Verbindung, die im Azure Bot erstellt wurde
DATABRICKS_HOST <databricks_workspace_url> Die URL des Databricks-Arbeitsbereichs, in dem der Endpunkt vom Agenten bedient wird, https://adb-1234567890123456.7.azuredatabricks.net (z. B. https://adb-1234567890123456.7.azuredatabricks.net).
MicrosoftAppID <microsoft_app_id> Die Client-ID/Anwendungs-ID des Azure Bot (zuvor gespeichert)
MicrosoftAppPassword <client_secret> Der geheime Clientschlüssel, den Sie für die Anwendung erstellt haben (zuvor gespeichert)
MicrosoftAppType singletenant Anwendungstyp
MicrosoftTenantId <tenant_id> Mandanten-ID Ihrer Organisation (zuvor gespeichert)
SERVING_ENDPOINT_NAME <endpoint_name> Der Name des ausführenden Endpunkts, der in Ihrem Databricks-Arbeitsbereich läuft
SCM_DO_BUILD_DURING_DEPLOYMENT True Installiert und erstellt Abhängigkeiten während des Deployments
WEBSITE_HTTPLOGGING_RETENTION_DAYS 3 Speichert Protokolle für 3 Tage

Festlegen von Umgebungsvariablen für den Bot

  1. Klicken Sie auf "Speichern".
  2. Navigieren Sie zur Einstellungskonfiguration>.
  3. Legen Sie den Startbefehl auf Folgendes fest: python3 app.py
  4. Klicken Sie auf "Speichern".

Hinweis

Der Startbefehl python3 app.py ist für die Arbeit mit dem Databricks-Agent-Bot-Code konfiguriert, den Sie in einem späteren Schritt bereitstellen. Dies unterscheidet sich von anderen Azure-Botkonfigurationen, die unterschiedliche Startbefehle verwenden können.

Aktualisieren des Startbefehls zum Ausführen des Databricks-Agents

Schritt 3. Erstellen einer OAuth-Verbundrichtlinie in Databricks

Erstellen Sie eine OAuth-Verbundrichtlinie, um die sichere Authentifizierung im Auftrag des Benutzers zwischen Microsoft Teams und Databricks zu aktivieren. Diese Richtlinie ermöglicht den Tokenaustausch zwischen Microsoft Entra-ID und Databricks-REST-APIs.

Ausführliche Informationen zu Verbundrichtlinien finden Sie unter:

Hinweis

Sie müssen ein Databricks-Administrator sein, um Verbundrichtlinien zu erstellen.

Erstellen der Verbundrichtlinie mithilfe der Databricks CLI

  1. Melden Sie sich mit Ihrer Databricks-Konto-ID bei der Databricks-Kontokonsole an:

    databricks auth login --host https://accounts.azuredatabricks.net/ --account-id <your_databricks_account_id>
    
  2. Erstellen Sie die Verbundrichtlinie mit den Azure-Anwendungen app_id und tenant_id:

    databricks account federation-policy create --json '{
      "oidc_policy": {
        "issuer": "https://login.microsoftonline.com/<tenant_id>/v2.0",
        "audiences": [
          "<app_id>"
        ],
        "subject_claim": "preferred_username"
      }
    }'
    

Nachdem Sie die Verbundrichtlinie erstellt haben, können Sie Microsoft Entra-ID-Token für Databricks-Token austauschen, wodurch authentifizierte Anforderungen an Databricks-APIs im Auftrag des Benutzers zulässig sind.

Schritt 4. Bereitstellen von Botcode in Azure Web App

Stellen Sie den Bot-Anwendungscode für Ihre Azure-Webanwendung bereit, um die Integration abzuschließen.

Klonen des Bot-Repositorys

Klonen Sie das Repository, das den Botcode enthält, der die OAuth-Flussauthentifizierung verwaltet, den Austausch von Databricks-Token und die Agentinteraktion:

git clone https://github.com/databricks-solutions/teams-databricks-bot-service.git

Installieren der Azure-Befehlszeilenschnittstelle

Installieren Sie die Azure CLI für Ihre Plattform:

Stellen Sie die Anwendung bereit

  1. Melden Sie sich bei Ihrem Azure-Konto an:

    az login
    

    Ein Webbrowser wird zur Authentifizierung geöffnet. Wählen Sie dasselbe Abonnement aus, das Sie zum Erstellen der Azure-Ressourcen verwendet haben.

  2. Navigieren Sie in einem Terminal zum Teams-Bot-Ordner des geklonten Repositorys: cd databricks-bot-service/teams-bot/

  3. Stellen Sie den Botcode in der Webanwendung bereit:

    az webapp up --resource-group <resource_group> --name <web_app_name> --runtime "PYTHON:3.13" --sku B1
    

    Ersetzen Sie <resource_group> durch den Namen Ihrer Azure-Ressourcengruppe und <web_app_name> durch den Namen Ihrer Webanwendung.

    Der Build- und Startvorgang dauert mehrere Minuten. Nach Abschluss des Vorgangs wird die JSON-Ausgabe mit Informationen zur App und dem hochgeladenen Quellcode angezeigt.

Schritt 5. Testen des Bots

Testen Sie die Bot-Integration mit dem Azure Bot Service Web Chat:

  1. Navigieren Sie zu Einstellungen>Testen im Web-Chat in Ihrer Azure Bot-Ressource.
  2. Geben Sie "Hello" ein, um die Anmeldeschaltfläche anzuzeigen.
  3. Nachdem Sie sich angemeldet haben, wird die Meldung "Sie sind jetzt angemeldet" angezeigt.
  4. Stellen Sie Fragen im Zusammenhang mit der Domäne Ihres Bots. Der Bot gibt Antworten von Ihrem Databricks-Agenten zurück.

Testen des Bots in Azure-Botdiensten

Nächste Schritte