Sprachanalysen APIs mithilfe von Sprache durchführen - Amazon Chime SDK

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Sprachanalysen APIs mithilfe von Sprache durchführen

Aus Gründen der Abwärtskompatibilität können Sie Amazon Chime SDK Voice verwenden, APIs um Sprachanalysen zu starten und zu verwalten. Allerdings bietet nur die Media Insights-Pipeline APIs für Sprachanalysen neue Funktionen, weshalb wir dringend empfehlen, sie stattdessen zu verwenden.

In den folgenden Abschnitten werden die Unterschiede zwischen den Sprach- und Medienerkenntnis-Pipelines APIs erläutert.

Aufgaben beenden

Wenn Sie einen Voice Connector verwenden, um Sprachanalyseaufgaben zu starten, und Sie verwenden dann den UpdateMediaInsightsPipelineStatusAPIum die Pipeline anzuhalten, werden die Aufgaben weiter ausgeführt. Um die Aufgaben zu beenden, müssen Sie den aufrufen StopSpeakerSearchTask und StopVoiceToneAnalysisTask APIs.

Grundlegendes zu den Unterschieden bei Benachrichtigungen

Wenn Sie Sprachanalysen per APIs Spracheingabe ausführen, unterscheiden sich die Benachrichtigungen von denen, die von Media Insights-Pipelines generiert werden.

  • Ereignisse, die für Sprachanalysen bereit sind, sind nur für Aufgaben verfügbar, die mit APIs Spracheingabe gestartet wurden.

  • Sie müssen die callId Felder voiceConnectorIdtransactionId, oder in Ihren Benachrichtigungen verwenden, um einem Anruf eine Sprachanalyse-Aufgabe zuzuordnen. Wenn Sie Media Insights-Pipelines verwenden, um Sprachanalysen durchzuführen, verwenden Sie die channelId Felder mediaInsightsPipelineId und streamArn oder, um eine Aufgabe einem Anruf zuzuordnen.

In den folgenden Themen wird erklärt, wie Sie Benachrichtigungen mit APIs Spracheingabe verwenden.

Ereignisse, die auf Sprachanalyse vorbereitet sind

Ereignisse, die für Sprachanalysen geeignet sind, haben den Typ „VoiceAnalyticsStatusDetail“.

Sie verwenden Amazon Chime SDK Voice Connectors, um Analyseaufgaben zu starten. Wenn Sie ein Ereignis erhalten, das für die Sprachanalyse bereit ist, können Sie eine Aufgabe zur Sprechersuche oder zur Stimmenanalyse für den Anruf auslösen, die anhand der folgenden Eigenschaften identifiziert wird:

  • voiceConnectorId

  • transactionId

Anmerkung

Diese Benachrichtigung wird nur angezeigt, wenn Sie über eine Media Insights-Pipeline-Konfiguration mit aktivierter Sprachanalyse verfügen, die mit einem Voice Connector verknüpft ist. Diese Benachrichtigung wird angezeigtNOT, wenn Kunden die Media Pipelines SDK anrufen CreateMediaInsightsPipeline API und eine Aufgabe zur Suche nach Lautsprechern oder eine Aufgabe zur Stimmenanalyse starten.

Die von einem Voice Connector zurückgegebenen SIP Header enthalten die. transactionId Wenn Sie keinen Zugriff auf die SIP Header haben, enthält das AnalyticsReady Benachrichtigungsereignis auch das voiceConnectorId und. transactionId Auf diese Weise können Sie die Informationen programmgesteuert empfangen und die StartSpeakerSearchTask, oder StartVoiceToneAnalysisTask APIs.

Wenn die Sprachanalyse zur Verarbeitung bereit ist, sendet der Voice Connector ein Ereignis als "detailStatus": "AnalyticsReady" Text an das Benachrichtigungsziel. JSON Wenn Sie Amazon SNS oder Amazon verwendenSQS, erscheint dieser Text im Feld „Datensätze“ in der Amazon SNS - oder SQS Amazon-Nutzlast.

