Tworzenie aplikacji do czatu opartego na dźwiękach
Aby opracować aplikację kliencką, która angażuje się w czaty audio z modelem wielomodalnym, możesz użyć tych samych podstawowych technik używanych do czatów opartych na tekście. Wymagane jest połączenie z punktem końcowym, w którym wdrożono model, i używasz tego punktu końcowego do przesyłania monitów składających się z komunikatów do modelu i przetwarzania odpowiedzi.
Kluczową różnicą jest to, że monity do czatu audio obejmują wieloczęściowe wiadomości użytkownika zawierające zarówno element tekstowy, jak i element audio.
Reprezentacja JSON monitu zawierającego komunikat użytkownika wieloczęściowego wygląda następująco:
{
"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://....."
}
}
] }
]
}
Element zawartości audio może być:
- Adres URL pliku audio w witrynie sieci Web.
- Dane binarne audio
W przypadku przesyłania lokalnego pliku audio przy użyciu danych binarnych zawartość audio_url przyjmuje postać zakodowanej wartości base64 w formacie adresu URL danych:
{
"type": "audio_url",
"audio_url": {
"url": "data:audio/mp3;base64,<binary_audio_data>"
}
}
W zależności od typu modelu i miejsca jego wdrożenia, można użyć wnioskowania modelu AI platformy Microsoft Azure lub interfejsów API OpenAI do przesyłania monitów opartych na dźwięku. Te biblioteki udostępniają również zestawy SDK specyficzne dla języka, które stanowią abstrakcję podstawowych interfejsów API REST.
W poniższym ćwiczeniu w tym module możesz użyć zestawu SDK języka Python lub platformy .NET dla interfejsu API wnioskowania modelu AI platformy Azure i interfejsu API openAI, aby utworzyć aplikację do czatu z obsługą dźwięku.