オーディオベースのチャット アプリを開発する
マルチモーダル モデルを使用してオーディオ ベースのチャットに関与するクライアント アプリを開発するには、テキストベースのチャットに使用されるのと同じ基本的な手法を使用できます。 モデルがデプロイされているエンドポイントへの接続が必要であり、そのエンドポイントを使用して、メッセージで構成されるプロンプトをモデルに送信し、応答を処理します。
主な違いは、オーディオ ベースのチャットのプロンプトに 、テキスト コンテンツ項目と オーディオ コンテンツ項目の両方を含むマルチパート ユーザー メッセージが含まれていることです。
マルチパート ユーザー メッセージを含むプロンプトの JSON 表現は、次のようになります。
{
"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://....."
}
}
] }
]
}
オーディオ コンテンツ項目は次のようになります。
- Web サイト内のオーディオ ファイルの URL。
- バイナリ オーディオ データ
バイナリ データを使用してローカル オーディオ ファイルを送信する場合、 audio_url コンテンツは base64 でエンコードされた値の形式をデータ URL 形式で受け取ります。
{
"type": "audio_url",
"audio_url": {
"url": "data:audio/mp3;base64,<binary_audio_data>"
}
}
モデルの種類とデプロイ場所に応じて、Microsoft Azure AI モデル推論または OpenAI API を使用して、オーディオベースのプロンプトを送信できます。 これらのライブラリには、基になる REST API を抽象化する言語固有の SDK も用意されています。
このモジュールの後の演習では、Azure AI モデル推論 API 用の Python または .NET SDK と OpenAI API を使用して、オーディオ対応チャット アプリケーションを開発できます。