Das folgende Beispiel zeigt einen typischen JSON Körper.

{ "detail-type": "VoiceAnalyticsStatus", "version": "0", "id": "Id-f928dfe3-f44b-4965-8a17-612f9fb92d59", "source": "aws.chime", "account": "123456789012", "time": "2022-08-26T17:55:15.563441Z", "region": "us-east-1", "resources": [], "detail": { "detailStatus": "AnalyticsReady", "callDetails": { "isCaller": false, "transactionId": "daaeb6bf-2fe2-4e51-984e-d0fbf2f09436", "voiceConnectorId": "fuiopl1fsv9caobmqf2vy7" } } }

Diese Benachrichtigung ermöglicht es Ihnen, zusätzliche Rückrufe für Ihre Anwendung auszulösen und alle rechtlichen Anforderungen wie Benachrichtigung und Zustimmung zu erfüllen, bevor Sie die Sprachanalyseaufgabe APIs aufrufen.

Veranstaltungen zur Suche nach Sprechern

Ereignisse zur Suche nach Rednern haben den Typ „SpeakerSearchStatusDetail“.

Amazon Chime SDK Voice Connectors senden die folgenden Lautsprecher-Suchereignisse:

  • Die Identifizierung stimmt überein

  • Generierung von Spracheinbettung

Die Ereignisse können den folgenden Status haben:

  • IdentificationSuccessful— Es wurde erfolgreich mindestens eine passende Sprachprofil-ID mit einem hohen Konfidenzwert in der angegebenen Sprachprofildomäne identifiziert.

  • IdentificationFailure— Identifizierung konnte nicht durchgeführt werden. Ursachen: Der Anrufer spricht mindestens 10 Sekunden lang nicht, schlechte Audioqualität.

  • IdentificationNoMatchesFound— In der angegebenen Sprachprofildomäne konnte keine Übereinstimmung mit hoher Zuverlässigkeit gefunden werden. Der Anrufer ist möglicherweise neu, oder seine Stimme hat sich geändert.

  • VoiceprintGenerationSuccessful— Das System generierte eine Spracheinbettung mithilfe von 20 Sekunden ohne Geräuschlosigkeit.

  • VoiceprintGenerationFailure— Das System konnte keine Spracheinbettung generieren. Ursachen: Der Anrufer spricht mindestens 20 Sekunden lang nicht, schlechte Audioqualität.

Die Identifizierung stimmt überein

Nach dem StartSpeakerSearchTaskAPIwird für einen bestimmten Fall aufgerufentransactionId, gibt der Voice Connector-Dienst nach 10 Sekunden ohne Spracheingabe eine Benachrichtigung über die Übereinstimmung der Identifizierung zurück. Der Dienst gibt die 10 besten Treffer zusammen mit einer Stimmprofil-ID und einem Konfidenzwert zwischen [0, 1] zurück. Je höher der Konfidenzwert, desto wahrscheinlicher ist es, dass der Sprecher des Anrufs mit der Stimmprofil-ID übereinstimmt. Wenn das Modell für maschinelles Lernen keine Treffer findet, enthält das detailStatus Feld der Benachrichtigung FolgendesIdentificationNoMatchesFound.

Das folgende Beispiel zeigt eine Benachrichtigung über einen erfolgreichen Treffer.

{ "version": "0", "id": "12345678-1234-1234-1234-111122223333", "detail-type": "SpeakerSearchStatus", "service-type": "VoiceAnalytics", "source": "aws.chime", "account": "111122223333", "time": "yyyy-mm-ddThh:mm:ssZ", "region": "us-east-1", "resources": [], "detail": { "taskId": "uuid", "detailStatus": "IdentificationSuccessful", "speakerSearchDetails" : { "results": [ { "voiceProfileId": "vp-505e0992-82da-49eb-9d4a-4b34772b96b6", "confidenceScore": "0.94567856", }, { "voiceProfileId": "vp-fba9cbfa-4b8d-4f10-9e41-9dfdd66545ab", "confidenceScore": "0.82783350", }, { "voiceProfileId": "vp-746995fd-16dc-45b9-8965-89569d1cf787", "confidenceScore": "0.77136436", } ] }, "isCaller": false, "voiceConnectorId": "abcdef1ghij2klmno3pqr4", "transactionId": "daaeb6bf-2fe2-4e51-984e-d0fbf2f09436" } }

