Erste Schritte mit dem OpenAI-Beispiel für die Azure Communication Services-Anrufautomatisierung
Das OpenAI-Beispiel für die Azure Communication Services-Anrufautomatisierung zeigt, wie Sie das Anrufautomatisierungs-SDK und die kürzlich angekündigte öffentliche Vorschauversion der Integration mit Azure AI Services nutzen können, um intelligente virtuelle Assistenten zu erstellen.
In diesem Beispiel wird erläutert, welche Funktionen dieses Beispiel umfasst und welche Voraussetzungen erfüllt werden müssen, bevor das Beispiel lokal auf Ihrem Computer ausgeführt werden kann.
Code herunterladen
Suchen Sie das Projekt für dieses Beispiel auf GitHub. Sie können diesen Code herunterladen und lokal ausführen, um ihn selbst zu testen.
Überblick
Bei diesem Beispiel handelt es sich um eine serverseitige Anwendung, mit der Sie einen virtuellen Assistenten erstellen können. Dieser kann mithilfe der Anrufautomatisierung Anrufe abwickeln und auf Kund*innen reagieren, indem er die neu angekündigte Integration mit Azure KI Services nutzt. Diese Integration bietet KI-Funktionen wie Text-zu-Sprache und Sprache-in-Text zusammen mit intelligenten Antworten, die von Azure OpenAI bereitgestellt werden.
Dieses KI-Beispiel für die Azure Communication Services-Anrufautomatisierung demonstriert, wie das Call Automation SDK dazu genutzt wird, einen eingehenden Anruf zu beantworten und die Spracheingabe der Benutzer*innen über die Erkennungs-API der Anrufautomatisierung mit Sprache-in-Text-Unterstützung zu erkennen. Sobald die Eingabe erkannt wird, werden die Informationen an OpenAI gesendet, um eine Antwort zu erhalten. Anschließend wird die von OpenAI bereitgestellte Antwort über die Wiedergabe-API der Anrufautomatisierung mit Text-zu-Sprache-Unterstützung für den bzw. die Anrufer*in wiedergegeben.
Voraussetzungen
- Erstellen Sie ein Azure-Konto mit einem aktiven Abonnement. Details finden Sie auf der Seite zum Erstellen eines kostenloses Azure-Kontos.
- Erstellen Sie eine Azure Communication Services-Ressource. Ausführlichere Informationen hierzu finden Sie unter Erstellen einer Azure Communication Services-Ressource. Sie müssen für dieses Beispiel die Verbindungszeichenfolge Ihrer Ressource notieren.
- Eine Telefonnummer mit aktivierter Anruffunktion. Beziehen Sie eine Telefonnummer.
- Die Azure Dev Tunnels CLI. Weitere Informationen finden Sie unter Enable dev tunnel (Aktivieren des Entwicklungstunnels).
- Erstellen Sie eine Azure KI Services-Ressource. Weitere Informationen finden Sie unter Erstellen einer Azure KI Services-Ressource
- Eine Azure OpenAI-Ressource und ein bereitgestelltes Modell. Weitere Informationen finden Sie in den Anweisungen.
Setupanweisungen
Bevor Sie dieses Beispiel ausführen, müssen Sie die im Abschnitt „Voraussetzungen“ genannten Ressourcen mit den folgenden Konfigurationsänderungen einrichten:
1. Einrichten und Hosten Ihres Azure DevTunnels
Azure DevTunnels ist ein Azure-Dienst, mit dem Sie im Internet gehostete lokale Webdienste freigeben können. Verwenden Sie die folgenden Befehle, um Ihre lokale Entwicklungsumgebung mit dem öffentlichen Internet zu verbinden. Auf diese Weise wird ein Tunnel mit einer dauerhaften Endpunkt-URL erstellt, der anonymen Zugriff ermöglicht. Dieser Endpunkt wird anschließend verwendet, um Ihre Anwendung über Anrufereignisse vom Azure Communication Services-Dienst für die Anrufautomatisierung zu benachrichtigen.
devtunnel create --allow-anonymous
devtunnel port create -p 5165
devtunnel host
2. Hinzufügen einer verwalteten Identität für die ACS-Ressource, die eine Verbindung mit der Azure KI Services-Ressource herstellt
Befolgen Sie die Anweisungen in dieser Dokumentation.
3. Hinzufügen der erforderlichen API-Schlüssel und Endpunkte
Öffnen Sie die Datei „appsettings.json“, um die folgenden Einstellungen zu konfigurieren:
DevTunnelUri
: Der Endpunkt Ihres EntwicklertunnelsCognitiveServiceEndpoint
: Der Azure KI Services-EndpunktAcsConnectionString
: Verbindungszeichenfolge der Azure Communication Service-Ressource.AzureOpenAIServiceKey
: Der Open AI-DienstschlüsselAzureOpenAIServiceEndpoint
: Der Open AI-Service-EndpunktAzureOpenAIDeploymentModelName
: Der Name des Open AI-Modells
Ausführen der Anwendung
- Azure-Entwicklertunnel: Stellen Sie sicher, dass Ihr AzureDevTunnel-URI aktiv ist und auf den richtigen Port Ihrer localhost-Anwendung zeigt
- Ausführen von
dotnet run
zum Kompilieren und Ausführen der Beispielanwendung - Registrieren Sie einen Event Grid-Webhook für das IncomingCall-Ereignis, der auf Ihren DevTunnel-URI zeigt. Die entsprechenden Anweisungen finden Sie hier.
Sobald dieser Vorgang abgeschlossen ist, sollten Sie über eine ausgeführte Anwendung verfügen. Am besten können Sie dieses Beispiel testen, indem Sie Ihre ACS-Telefonnummer anrufen und mit Ihrem intelligenten Agent sprechen.
Nächste Schritte
- Informieren Sie sich ausführlicher über die Anrufautomatisierung.
- Erfahren Sie mehr über die Wiedergabe von benutzerdefinierten Nachrichten.
- Erfahren Sie mehr über das Erkennen von Benutzereingaben.
Code herunterladen
Suchen Sie das Projekt für dieses Beispiel auf GitHub. Sie können diesen Code herunterladen und lokal ausführen, um ihn selbst zu testen.
Überblick
Bei diesem Beispiel handelt es sich um eine serverseitige Anwendung, mit der Sie einen virtuellen Assistenten erstellen können. Dieser kann mithilfe der Anrufautomatisierung Anrufe abwickeln und auf Kund*innen reagieren, indem er die neu angekündigte Integration mit Azure KI Services nutzt. Diese Integration bietet KI-Funktionen wie Text-zu-Sprache und Sprache-in-Text zusammen mit intelligenten Antworten, die von Azure OpenAI bereitgestellt werden.
Dieses KI-Beispiel für die Azure Communication Services-Anrufautomatisierung veranschaulicht die Verwendung des SDK für die Anrufautomatisierung zum Reagieren auf eingehende Anrufe. Die Spracheingabe der Benutzer*innen wird mithilfe der API für die Anrufautomatisierungserkennung mit Unterstützung für die Spracherkennung erkannt. Sobald die Eingabe erkannt wird, werden die Informationen an OpenAI gesendet, um eine Antwort zu erhalten. Anschließend wird die von OpenAI bereitgestellte Antwort über die Wiedergabe-API der Anrufautomatisierung mit Text-zu-Sprache-Unterstützung für den bzw. die Anrufer*in wiedergegeben.
Voraussetzungen
- Ein Azure-Konto mit einem aktiven Abonnement. Sie können kostenlos ein Konto erstellen.
- Eine bereitgestellte Communication Services-Ressource. Erstellen Sie eine Communication Services-Ressource.
- Eine Telefonnummer in Ihrer Azure Communication Services-Ressource, mit der ausgehende Anrufe getätigt werden können. Hinweis: In kostenlosen Abonnements stehen keine Telefonnummern zur Verfügung.
- Java Development Kit (JDK) Microsoft.OpenJDK.17
- Apache Maven
- Erstellen und hosten Sie einen Azure DevTunnel. Die entsprechenden Anweisungen finden Sie hier.
- Erstellen Sie eine Azure KI Services-Ressource. Weitere Informationen finden Sie unter „Erstellen einer Azure KI Services-Ressource“.
- Eine Azure OpenAI-Ressource und ein bereitgestelltes Modell. Weitere Informationen finden Sie in den Anweisungen.
Vor dem erstmaligen Ausführen des Beispiels
Öffnen Sie die Datei „application.yml“ im Ressourcenordner, um die folgenden Einstellungen festzulegen
connectionstring
: Verbindungszeichenfolge der Azure Communication Service-Ressource.basecallbackuri
: Basis-URL der App. Verwenden Sie für die lokale Entwicklung die Entwicklertunnel-URL.cognitiveServicesUrl
: Der Azure KI Services-EndpunktazureOpenAiServiceKey
: Der Open AI-DienstschlüsselazureOpenAiServiceEndpoint
: Der Open AI-Service-EndpunktopenAiModelName
: Der Name des Open AI-Modells
Einrichten und Hosten Ihres Azure DevTunnels
Azure DevTunnels ist ein Azure-Dienst, mit dem Sie im Internet gehostete lokale Webdienste freigeben können. Führen Sie die angegebenen Befehle aus, um Ihre lokale Entwicklungsumgebung mit dem öffentlichen Internet zu verbinden. Auf diese Weise wird ein Tunnel mit einer dauerhaften Endpunkt-URL erstellt, der anonymen Zugriff ermöglicht. Dieser Endpunkt wird anschließend verwendet, um Ihre Anwendung über Anrufereignisse vom Azure Communication Services-Dienst für die Anrufautomatisierung zu benachrichtigen.
devtunnel create --allow-anonymous
devtunnel port create -p 8080
devtunnel host
Ausführen der Anwendung
- Navigieren Sie zum Verzeichnis, das die pom.xml-Datei enthält, und verwenden Sie die folgenden mvn-Befehle:
- Kompilieren der Anwendung: mvn compile
- Erstellen des Pakets: mvn package
- Ausführen der App: mvn exec:java
- Greifen Sie über http://localhost:8080/swagger-ui.html auf die Swagger-Benutzeroberfläche zu
- Versuchen Sie, die Beispielanwendung mit GET /outboundCall auszuführen
Sobald dieser Vorgang abgeschlossen ist, sollten Sie über eine ausgeführte Anwendung verfügen. Am besten können Sie dieses Beispiel testen, indem Sie Ihre ACS-Telefonnummer anrufen und mit Ihrem intelligenten Agent sprechen.
Nächste Schritte
- Informieren Sie sich ausführlicher über die Anrufautomatisierung.
- Erfahren Sie mehr über die Wiedergabe von benutzerdefinierten Nachrichten.
- Erfahren Sie mehr über das Erkennen von Benutzereingaben.
Code herunterladen
Suchen Sie das Projekt für dieses Beispiel auf GitHub. Sie können diesen Code herunterladen und lokal ausführen, um ihn selbst zu testen.
Überblick
Bei diesem Beispiel handelt es sich um eine serverseitige Anwendung, mit der Sie einen virtuellen Assistenten erstellen können. Dieser kann mithilfe der Anrufautomatisierung Anrufe abwickeln und auf Kund*innen reagieren, indem er die neu angekündigte Integration mit Azure KI Services nutzt. Diese Integration bietet KI-Funktionen wie Text-zu-Sprache und Sprache-in-Text zusammen mit intelligenten Antworten, die von Azure OpenAI bereitgestellt werden.
Dieses KI-Beispiel für die Azure Communication Services-Anrufautomatisierung demonstriert, wie das Call Automation SDK dazu genutzt wird, einen eingehenden Anruf zu beantworten und die Spracheingabe der Benutzer*innen über die Erkennungs-API der Anrufautomatisierung mit Sprache-in-Text-Unterstützung zu erkennen. Sobald die Eingabe erkannt wird, werden die Informationen an OpenAI gesendet, um eine Antwort zu erhalten. Anschließend wird die von OpenAI bereitgestellte Antwort über die Wiedergabe-API der Anrufautomatisierung mit Text-zu-Sprache-Unterstützung für den bzw. die Anrufer*in wiedergegeben.
Voraussetzungen
- Erstellen Sie ein Azure-Konto mit einem aktiven Abonnement. Details finden Sie auf der Seite zum Erstellen eines kostenloses Azure-Kontos.
- Erstellen Sie eine Azure Communication Services-Ressource. Ausführlichere Informationen hierzu finden Sie unter Erstellen einer Azure Communication Services-Ressource. Sie müssen für dieses Beispiel die Verbindungszeichenfolge Ihrer Ressource notieren.
- Eine Telefonnummer mit aktivierter Anruffunktion. Beziehen Sie eine Telefonnummer.Installation von -- Node.js
- Die Azure Dev Tunnels CLI. Weitere Informationen finden Sie unter Enable dev tunnel (Aktivieren des Entwicklungstunnels).
- Erstellen Sie eine Azure KI-Multi-Service-Ressource. Weitere Informationen finden Sie unter Erstellen einer Azure KI Services-Ressource
- Eine Azure OpenAI-Ressource und ein bereitgestelltes Modell. Weitere Informationen finden Sie in den Anweisungen.
Setupanweisungen
Bevor Sie dieses Beispiel ausführen, müssen Sie die im Abschnitt „Voraussetzungen“ genannten Ressourcen mit den folgenden Konfigurationsänderungen einrichten:
1. Einrichten und Hosten Ihres Azure DevTunnels
Azure DevTunnels ist ein Azure-Dienst, mit dem Sie im Internet gehostete lokale Webdienste freigeben können. Führen Sie die in diesem Dokument angegebenen Befehle aus, um Ihre lokale Entwicklungsumgebung mit dem öffentlichen Internet zu verbinden. Auf diese Weise wird ein Tunnel mit einer dauerhaften Endpunkt-URL erstellt, der anonymen Zugriff ermöglicht. Wir verwenden diesen Endpunkt, um Ihre Anwendung über Aufrufereignisse des ACS-Aufrufautomatisierungsdiensts zu benachrichtigen.
devtunnel create --allow-anonymous
devtunnel port create -p 8080
devtunnel host
2. Hinzufügen einer verwalteten Identität für die ACS-Ressource, die eine Verbindung mit der Azure KI Services-Ressource herstellt
Befolgen Sie die Anweisungen in dieser Dokumentation.
3. Hinzufügen der erforderlichen API-Schlüssel und Endpunkte
Öffnen Sie die Datei .env
, um die folgenden Einstellungen zu konfigurieren
CONNECTION_STRING
: Verbindungszeichenfolge der Azure Communication Service-Ressource.CALLBACK_URI
: Basis-URL der App. (Ersetzen Sie für die lokale Entwicklung die Entwicklungstunnel-URL)COGNITIVE_SERVICE_ENDPOINT
: Azure KI-Service-EndpunktAZURE_OPENAI_SERVICE_KEY
: Azure OpenAI-Service-SchlüsselAZURE_OPENAI_SERVICE_ENDPOINT
: Azure OpenAI-EndpunktAZURE_OPENAI_DEPLOYMENT_MODEL_NAME
: Name der OpenAI-BereitstellungAGENT_PHONE_NUMBER
: Agent-Telefonnummer zum Durchstellen des Aufrufs zum Lösen von Abfragen
Ausführen der Anwendung
- Öffnen Sie ein neues PowerShell-Fenster, cd im Ordner
callautomation-openai-sample
und führen Sienpm run dev
aus - Der Browser sollte sich mit der nachfolgenden Seite öffnen. Wenn nicht, navigieren Sie zu
http://localhost:8080/
- Registrieren Sie einen Event Grid-Webhook für das IncomingCall-Ereignis, der auf Ihren DevTunnel-URI zeigt. Die entsprechenden Anweisungen finden Sie hier.
Sobald dieser Vorgang abgeschlossen ist, sollten Sie über eine ausgeführte Anwendung verfügen. Am besten können Sie dieses Beispiel testen, indem Sie Ihre ACS-Telefonnummer anrufen und mit Ihrem intelligenten Agent sprechen.
Nächste Schritte
- Informieren Sie sich ausführlicher über die Anrufautomatisierung.
- Erfahren Sie mehr über die Wiedergabe von benutzerdefinierten Nachrichten.
- Erfahren Sie mehr über das Erkennen von Benutzereingaben.
Code herunterladen
Suchen Sie das Projekt für dieses Beispiel auf GitHub. Sie können diesen Code herunterladen und lokal ausführen, um ihn selbst zu testen.
Überblick
Dieses Beispiel ist eine serverseitige Anwendung, mit der Sie einen virtuellen Assistenten erstellen können, der Aufrufe mithilfe der Aufrufautomatisierung verarbeiten kann. Sie ermöglicht es Ihrem Assistenten auch, auf Kunden zu reagieren, die Azure KI-Dienste verwenden, die KI-Funktionen wie Text-zu-Sprache und Sprache-in-Text sowie intelligente Antworten von Azure OpenAI bereitstellen.
Dieses KI-Beispiel für die Azure Communication Services-Anrufautomatisierung demonstriert, wie das Call Automation SDK dazu genutzt wird, einen eingehenden Anruf zu beantworten und die Spracheingabe der Benutzer*innen über die Erkennungs-API der Anrufautomatisierung mit Sprache-in-Text-Unterstützung zu erkennen. Wenn das System die Eingabe erkennt, werden die Informationen an OpenAI gesendet, um eine Antwort zu erhalten. Anschließend wird die von OpenAI bereitgestellte Antwort über die Wiedergabe-API der Anrufautomatisierung mit Text-zu-Sprache-Unterstützung für den bzw. die Anrufer*in wiedergegeben.
Voraussetzungen
- Erstellen Sie ein Azure-Konto mit einem aktiven Abonnement. Details finden Sie auf der Seite zum Erstellen eines kostenloses Azure-Kontos.
- Erstellen Sie eine Azure Communication Services-Ressource. Ausführlichere Informationen hierzu finden Sie unter Erstellen einer Azure Communication Services-Ressource. Sie müssen für dieses Beispiel die Verbindungszeichenfolge Ihrer Ressource notieren.
- Eine Telefonnummer mit aktivierter Anruffunktion. Beziehen Sie eine Telefonnummer.
- Die Azure Dev Tunnels CLI. Weitere Informationen finden Sie unter Enable dev tunnel (Aktivieren des Entwicklungstunnels).
- Erstellen Sie eine Azure KI-Multi-Service-Ressource. Weitere Informationen finden Sie unter Erstellen einer Azure KI Services-Ressource.
- Eine Azure OpenAI-Ressource und ein bereitgestelltes Modell. Weitere Informationen finden Sie in den Anweisungen.
- Erstellen und hosten Sie einen Azure DevTunnel. Die entsprechenden Anweisungen finden Sie hier.
- Python 3.7 oder höher (bitte beachten Sie, dass derzeit bei Version 3.12 keine OpenAI-Bibliotheken unterstützt werden).
Setupanweisungen
Bevor Sie dieses Beispiel ausführen, müssen Sie die im Abschnitt „Voraussetzungen“ genannten Ressourcen mit den folgenden Konfigurationsänderungen einrichten:
1. Einrichten einer Python-Umgebung
Erstellen und aktivieren Sie die virtuelle Python-Umgebung und installieren Sie die erforderlichen Pakete mithilfe des folgenden Befehls
pip install -r requirements.txt
2. Einrichten und Hosten Ihres Azure DevTunnels
Azure DevTunnels ist ein Azure-Dienst, mit dem Sie im Internet gehostete lokale Webdienste freigeben können. Führen Sie die angegebenen Befehle aus, um Ihre lokale Entwicklungsumgebung mit dem öffentlichen Internet zu verbinden. Dieser Prozess erstellt einen Tunnel mit einer dauerhaften Endpunkt-URL, der anonymen Zugriff ermöglicht. Wir verwenden diesen Endpunkt, um Ihre Anwendung über Aufrufereignisse des ACS-Aufrufautomatisierungsdiensts zu benachrichtigen.
devtunnel create --allow-anonymous
devtunnel port create -p 8080
devtunnel host
3. Hinzufügen einer verwalteten Identität für die ACS-Ressource, die eine Verbindung mit der Azure KI Services-Ressource herstellt
Befolgen Sie die Anweisungen in dieser Dokumentation.
4. Hinzufügen der erforderlichen API-Schlüssel und Endpunkte
Öffnen Sie die Datei main.py
, um die folgenden Einstellungen zu konfigurieren
-
CALLBACK_URI_HOST
: Der Endpunkt Ihres Entwicklertunnels
-
COGNITIVE_SERVICE_ENDPOINT
: Der Azure KI Services-Endpunkt
-
ACS_CONNECTION_STRING
: Verbindungszeichenfolge der Azure Communication Service-Ressource.
-
AZURE_OPENAI_SERVICE_KEY
: Der Open AI-Dienstschlüssel
-
AZURE_OPENAI_SERVICE_ENDPOINT
: Der Open AI-Service-Endpunkt
-
AZURE_OPENAI_DEPLOYMENT_MODEL_NAME
: Der Name des Open AI-Modells
-
AGENT_PHONE_NUMBER
: Agent-Telefonnummer zum Durchstellen eines Aufrufs
Ausführen der Anwendung
- Navigieren Sie zum Ordner
callautomation-openai-sample
und führen Siemain.py
im Debugmodus aus, oder verwenden Sie den Befehlpython ./main.py
, um ihn über PowerShell, eine Eingabeaufforderung oder ein Unix-Terminal auszuführen - Der Browser sollte sich mit der nachfolgenden Seite öffnen. Navigieren Sie andernfalls zu
http://localhost:8080/
oder Ihrer Dev-Tunnel-URL. - Registrieren Sie einen Event Grid-Webhook für das IncomingCall-Ereignis, der auf Ihren DevTunnel-URI zeigt. Die entsprechenden Anweisungen finden Sie hier.
Sobald Sie dies abgeschlossen haben, sollte Ihre Anwendung einsatzbereit sein. Am besten können Sie dieses Beispiel testen, indem Sie Ihre ACS-Telefonnummer anrufen und mit Ihrem intelligenten Agent sprechen.
Nächste Schritte
- Informieren Sie sich ausführlicher über die Anrufautomatisierung.
- Erfahren Sie mehr über die Wiedergabe von benutzerdefinierten Nachrichten.
- Erfahren Sie mehr über das Erkennen von Benutzereingaben.