このトピックでは、Qwen-ASR-Realtime API との WebSocket セッション中にサーバーがクライアントに送信するイベントについて説明します。
error
このイベントは、サーバーがエラーを検出したときにクライアントに送信されます。エラーには、クライアントエラーまたはサーバーエラーがあります。
|
session.created
これは、クライアントが正常に接続した後にサーバーが送信する最初のイベントです。セッションに対してサーバーが設定したデフォルトの構成が含まれています。
|
session.updated
サーバーは、クライアントからの session.update イベントの処理に成功した後にこのイベントを送信します。処理中にエラーが発生した場合、サーバーは代わりにエラーイベントを送信します。
|
input_audio_buffer.speech_started
このイベントは VAD モードでのみ送信されます。サーバーは、音声バッファー内で発話の開始を検出したときにこのイベントを送信します。
このイベントは、発話の開始がすでに検出されていない限り、音声がバッファーに追加されるたびに発生する可能性があります。
|
input_audio_buffer.speech_stopped
このイベントは VAD モードでのみ送信されます。サーバーは、音声バッファー内で発話の終了を検出したときにこのイベントを送信します。
このイベントがトリガーされた後、サーバーは直ちに conversation.item.created イベントを送信します。これには、音声バッファーから作成されたユーザーメッセージアイテムが含まれます。
|
input_audio_buffer.committed
- VAD モード:サーバーは、クライアントが input_audio_buffer.append イベントを使用して音声データの送信を完了した後にこのイベントを送信します。
- 手動モード:サーバーは、クライアントが input_audio_buffer.append イベントを使用して音声データの送信を完了し、その後 input_audio_buffer.commit イベントを送信した後にこのイベントを送信します。
|
conversation.item.created
サーバーは、新しい会話アイテムが作成されたときにこのイベントを送信します。
|
conversation.item.input_audio_transcription.text
このイベントは、リアルタイムの認識結果を提供するために頻繁に送信されます。
| text + stash となります。
クリックして例を表示 例えば、ユーザーが「今日はいい天気ですね、晴れていて明るいです」と話したとします。以下の表は、受信する可能性のあるイベントストリームと、その解釈方法を示しています:
|
conversation.item.input_audio_transcription.completed
このイベントは、最終的な認識結果をクライアントに送信します。これは、会話アイテムの終了を示します。
|
conversation.item.input_audio_transcription.failed
入力音声の認識が失敗した場合、サーバーはこのイベントを送信します。このイベントは、クライアントが失敗した特定のアイテムを特定しやすくするため、他の error イベントとは別に処理されます。
|
session.finished
セッションは終了し、現在のセッション内のすべての音声認識が完了しました。
このイベントは、クライアントが session.finish イベントを送信した後にのみ送信されます。クライアントは、このイベントを受信した後に切断できます。
|