Generierung von Spracheinbettung

Nach weiteren 10 Sekunden Spracheingabe ohne Ton sendet der Voice Connector eine Benachrichtigung über die Generierung der Spracheinbettung an die Benachrichtigungsziele. Sie können neue Spracheinbettungen in ein Stimmprofil aufnehmen oder einen Ausdruck aktualisieren, der sich bereits in einem Sprachprofil befindet.

Das folgende Beispiel zeigt die Benachrichtigung für einen erfolgreichen Abgleich, was bedeutet, dass Sie das zugehörige Stimmprofil aktualisieren können.

{ "version": "0", "id": "12345678-1234-1234-1234-111122223333", "detail-type": "SpeakerSearchStatus", "service-type": "VoiceAnalytics", "source": "aws.chime", "account": "111122223333", "time": "yyyy-mm-ddThh:mm:ssZ", "region": "us-east-1", "resources": [], "detail": { "taskId": "guid", "detailStatus": "VoiceprintGenerationSuccess", "isCaller": false, "transactionId": "12345678-1234-1234", "voiceConnectorId": "abcdef1ghij2klmno3pqr" } }

Ereignisse zur Stimmentonanalyse

Ereignisse zur Stimmenanalyse haben den Typ „VoiceToneAnalysisStatusDetail“. Die Analysen können folgende Status zurückgeben:

  • VoiceToneAnalysisSuccessful— Die Stimmen des Anrufers und des Agenten wurden erfolgreich nach Stimmungswahrscheinlichkeiten — positiv, negativ oder neutral — analysiert.

  • VoiceToneAnalysisFailure— Die Tonanalyse konnte nicht durchgeführt werden. Dies kann passieren, wenn der Anrufer 10 Sekunden lang hängen bleibt, ohne zu sprechen, oder wenn die Audioqualität zu schlecht wird.

  • VoiceToneAnalysisCompleted— Die Stimmen von Benutzern und Agenten wurden erfolgreich analysiert, um Stimmungswahrscheinlichkeiten für den gesamten Anruf zu ermitteln. Dies ist das letzte Ereignis, das gesendet wird, wenn die Stimmenanalyse abgeschlossen ist.

Das folgende Beispiel zeigt ein typisches Ereignis zur Stimmentonanalyse.

{ "detail-type": "VoiceToneAnalysisStatus", "service-type": "VoiceAnalytics", "source": "aws.chime", "account": "216539279014", "time": "2022-08-26T17:55:15.563441Z", "region": "us-east-1", "detail": { "taskId": "uuid", "detailStatus": "VoiceToneAnalysisSuccessful", "voiceToneAnalysisDetails": { "currentAverageVoiceTone": { "startTime": "2022-08-26T17:55:15.563Z", "endTime": "2022-08-26T17:55:45.720Z", "voiceToneLabel": "neutral", "voiceToneScore": { "neutral": "0.83", "positive": "0.13", "negative": "0.04" } }, "overallAverageVoiceTone": { "startTime": "2022-08-26T16:23:13.344Z", "endTime": "2022-08-26T17:55:45.720Z", "voiceToneLabel": "positive", "voiceToneScore": { "neutral": "0.25", "positive": "0.65", "negative": "0.1" } } }, "isCaller": true, "transactionId": "daaeb6bf-2fe2-4e51-984e-d0fbf2f09436", "voiceConnectorId": "fuiopl1fsv9caobmqf2vy7" }, "version": "0", "id": "Id-f928dfe3-f44b-4965-8a17-612f9fb92d59" }