Entwickeln einer audiobasierten Chat-App
Um eine Client-App zu entwickeln, die an audiobasierten Chats mit einem multimodalen Modell beteiligt ist, können Sie dieselben grundlegenden Techniken verwenden, die für textbasierte Chats verwendet werden. Sie benötigen eine Verbindung mit dem Endpunkt, an dem das Modell bereitgestellt wird, und Sie verwenden diesen Endpunkt, um Eingabeaufforderungen zu senden, die aus Nachrichten an das Modell bestehen und die Antworten verarbeiten.
Der Hauptunterschied besteht darin, dass Eingabeaufforderungen für einen audiobasierten Chat mehrteilige Benutzernachrichten enthalten, die sowohl ein Textinhaltselement als auch ein Audioinhaltselement enthalten.
Die JSON-Darstellung einer Eingabeaufforderung, die eine mehrteilige Benutzernachricht enthält, sieht ungefähr wie folgt aus:
{
"messages": [
{ "role": "system", "content": "You are a helpful assistant." },
{ "role": "user", "content": [
{
"type": "text",
"text": "Transcribe this audio:"
},
{
"type": "audio_url",
"audio_url": {
"url": "https://....."
}
}
] }
]
}
Das Audioinhaltselement kann wie folgt sein:
- Eine URL zu einer Audiodatei auf einer Website.
- Binäre Audiodaten
Bei Verwendung von Binärdaten zum Senden einer lokalen Audiodatei übernimmt der audio_url Inhalt die Form eines base64-codierten Werts in einem Daten-URL-Format:
{
"type": "audio_url",
"audio_url": {
"url": "data:audio/mp3;base64,<binary_audio_data>"
}
}
Je nach Modelltyp und Bereitstellung können Sie microsoft Azure AI Model Inference oder OpenAI-APIs verwenden, um audiobasierte Eingabeaufforderungen zu übermitteln. Diese Bibliotheken stellen auch sprachspezifische SDKs bereit, die die zugrunde liegenden REST-APIs abstrahieren.
In der Übung, die in diesem Modul folgt, können Sie das Python- oder .NET SDK für die Azure AI Model Inference-API und die OpenAI-API verwenden, um eine Audio-fähige Chatanwendung zu entwickeln.