このトピックでは、Qwen-Audio-ASR 非リアルタイム音声認識 HTTP API のパラメーターとインターフェイスの詳細について説明します。
サポートされている音声フォーマット、ファイルサイズの制限、時間の制限などの入力要件については、音声仕様をご参照ください。
ストリーミングモードでは、クライアントは以下を処理する必要があります:
サービスエンドポイント
- シンガポール
- 中国 (北京)
POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation{WorkspaceId} を実際の ワークスペース ID に置き換えます。リクエストヘッダー
| パラメーター | タイプ | 必須 | 説明 |
|---|---|---|---|
Authorization | string | はい | 認証トークン。Bearer <your_api_key> というフォーマットです。<your_api_key> を、実際の API キーに置き換えてください。 |
Content-Type | string | はい | リクエストボディのメディアタイプ。 application/json に固定されています。 |
X-DashScope-SSE | string | いいえ | ストリーミング結果を要求するかどうかを制御します。enable を指定すると SSE ストリーミングを要求します。disable を指定するか、このパラメーターを省略すると、最終結果のみが返されます。qwen-audio-3.0-asr-flash のみに適用されます。音声の長さが 1 分以上の場合にのみ SSE ストリーミングで結果が返されます。 |
リクエストボディmodelstring(必須)モデル名。inputobject(必須)入力情報。
プロパティ messages array(object)(必須)メッセージリスト。認識する音声と、オプションで認識精度を向上させるための会話コンテキストが含まれます。
プロパティ role string(必須)メッセージのロール。有効な値:
array(object)(必須)メッセージコンテンツのリスト。
プロパティ type string(必須)コンテンツタイプ。各リクエストには、タイプが input_audio のメッセージが少なくとも 1 つ必要です。有効な値:
object(条件付き必須)type が input_audio の場合は必須です。
プロパティ data string(必須)認識する音声データ。サポートされている音声フォーマット、ファイルサイズの制限、時間の制限などの入力要件については、音声仕様をご参照ください。2 つのメソッドがサポートされています:
https://example.com/audio/sample.wav例 (Base64): data:audio/wav;base64,{BASE64_ENCODED_DATA}string(条件付き必須)type が input_text の場合、前のターンのユーザーの発話の認識結果、またはドメイン固有の単語リストを入力します。 type が text の場合、前のターンの大規模言語モデルの応答を入力します。 テキストの長さは文字単位で測定され、各文字は 1 としてカウントされます。 1 つのコンテキストターン内のすべてのメッセージにわたる text フィールドの合計の長さは 400 文字を超えることはできません。 超過分は末尾から切り捨てられます。object(必須)モデルパラメーター。qwen-audio-3.0-asr-flash のテキスト調整機能はデフォルトで無効で、まだ提供されていません。qwen-audio-3.1-asr-flash はネイティブのテキスト調整に対応しています。テキスト調整では、音声認識と同時に、意味のないフィラーや言いよどみによる重複の削除、発話中の言い直しへの対応、口語表現の整理、句読点とテキスト形式の標準化を行います。話者の最終的な意図と重要な情報をできる限り保ちながら、簡潔で流暢かつ読みやすい結果を出力します。
プロパティ speaker_diarization_enabled boolean (オプション)qwen-audio-3.1-asr-flash のみに適用されます。false です。true にすると、レスポンスの speaker_id で話者を区別し、output.sentences を返します。有効な場合、keep_dialect と language_hints は無効になります。keep_dialect boolean (オプション)qwen-audio-3.1-asr-flash のみに適用されます。false です。false は方言を標準中国語のテキストに変換し、true は方言表現を保持します。formatstring(必須)音声フォーマット。実際の音声フォーマットに合わせて設定します。サポートされている値は wav、 mp3、 opus です。詳細については、「音声仕様」をご参照ください。sample_ratestring(オプション)オーディオのサンプルレート (Hz) です。たとえば、16000 は 16 kHz のサンプルレートを意味します。詳細については、「オーディオ仕様」をご参照ください。vocabulary_idstring(オプション)プリコンパイルされたホットワードリストの ID。この ID は、ホットワードリスト作成 API を呼び出して事前に生成します。認識時に ID を渡して、リスト内のホットワードを使用します。語彙が既知で比較的安定しており、リクエスト間で同じ単語リストを再利用する必要があるシナリオに適しています。使用方法の詳細については、プリコンパイルされたホットワードをご参照ください。vocabularyobject(オプション)即時ホットワード。キーを熱詞テキスト (string)、値を熱詞の重み (integer) とするキーと値のペアとして渡されます。事前に熱詞リストを作成する必要はありません。重みの有効値は [1, 5] または 50 です。[1, 5] の範囲では、値が大きいほどモデルがその単語を出力する可能性が高くなります。値が 50 の場合はスーパー熱詞を指定します。これにより再現率が大幅に向上しますが、スーパー熱詞の数は 50 を超えることはできません。一時的な、セッションレベルのホットワード最適化に適しています。プリコンパイルされたホットワードと一緒に構成された場合、インスタントホットワードのみが有効になります。使用方法の詳細については、インスタントホットワードをご参照ください。language_hints array[string](オプション)認識する言語コードを指定します。事前に言語が不明な場合は省略すると、モデルが自動検出します。最大 4 個の値を指定でき、それ以上指定した場合は最初の 4 個だけが有効です。言語コードを指定すると、認識精度を向上できます。
サポートされている言語コード
qwen-audio-3.1-asr-flash は、次の言語コードもサポートします。
| 以下の例では、シンガポールリージョンの構成を使用しています。{WorkspaceId} を実際のワークスペース ID に置き換えてください。構成はリージョンによって異なり、シンガポールリージョンの API キーは北京リージョンのものとは異なります。
|
レスポンスボディrequest_idstringこのリクエストの一意の識別子。outputobject出力結果。
プロパティ text stringこれまでに蓄積された認識された全文。sentences array[object]qwen-audio-3.1-asr-flash のみに適用されます。sentence と同じです。sentenceobject現在の文の詳細。
プロパティ speaker_id integer | nullqwen-audio-3.1-asr-flash のみに適用されます。null です。sentence_idinteger文番号。1 から始まります。sentence_endboolean文の最終結果であるかどうか。 true は、文の認識が完了したことを示します。begin_timeinteger文の開始時刻 (ミリ秒)。end_timeintegerミリ秒単位の文の終了時間。sentence_end が true の場合にのみ返されます。textstring現在の文の認識されたテキスト。channel_idintegerチャンネル番号。0 から始まります。wordsarray単語レベルのタイムスタンプのリスト。
プロパティ speaker_id integer | nullqwen-audio-3.1-asr-flash のみに適用されます。null です。textstring単語のテキスト。begin_timeinteger単語の開始時刻 (ミリ秒)。end_timeinteger単語の終了時刻 (ミリ秒)。punctuationstring単語の後の句読点。句読点がない場合は空の文字列。fixedboolean単語が確定されたかどうか。 false の場合、単語のタイムスタンプが後続のイベントで調整される可能性があります。object使用量情報です。sentence_end が true の場合にのみ返されます。
プロパティ duration integer処理された音声の長さ (秒)。input_tokens integerqwen-audio-3.1-asr-flash のみに適用されます。integerqwen-audio-3.1-asr-flash のみに適用されます。integerqwen-audio-3.1-asr-flash のみに適用されます。input_tokens と output_tokens の合計です。 |
|
SSE ストリーミング結果の処理ロジック
ストリーミングモードでは、クライアントは以下を処理する必要があります:
- 受信した SSE イベントごとに、
dataフィールドの JSON を解析します。 qwen-audio-3.0-asr-flashでは、output.sentence.sentence_endで現在の文が終了したかを判断します。trueの場合は認識が完了し、単語レベルのタイムスタンプが確定しているため、最終結果として使用できます。falseの場合は認識中であり、後続のイベントでテキストやタイムスタンプが更新される可能性があります。usageは文の終了イベントでのみ返され、処理済みの音声時間を含みます。qwen-audio-3.1-asr-flashでは、リクエストの入力、出力、合計トークン数も含まれます。このモデルはトークン使用量に基づいて課金されます。
qwen-audio-3.1-asr-flash で話者分離を無効にしている場合、単語のタイムスタンプは output.sentence.words[i].fixed が true になった時点で確定します。それまでは変更される可能性があります。話者分離を有効にした場合は、output.sentences から現在および過去の文の結果を読み取ります。