Een chat-app op basis van audio ontwikkelen
Als u een client-app wilt ontwikkelen die deelneemt aan audiochats met een multimodale model, kunt u dezelfde basistechnieken gebruiken voor chats op basis van tekst. U hebt een verbinding met het eindpunt nodig waarop het model is geïmplementeerd en u gebruikt dat eindpunt om prompts te verzenden die bestaan uit berichten naar het model en de antwoorden te verwerken.
Het belangrijkste verschil is dat prompts voor een chat op basis van audio gebruikerberichten met meerdere delen bevatten die zowel een tekst inhoudsitem als een audio inhoudsitem omvatten.
De JSON-weergave van een prompt met een gebruikersbericht met meerdere delen ziet er ongeveer als volgt uit:
{
"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://....."
}
}
] }
]
}
Het audio-inhoudsitem kan het volgende zijn:
- Een URL naar een audiobestand op een website.
- Binaire audiogegevens
Wanneer u binaire gegevens gebruikt om een lokaal audiobestand in te dienen, heeft de audio_url inhoud de vorm van een met base64 gecodeerde waarde in een gegevens-URL-indeling:
{
"type": "audio_url",
"audio_url": {
"url": "data:audio/mp3;base64,<binary_audio_data>"
}
}
Afhankelijk van het modeltype en waar u het hebt geïmplementeerd, kunt u Microsoft Azure AI-modeldeductie of OpenAI-API's gebruiken om prompts op basis van audio te verzenden. Deze bibliotheken bieden ook taalspecifieke SDK's waarmee de onderliggende REST API's worden geabstraheerd.
In de volgende oefening in deze module kunt u de Python- of .NET SDK voor de Azure AI-modeldeductie-API en de OpenAI-API gebruiken om een chattoepassing met audio te ontwikkelen.