すべてのプロダクト
Search
ドキュメントセンター

Alibaba Cloud Model Studio:音声ファイル認識 (Qwen-ASR) API リファレンス

最終更新日:Mar 01, 2026

このトピックでは、Qwen-ASR の入力パラメーターと出力パラメーターについて説明します。OpenAI 互換プロトコルまたは DashScope プロトコルを使用して API を呼び出します。

ユーザーガイド: モデルの詳細および選択方法については、「音声ファイル認識 - Qwen」をご参照ください。

モデルの接続タイプ

異なるモデルは、異なる接続タイプをサポートしています。次の表から適切な統合方法を選択してください。

モデル

接続タイプ

Qwen3-ASR-Flash-Filetrans

DashScope 非同期方式のみをサポート

Qwen3-ASR-Flash

OpenAI 互換およびDashScope 同期

OpenAI 互換

重要

米国リージョンは OpenAI 互換モードをサポートしていません。

URL

国際

国際デプロイメントモードでは、エンドポイントおよびデータストレージはシンガポールリージョンに配置され、モデル推論の計算リソースは中国本土を除くグローバルで動的にスケジュールされます。

HTTP エンドポイント:POST https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions

SDK の base_url:https://dashscope-intl.aliyuncs.com/compatible-mode/v1

中国本土

中国本土のデプロイメントモードでは、エンドポイントおよびデータストレージは中国 (北京) リージョンに配置され、モデル推論の計算リソースは中国本土内に限定されます。

HTTP エンドポイント:POST https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions

SDK の base_url:https://dashscope.aliyuncs.com/compatible-mode/v1

リクエストボディ

入力:音声ファイルの URL

Python SDK

from openai import OpenAI
import os

try:
    client = OpenAI(
        # シンガポール/米国および北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください。
        # 環境変数を設定していない場合は、次の行を api_key = "sk-xxx" に置き換えてください。
        api_key=os.getenv("DASHSCOPE_API_KEY"),
        # 次の URL はシンガポール/米国リージョン用です。北京リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/compatible-mode/v1 に置き換えてください。
        base_url="https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
    )
    

    stream_enabled = False  # ストリーミング出力を有効にするかどうか
    completion = client.chat.completions.create(
        model="qwen3-asr-flash",
        messages=[
            {
                "content": [
                    {
                        "type": "input_audio",
                        "input_audio": {
                            "data": "https://dashscope.oss-cn-beijing.aliyuncs.com/audios/welcome.mp3"
                        }
                    }
                ],
                "role": "user"
            }
        ],
        stream=stream_enabled,
        # stream が False の場合、stream_options パラメーターを設定できません。
        # stream_options={"include_usage": True},
        extra_body={
            "asr_options": {
                # "language": "zh",
                "enable_itn": False
            }
        }
    )
    if stream_enabled:
        full_content = ""
        print("ストリーミング出力内容:")
        for chunk in completion:
            # stream_options.include_usage が True の場合、最後のチャンクの choices フィールドは空のリストになり、スキップする必要があります。トークン使用量は chunk.usage から取得できます。
            print(chunk)
            if chunk.choices and chunk.choices[0].delta.content:
                full_content += chunk.choices[0].delta.content
        print(f"完全な内容: {full_content}")
    else:
        print(f"非ストリーミング出力内容: {completion.choices[0].message.content}")
except Exception as e:
    print(f"エラーメッセージ: {e}")

Node.js SDK

// 準備:
// Windows/Mac/Linux:
// 1. Node.js がインストールされていることを確認してください (バージョン >= 14 を推奨)。
// 2. 必要な依存関係をインストールするには、次のコマンドを実行します: npm install openai

import OpenAI from "openai";

const client = new OpenAI({
  // シンガポール/米国および北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください。
  // 環境変数を設定していない場合は、次の行を apiKey: "sk-xxx" に置き換えてください。
  apiKey: process.env.DASHSCOPE_API_KEY,
  // 次の URL はシンガポール/米国リージョン用です。北京リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/compatible-mode/v1 に置き換えてください。
  baseURL: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1", 
});

async function main() {
  try {
    const streamEnabled = false; // ストリーミング出力を有効にするかどうか
    const completion = await client.chat.completions.create({
      model: "qwen3-asr-flash",
      messages: [
        {
          role: "user",
          content: [
            {
              type: "input_audio",
              input_audio: {
                data: "https://dashscope.oss-cn-beijing.aliyuncs.com/audios/welcome.mp3"
              }
            }
          ]
        }
      ],
      stream: streamEnabled,
      // stream が False の場合、stream_options パラメーターを設定できません。
      // stream_options: {
      //   "include_usage": true
      // },
      extra_body: {
        asr_options: {
          // language: "zh",
          enable_itn: false
        }
      }
    });

    if (streamEnabled) {
      let fullContent = "";
      console.log("ストリーミング出力内容:");
      for await (const chunk of completion) {
        console.log(JSON.stringify(chunk));
        if (chunk.choices && chunk.choices.length > 0) {
          const delta = chunk.choices[0].delta;
          if (delta && delta.content) {
            fullContent += delta.content;
          }
        }
      }
      console.log(`完全な内容: ${fullContent}`);
    } else {
      console.log(`非ストリーミング出力内容: ${completion.choices[0].message.content}`);
    }
  } catch (err) {
    console.error(`エラーメッセージ: ${err}`);
  }
}

main();

cURL

カスタマイズされた認識のためにコンテキストを設定するには、システムメッセージのtextパラメーターを使用できます。

# ======= 重要 =======
# 次の URL はシンガポール/米国リージョン用です。北京リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions に置き換えてください。
# シンガポール/米国および北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください。
# === 実行前にこのコメントを削除してください ===

curl -X POST 'https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions' \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
    "model": "qwen3-asr-flash",
    "messages": [
        {
            "content": [
                {
                    "type": "input_audio",
                    "input_audio": {
                        "data": "https://dashscope.oss-cn-beijing.aliyuncs.com/audios/welcome.mp3"
                    }
                }
            ],
            "role": "user"
        }
    ],
    "stream":false,
    "asr_options": {
        "enable_itn": false
    }
}'

入力:Base64 エンコードされた音声ファイル

Data URL (RFC 2397) 形式の Base64 エンコードデータを入力できます:data:<mediatype>;base64,<data>

  • <mediatype>:Multipurpose Internet Mail Extensions (MIME) タイプ。

    音声フォーマットによって異なります。例:

    • WAV:audio/wav

    • MP3:audio/mpeg

  • <data>:音声の Base64 エンコード文字列。

    Base64 エンコーディングによりファイルサイズが増加します。元のファイルサイズが十分に小さく、エンコード後のファイルが 10 MB の入力音声サイズ制限を超えないようにしてください。

  • 例:data:audio/wav;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjI5LjEwMAAAAAAAAAAAAAAA//PAxABQ/BXRbMPe4IQAhl9

    サンプルコードを表示

    import base64, pathlib
    
    # input.mp3 は音声クローン用のローカル音声ファイルです。実際の音声ファイルのパスに置き換え、音声要件を満たしていることを確認してください。
    file_path = pathlib.Path("input.mp3")
    base64_str = base64.b64encode(file_path.read_bytes()).decode()
    data_uri = f"data:audio/mpeg;base64,{base64_str}"
    import java.nio.file.*;
    import java.util.Base64;
    
    public class Main {
        /**
         * filePath は音声クローン用のローカル音声ファイルです。実際の音声ファイルのパスに置き換え、音声要件を満たしていることを確認してください。
         */
        public static String toDataUrl(String filePath) throws Exception {
            byte[] bytes = Files.readAllBytes(Paths.get(filePath));
            String encoded = Base64.getEncoder().encodeToString(bytes);
            return "data:audio/mpeg;base64," + encoded;
        }
    
        // 使用例
        public static void main(String[] args) throws Exception {
            System.out.println(toDataUrl("input.mp3"));
        }
    }

Python SDK

例で使用する音声ファイルはwelcome.mp3です。

import base64
from openai import OpenAI
import os
import pathlib

try:
    # 実際の音声ファイルのパスに置き換えてください
    file_path = "welcome.mp3"
    # 実際の音声ファイルの MIME タイプに置き換えてください
    audio_mime_type = "audio/mpeg"

    file_path_obj = pathlib.Path(file_path)
    if not file_path_obj.exists():
        raise FileNotFoundError(f"音声ファイルが見つかりません: {file_path}")

    base64_str = base64.b64encode(file_path_obj.read_bytes()).decode()
    data_uri = f"data:{audio_mime_type};base64,{base64_str}"

    client = OpenAI(
        # シンガポール/米国および北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください。
        # 環境変数を設定していない場合は、次の行を api_key = "sk-xxx" に置き換えてください。
        api_key=os.getenv("DASHSCOPE_API_KEY"),
        # 次の URL はシンガポール/米国リージョン用です。北京リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/compatible-mode/v1 に置き換えてください。
        base_url="https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
    )
    

    stream_enabled = False  # ストリーミング出力を有効にするかどうか
    completion = client.chat.completions.create(
        model="qwen3-asr-flash",
        messages=[
            {
                "content": [
                    {
                        "type": "input_audio",
                        "input_audio": {
                            "data": data_uri
                        }
                    }
                ],
                "role": "user"
            }
        ],
        stream=stream_enabled,
        # stream が False の場合、stream_options パラメーターを設定できません。
        # stream_options={"include_usage": True},
        extra_body={
            "asr_options": {
                # "language": "zh",
                "enable_itn": False
            }
        }
    )
    if stream_enabled:
        full_content = ""
        print("ストリーミング出力内容:")
        for chunk in completion:
            # stream_options.include_usage が True の場合、最後のチャンクの choices フィールドは空のリストになり、スキップする必要があります。トークン使用量は chunk.usage から取得できます。
            print(chunk)
            if chunk.choices and chunk.choices[0].delta.content:
                full_content += chunk.choices[0].delta.content
        print(f"完全な内容: {full_content}")
    else:
        print(f"非ストリーミング出力内容: {completion.choices[0].message.content}")
except Exception as e:
    print(f"エラーメッセージ: {e}")

Node.js SDK

例で使用する音声ファイルはwelcome.mp3です。

// 準備:
// Windows/Mac/Linux:
// 1. Node.js がインストールされていることを確認してください (バージョン >= 14 を推奨)。
// 2. 必要な依存関係をインストールするには、次のコマンドを実行します: npm install openai

import OpenAI from "openai";
import { readFileSync } from 'fs';

const client = new OpenAI({
  // シンガポール/米国および北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください。
  // 環境変数を設定していない場合は、次の行を apiKey: "sk-xxx" に置き換えてください。
  apiKey: process.env.DASHSCOPE_API_KEY,
  // 次の URL はシンガポール/米国リージョン用です。北京リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/compatible-mode/v1 に置き換えてください。
  baseURL: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1", 
});

const encodeAudioFile = (audioFilePath) => {
    const audioFile = readFileSync(audioFilePath);
    return audioFile.toString('base64');
};

// 実際の音声ファイルのパスに置き換えてください
const dataUri = `data:audio/mpeg;base64,${encodeAudioFile("welcome.mp3")}`;

async function main() {
  try {
    const streamEnabled = false; // ストリーミング出力を有効にするかどうか
    const completion = await client.chat.completions.create({
      model: "qwen3-asr-flash",
      messages: [
        {
          role: "user",
          content: [
            {
              type: "input_audio",
              input_audio: {
                data: dataUri
              }
            }
          ]
        }
      ],
      stream: streamEnabled,
      // stream が False の場合、stream_options パラメーターを設定できません。
      // stream_options: {
      //   "include_usage": true
      // },
      extra_body: {
        asr_options: {
          // language: "zh",
          enable_itn: false
        }
      }
    });

    if (streamEnabled) {
      let fullContent = "";
      console.log("ストリーミング出力内容:");
      for await (const chunk of completion) {
        console.log(JSON.stringify(chunk));
        if (chunk.choices && chunk.choices.length > 0) {
          const delta = chunk.choices[0].delta;
          if (delta && delta.content) {
            fullContent += delta.content;
          }
        }
      }
      console.log(`完全な内容: ${fullContent}`);
    } else {
      console.log(`非ストリーミング出力内容: ${completion.choices[0].message.content}`);
    }
  } catch (err) {
    console.error(`エラーメッセージ: ${err}`);
  }
}

main();

model string (必須)

モデル名。このパラメーターは Qwen3-ASR-Flash のみに適用されます。

messages array (必須)

メッセージのリスト。

メッセージタイプ

システムメッセージ object (オプション)

モデルの目的またはロール。システムメッセージを設定する場合は、メッセージリストの先頭に配置してください。

プロパティ

content array (必須)

メッセージの内容。1 組のメッセージのみ許可されます。

プロパティ

text string

コンテキストを指定します。Qwen3-ASR-Flash では、音声認識中に背景テキスト、エンティティ語彙、その他の参照情報 (コンテキスト) を提供して、カスタマイズされた認識結果を得ることができます。

長さ制限:10,000 トークン。

詳細については、「コンテキストバイアシング」をご参照ください。

role string (必須)

system に設定します。

ユーザーメッセージ object (必須)

ユーザーがモデルに送信するメッセージ。

プロパティ

content array (必須)

ユーザーメッセージの内容。1 組のメッセージのみ許可されます。

プロパティ

type string (必須)

input_audio に設定します。これは入力が音声であることを示します。

input_audio string (必須)

認識対象の音声。詳細については、「クイックスタート」をご参照ください。

OpenAI 互換モードでは、Qwen3-ASR-Flash は Base64 エンコードファイルとインターネット経由でアクセス可能なファイルの URL の 2 つの入力形式をサポートします。

SDK を使用する場合、録音ファイルがOSS に保存されている場合、oss:// プレフィックスで始まる一時 URL を使用できません。

RESTful API を使用する場合、音声ファイルがOSS に保存されている場合、oss:// プレフィックスで始まる一時 URL を使用できます。以下の点にご注意ください。

重要
  • 一時 URL の有効期限は 48 時間であり、期限切れ後は使用できません。本番環境では使用しないでください。

  • アップロード認証情報を取得するための API は 100 QPS に制限されており、スケールアウトをサポートしていません。本番環境、高並行シナリオ、ストレステストシナリオでは使用しないでください。

  • 本番環境では、OSS などの安定したストレージサービスを使用して、ファイルの長期的な可用性を確保し、レート制限の問題を回避してください。

role string (必須)

ユーザーメッセージのロール。user に設定します。

asr_options object (オプション)

特定の機能を有効にするかどうかを指定します。

asr_options は標準的な OpenAI パラメーターではありません。OpenAI SDK を使用する場合、このパラメーターは extra_body を介して渡す必要があります。

プロパティ

language string (オプション) デフォルト値なし

音声の言語がわかっている場合は、このパラメーターを指定して認識精度を向上させることができます。

指定できる言語は 1 つだけです。

音声の言語が不確かな場合や、中国語、英語、日本語、韓国語など複数の言語が混在している場合は、このパラメーターを指定しないでください。

有効な値

  • zh:中国語(普通話、四川語、閩南語、呉語)

  • yue:広東語

  • en:英語

  • ja:日本語

  • de:ドイツ語

  • ko:韓国語

  • ru:ロシア語

  • fr:フランス語

  • pt:ポルトガル語

  • ar:アラビア語

  • it:イタリア語

  • es:スペイン語

  • hi:ヒンディー語

  • id:インドネシア語

  • th:タイ語

  • tr:トルコ語

  • uk:ウクライナ語

  • vi:ベトナム語

  • cs:チェコ語

  • da:デンマーク語

  • fil:フィリピン語

  • fi:フィンランド語

  • is:アイスランド語

  • ms:マレー語

  • no:ノルウェー語

  • pl:ポーランド語

  • sv:スウェーデン語

enable_itn boolean (オプション) デフォルト値:false

逆テキスト正規化 (ITN) を有効にするかどうかを指定します。この機能は中国語および英語の音声にのみ適用されます。

パラメーター値:

  • true

  • false

stream boolean (オプション) デフォルト値:false

応答にストリーミング出力を使用するかどうかを指定します。詳細については、「ストリーミング出力」をご参照ください。

有効な値:

  • false:モデルがすべてのコンテンツを生成し、一度に返します。

  • true:モデルがコンテンツを生成しながら出力します。コンテンツの一部が生成されるたびにデータブロック (チャンク) が返されます。完全な返信を組み立てるには、これらのブロックをリアルタイムで読み取る必要があります。

レスポンス性を向上させ、タイムアウトのリスクを軽減するために、このパラメーターを true に設定することを推奨します。

stream_options object (オプション)

ストリーミング出力の設定項目。このパラメーターは、streamtrue に設定されている場合にのみ有効になります。

プロパティ

include_usage boolean (オプション) デフォルト値:false

応答の最後のデータブロックにトークン消費情報が含まれるかどうかを指定します。

有効な値:

  • true

  • false

ストリーミング出力が有効な場合、トークン消費情報は応答の最後のデータブロックにのみ表示されます。

レスポンス本文

非ストリーミング出力

{
    "choices": [
        {
            "finish_reason": "stop",
            "index": 0,
            "message": {
                "annotations": [
                    {
                        "emotion": "neutral",
                        "language": "zh",
                        "type": "audio_info"
                    }
                ],
                "content": "Welcome to Alibaba Cloud.",
                "role": "assistant"
            }
        }
    ],
    "created": 1767683986,
    "id": "chatcmpl-487abe5f-d4f2-9363-a877-xxxxxxx",
    "model": "qwen3-asr-flash",
    "object": "chat.completion",
    "usage": {
        "completion_tokens": 12,
        "completion_tokens_details": {
            "text_tokens": 12
        },
        "prompt_tokens": 42,
        "prompt_tokens_details": {
            "audio_tokens": 42,
            "text_tokens": 0
        },
        "seconds": 1,
        "total_tokens": 54
    }
}

ストリーミング出力

data: {"model":"qwen3-asr-flash","id":"chatcmpl-3fb97803-d27f-9289-8889-xxxxx","created":1767685989,"object":"chat.completion.chunk","usage":null,"choices":[{"logprobs":null,"index":0,"delta":{"content":"","role":"assistant"}}]}

data: {"model":"qwen3-asr-flash","id":"chatcmpl-3fb97803-d27f-9289-8889-xxxxx","choices":[{"delta":{"annotations":[{"type":"audio_info","language":"zh","emotion":"neutral"}],"content":"Welcome","role":null},"index":0}],"created":1767685989,"object":"chat.completion.chunk","usage":null}

data: {"model":"qwen3-asr-flash","id":"chatcmpl-3fb97803-d27f-9289-8889-xxxxx","choices":[{"delta":{"annotations":[{"type":"audio_info","language":"zh","emotion":"neutral"}],"content":" to","role":null},"index":0}],"created":1767685989,"object":"chat.completion.chunk","usage":null}

data: {"model":"qwen3-asr-flash","id":"chatcmpl-3fb97803-d27f-9289-8889-xxxxx","choices":[{"delta":{"annotations":[{"type":"audio_info","language":"zh","emotion":"neutral"}],"content":" Alibaba","role":null},"index":0}],"created":1767685989,"object":"chat.completion.chunk","usage":null}

data: {"model":"qwen3-asr-flash","id":"chatcmpl-3fb97803-d27f-9289-8889-xxxxx","choices":[{"delta":{"annotations":[{"type":"audio_info","language":"zh","emotion":"neutral"}],"content":" Cloud","role":null},"index":0}],"created":1767685989,"object":"chat.completion.chunk","usage":null}

data: {"model":"qwen3-asr-flash","id":"chatcmpl-3fb97803-d27f-9289-8889-xxxxx","choices":[{"delta":{"annotations":[{"type":"audio_info","language":"zh","emotion":"neutral"}],"content":".","role":null},"index":0}],"created":1767685989,"object":"chat.completion.chunk","usage":null}

data: {"model":"qwen3-asr-flash","id":"chatcmpl-3fb97803-d27f-9289-8889-xxxxx","choices":[{"delta":{"role":null},"index":0,"finish_reason":"stop"}],"created":1767685989,"object":"chat.completion.chunk","usage":null}

data: [DONE]

id string

この呼び出しの一意の識別子です。

choices array

モデルの出力情報です。

プロパティ

finish_reason string

以下の 3 つのケースが適用されます:

  • null:生成中です。

  • stop:モデルが自然に出力を完了したか、入力パラメーターの停止条件によって停止されました。

  • length:出力が最大長を超えたため、生成が停止されました。

index integer

choices 配列における現在のオブジェクトのインデックスです。

message object

モデルが出力したメッセージオブジェクトです。

プロパティ

role string

出力メッセージのロールです。値は `assistant` です。

content array

音声認識の結果です。

annotations array

言語などの出力アノテーション情報です。

プロパティ

language string

認識された音声の言語です。language リクエストパラメーターが指定されている場合、この値はそのパラメーターの値と同じになります。

有効な値

  • zh:中国語 (標準語、四川語、閩南語、呉語)

  • yue:広東語

  • en:英語

  • ja:日本語

  • de:ドイツ語

  • ko:韓国語

  • ru:ロシア語

  • fr:フランス語

  • pt:ポルトガル語

  • ar:アラビア語

  • it:イタリア語

  • es:スペイン語

  • hi:ヒンディー語

  • id:インドネシア語

  • th:タイ語

  • tr:トルコ語

  • uk:ウクライナ語

  • vi:ベトナム語

  • cs:チェコ語

  • da:デンマーク語

  • fil:フィリピン語

  • fi:フィンランド語

  • is:アイスランド語

  • ms:マレー語

  • no:ノルウェー語

  • pl:ポーランド語

  • sv:スウェーデン語

type string

audio_info に設定されます。これは音声情報を示します。

emotion string

認識された音声の感情です。以下の感情がサポートされています:

  • surprised

  • neutral

  • happy

  • sad

  • disgusted

  • angry

  • fearful

created integer

リクエストが作成されたときの UNIX タイムスタンプ (秒単位) です。

model string

このリクエストで使用されたモデルです。

object string

常に chat.completion です。

usage object

このリクエストのトークン消費情報です。

プロパティ

completion_tokens integer

モデルの出力に含まれるトークン数です。

completion_tokens_details object

モデルの出力に含まれるトークンの詳細な情報です。

プロパティ

text_tokens integer

モデルの出力テキストに含まれるトークン数です。

prompt_tokens object

入力に含まれるトークン数です。

prompt_tokens_details object

入力に含まれるトークンの詳細な情報です。

プロパティ

audio_tokens integer

入力音声の長さをトークン単位で表します。変換ルールとして、音声 1 秒あたり 25 トークンに換算されます。1 秒未満の音声は 1 秒としてカウントされます。

text_tokens integer

このパラメーターは無視してください。

seconds integer

音声の長さ (秒単位) です。

total_tokens integer

入力と出力の合計トークン数です (total_tokens = completion_tokens + prompt_tokens)。

DashScope 同期

URL

国際

国際デプロイメントモードでは、エンドポイントおよびデータストレージはシンガポールリージョンに配置され、モデル推論の計算リソースは中国本土を除くグローバルで動的にスケジュールされます。

HTTP エンドポイント:POST https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation

SDK の base_url:https://dashscope-intl.aliyuncs.com/api/v1

米国

米国デプロイメントモードでは、エンドポイントおよびデータストレージは米国 (バージニア) リージョンに配置され、モデル推論の計算リソースは米国内に限定されます。

HTTP エンドポイント:POST https://dashscope-us.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation

SDK の base_url:https://dashscope-us.aliyuncs.com/api/v1

中国本土

中国本土のデプロイメントモードでは、エンドポイントおよびデータストレージは中国 (北京) リージョンに配置され、モデル推論の計算リソースは中国本土でのみ利用可能です。

HTTP エンドポイント:POST https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation

SDK の base_url:https://dashscope.aliyuncs.com/api/v1

リクエストボディ

Qwen3-ASR-Flash

以下の例は、URL からの音声認識方法を示しています。ローカル音声ファイルの認識方法の例については、「クイックスタート」をご参照ください。

cURL

# ======= 重要 =======
# 次の URL はシンガポールリージョン用です。米国リージョンのモデルを使用する場合は、URL を https://dashscope-us.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation に置き換えてください。北京リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation に置き換えてください。
# シンガポール/米国および北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください。
# 米国リージョンのモデルを使用する場合は、"us" サフィックスを追加する必要があります。
# === 実行前にこのコメントを削除してください ===

curl -X POST "https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation" \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
    "model": "qwen3-asr-flash",
    "input": {
        "messages": [
            {
                "content": [
                    {
                        "text": ""
                    }
                ],
                "role": "system"
            },
            {
                "content": [
                    {
                        "audio": "https://dashscope.oss-cn-beijing.aliyuncs.com/audios/welcome.mp3"
                    }
                ],
                "role": "user"
            }
        ]
    },
    "parameters": {
        "asr_options": {
            "enable_itn": false
        }
    }
}'

Java

import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;

import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversation;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationParam;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationResult;
import com.alibaba.dashscope.common.MultiModalMessage;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.exception.UploadFileException;
import com.alibaba.dashscope.utils.Constants;
import com.alibaba.dashscope.utils.JsonUtils;

public class Main {
    public static void simpleMultiModalConversationCall()
            throws ApiException, NoApiKeyException, UploadFileException {
        MultiModalConversation conv = new MultiModalConversation();
        MultiModalMessage userMessage = MultiModalMessage.builder()
                .role(Role.USER.getValue())
                .content(Arrays.asList(
                        Collections.singletonMap("audio", "https://dashscope.oss-cn-beijing.aliyuncs.com/audios/welcome.mp3")))
                .build();

        MultiModalMessage sysMessage = MultiModalMessage.builder().role(Role.SYSTEM.getValue())
                // カスタマイズされた認識のためのコンテキストをここに設定します
                .content(Arrays.asList(Collections.singletonMap("text", "")))
                .build();

        Map<String, Object> asrOptions = new HashMap<>();
        asrOptions.put("enable_itn", false);
        // asrOptions.put("language", "zh"); // オプション。音声の言語がわかっている場合は、このパラメーターを指定して認識精度を向上させることができます。
        MultiModalConversationParam param = MultiModalConversationParam.builder()
                // シンガポール/米国および北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください。
                // 環境変数を設定していない場合は、次の行を .apiKey("sk-xxx") に置き換えてください。
                .apiKey(System.getenv("DASHSCOPE_API_KEY"))
                // 米国リージョンのモデルを使用する場合は、モデル名に "-us" サフィックスを追加します (例: qwen3-asr-flash-us)
                .model("qwen3-asr-flash")
                .message(sysMessage)
                .message(userMessage)
                .parameter("asr_options", asrOptions)
                .build();
        MultiModalConversationResult result = conv.call(param);
        System.out.println(JsonUtils.toJson(result));
    }
    public static void main(String[] args) {
        try {
            // 次の URL はシンガポールリージョン用です。北京リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1 に置き換えてください。米国リージョンのモデルを使用する場合は、URL を https://dashscope-us.aliyuncs.com/api/v1 に置き換えてください。
            Constants.baseHttpApiUrl = "https://dashscope-intl.aliyuncs.com/api/v1";
            simpleMultiModalConversationCall();
        } catch (ApiException | NoApiKeyException | UploadFileException e) {
            System.out.println(e.getMessage());
        }
        System.exit(0);
    }
}

Python

import os
import dashscope

# 次の URL はシンガポールリージョン用です。北京リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1 に置き換えてください。米国リージョンのモデルを使用する場合は、URL を https://dashscope-us.aliyuncs.com/api/v1 に置き換えてください。
dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'

messages = [
    {"role": "system", "content": [{"text": ""}]},  # カスタマイズされた認識のためのコンテキストを設定します
    {"role": "user", "content": [{"audio": "https://dashscope.oss-cn-beijing.aliyuncs.com/audios/welcome.mp3"}]}
]

response = dashscope.MultiModalConversation.call(
    # シンガポール/米国および北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください。
    # 環境変数を設定していない場合は、次の行を api_key = "sk-xxx" に置き換えてください。
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    # 米国リージョンのモデルを使用する場合は、モデル名に "-us" サフィックスを追加します (例: qwen3-asr-flash-us)
    model="qwen3-asr-flash",
    messages=messages,
    result_format="message",
    asr_options={
        #"language": "zh", # オプション。音声の言語がわかっている場合は、このパラメーターを指定して認識精度を向上させることができます。
        "enable_itn":False
    }
)
print(response)

model string (必須)

モデル名。このパラメーターは Qwen3-ASR-Flash のみに適用されます。

messages array (必須)

メッセージのリスト。

HTTP 呼び出しを行う場合、messagesinput オブジェクト内に配置します。

メッセージタイプ

システムメッセージ object (オプション)

モデルの目的またはロール。システムメッセージを設定する場合は、メッセージリストの先頭に配置してください。

このパラメーターは Qwen3-ASR-Flash。

プロパティ

content array (必須)

メッセージの内容。1 組のメッセージのみ許可されます。

プロパティ

text string

コンテキストを指定します。Qwen3-ASR-Flash では、音声認識中に背景テキスト、エンティティ語彙、その他の参照情報 (コンテキスト) を提供して、カスタマイズされた認識結果を得ることができます。

長さ制限:10,000 トークン。

詳細については、「コンテキストバイアシング」をご参照ください。

role string (必須)

system に設定します。

ユーザーメッセージ object (必須)

ユーザーがモデルに送信するメッセージ。

プロパティ

content array (必須)

ユーザーメッセージの内容。1 組のメッセージのみ許可されます。

プロパティ

audio string (必須)

認識対象の音声。詳細については、「クイックスタート」をご参照ください。

DashScope を介して呼び出す場合、Qwen3-ASR-Flash は Base64 エンコードファイル、ローカルファイルの絶対パス、インターネット経由でアクセス可能なファイルの URL の 3 つの入力形式をサポートします。

SDK を使用する場合、録音ファイルがOSS に保存されている場合、oss:// プレフィックスで始まる一時 URL を使用できません。

RESTful API を使用する場合、音声ファイルがOSS に保存されている場合、oss:// プレフィックスで始まる一時 URL を使用できます。以下の点にご注意ください。

重要
  • 一時 URL の有効期限は 48 時間であり、期限切れ後は使用できません。本番環境では使用しないでください。

  • アップロード認証情報を取得するための API は 100 QPS に制限されており、スケールアウトをサポートしていません。本番環境、高並行シナリオ、ストレステストシナリオでは使用しないでください。

  • 本番環境では、OSS などの安定したストレージサービスを使用して、ファイルの長期的な可用性を確保し、レート制限の問題を回避してください。

role string (必須)

ユーザーメッセージのロール。user に設定します。

asr_options object (オプション)

特定の機能を有効にするかどうかを指定します。

このパラメーターは Qwen3-ASR-Flash。

プロパティ

language string (オプション) デフォルト値なし

音声の言語がわかっている場合は、このパラメーターを指定して認識精度を向上させることができます。

指定できる言語は 1 つだけです。

音声の言語が不確かな場合や、中国語、英語、日本語、韓国語など複数の言語が混在している場合は、このパラメーターを指定しないでください。

有効な値

  • zh:中国語(普通話、四川語、閩南語、呉語)

  • yue:広東語

  • en:英語

  • ja:日本語

  • de:ドイツ語

  • ko:韓国語

  • ru:ロシア語

  • fr:フランス語

  • pt:ポルトガル語

  • ar:アラビア語

  • it:イタリア語

  • es:スペイン語

  • hi:ヒンディー語

  • id:インドネシア語

  • th:タイ語

  • tr:トルコ語

  • uk:ウクライナ語

  • vi:ベトナム語

  • cs:チェコ語

  • da:デンマーク語

  • fil:フィリピン語

  • fi:フィンランド語

  • is:アイスランド語

  • ms:マレー語

  • no:ノルウェー語

  • pl:ポーランド語

  • sv:スウェーデン語

enable_itn boolean (オプション) デフォルト値:false

逆テキスト正規化 (ITN) を有効にするかどうかを指定します。この機能は中国語および英語の音声にのみ適用されます。

パラメーター値:

  • true

  • false

レスポンスボディ

Qwen3-ASR-Flash

{
    "output": {
        "choices": [
            {
                "finish_reason": "stop",
                "message": {
                    "annotations": [
                        {
                            "language": "zh",
                            "type": "audio_info",
                            "emotion": "neutral"
                        }
                    ],
                    "content": [
                        {
                            "text": "Welcome to Alibaba Cloud."
                        }
                    ],
                    "role": "assistant"
                }
            }
        ]
    },
    "usage": {
        "input_tokens_details": {
            "text_tokens": 0
        },
        "output_tokens_details": {
            "text_tokens": 6
        },
        "seconds": 1
    },
    "request_id": "568e2bf0-d6f2-97f8-9f15-a57b11dc6977"
}

request_id string

この呼び出しの一意な識別子。

Java SDK によって返されるパラメーターは requestId

output object

呼び出し結果に関する情報。

プロパティ

choices array

モデルの出力。result_format が message の場合にのみ choices パラメーターが含まれます。

プロパティ

finish_reason string

以下の 3 つのケースが該当します。

  • 生成中に値は null です。

  • stop:モデルが自然に生成を終了したか、入力パラメーターの停止条件によって停止されました。

  • length:出力が最大長を超えたため、生成が停止されました。

message object

モデルが出力するメッセージオブジェクト。

プロパティ

role string

出力メッセージのロール。値は assistant です。

content array

出力メッセージの内容。

プロパティ

text string

音声認識の結果。

annotations array

言語などの出力注釈情報。

プロパティ

language string

認識された音声の言語。language リクエストパラメーターが指定されている場合、この値はそのパラメーターの値と同じになります。

有効な値

  • zh:中国語(普通話、四川語、閩南語、呉語)

  • yue:広東語

  • en:英語

  • ja:日本語

  • de:ドイツ語

  • ko:韓国語

  • ru:ロシア語

  • fr:フランス語

  • pt:ポルトガル語

  • ar:アラビア語

  • it:イタリア語

  • es:スペイン語

  • hi:ヒンディー語

  • id:インドネシア語

  • th:タイ語

  • tr:トルコ語

  • uk:ウクライナ語

  • vi:ベトナム語

  • cs:チェコ語

  • da:デンマーク語

  • fil:フィリピン語

  • fi:フィンランド語

  • is:アイスランド語

  • ms:マレー語

  • no:ノルウェー語

  • pl:ポーランド語

  • sv:スウェーデン語

type string

audio_info に設定します。これは音声情報であることを示します。

emotion string

認識された音声の感情。以下の感情がサポートされています。

  • surprised

  • neutral

  • happy

  • sad

  • disgusted

  • angry

  • fearful

usage object

このリクエストのトークン消費情報。

プロパティ

input_tokens_details object

Qwen3-ASR-Flash の入力コンテンツの長さ (トークン単位)。

プロパティ

text_tokens integer

このパラメーターは無視してください。

output_tokens_details object

Qwen3-ASR-Flash の出力コンテンツの長さ (トークン単位)。

プロパティ

text_tokens integer

Qwen3-ASR-Flash が出力する認識テキストの長さ (トークン単位)。

seconds integer

Qwen3-ASR-Flash の音声の長さ (秒単位)。

DashScope 非同期

プロセスの説明

OpenAI 互換モードまたは DashScope 同期呼び出しとは異なり、非同期呼び出しは長時間の音声ファイルやその他の時間のかかるタスクの処理を目的として設計されています。このモードでは、長時間の待機によるリクエストタイムアウトを防ぐために、「タスク送信 - 結果取得」という 2 段階のプロセスを使用します。

  1. ステップ 1:タスクを送信

    • クライアントが非同期処理リクエストを開始します。

    • サーバーはリクエストを検証した後、すぐにタスクを実行しません。代わりに、タスクが正常に作成されたことを示す一意の task_id を返します。

  2. ステップ 2:結果を取得

    • クライアントは、取得した task_id を使用して、ポーリングにより結果照会 API を繰り返し呼び出します。

    • タスクが完了すると、結果照会 API は最終的な認識結果を返します。

統合環境に応じて、SDK を使用するか RESTful API を直接呼び出すかを選択できます。

  • SDK を使用する場合(サンプルコードについては「クイックスタート」、リクエストパラメーターについては「タスクの送信」のリクエストボディ、返された結果については「非同期呼び出しの認識結果」をご参照ください)。

    SDK は基盤となる API 呼び出しの詳細をカプセル化し、より便利なプログラミング体験を提供します。

    1. タスクを送信:タスクを送信するには、async_call() (Python) または asyncCall() (Java) メソッドを呼び出します。このメソッドは、task_id を含むタスクオブジェクトを返します。

    2. 結果を取得:前のステップで返されたタスクオブジェクトまたは task_id を使用して、fetch() メソッドを呼び出して結果を取得します。SDK はタスクが完了またはタイムアウトするまで、ポーリングロジックを自動的に処理します。

  • 2. RESTful API を使用する

    HTTP API を直接呼び出すことで、最大限の柔軟性を実現できます。

    1. タスクを送信します。リクエストが成功すると、レスポンスボディtask_id が含まれます。

    2. 前のステップの task_id を使用して、タスク実行結果を取得します。

タスクの送信

URL

国際

国際デプロイメントモードでは、エンドポイントおよびデータストレージはシンガポールリージョンに配置され、モデル推論の計算リソースは中国本土を除くグローバルで動的にスケジュールされます。

HTTP エンドポイント:POST https://dashscope-intl.aliyuncs.com/api/v1/services/audio/asr/transcription

SDK の base_url:https://dashscope-intl.aliyuncs.com/api/v1

中国本土

中国本土のデプロイメントモードでは、エンドポイントおよびデータストレージは中国 (北京) リージョンに配置され、モデル推論の計算リソースは中国本土内に限定されます。

HTTP エンドポイント:POST https://dashscope.aliyuncs.com/api/v1/services/audio/asr/transcription

SDK の base_url:https://dashscope.aliyuncs.com/api/v1

リクエストボディ

cURL

# ======= 重要 =======
# 次の URL はシンガポールリージョン用です。北京リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1/services/audio/asr/transcription に置き換えてください。
# シンガポールおよび北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください。
# === コマンド実行前にこのコメントを削除してください。===

curl --location --request POST 'https://dashscope-intl.aliyuncs.com/api/v1/services/audio/asr/transcription' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header "Content-Type: application/json" \
--header "X-DashScope-Async: enable" \
--data '{
    "model": "qwen3-asr-flash-filetrans",
    "input": {
        "file_url": "https://dashscope.oss-cn-beijing.aliyuncs.com/audios/welcome.mp3"
    },
    "parameters": {
        "channel_id":[
            0
        ], 
        "enable_itn": false
    }
}'

Java

SDK のサンプルについては、「クイックスタート」をご参照ください。

import com.google.gson.Gson;
import com.google.gson.annotations.SerializedName;
import okhttp3.*;

import java.io.IOException;

public class Main {
    // 次の URL はシンガポールリージョン用です。北京リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1/services/audio/asr/transcription に置き換えてください。
    private static final String API_URL = "https://dashscope-intl.aliyuncs.com/api/v1/services/audio/asr/transcription";

    public static void main(String[] args) {
        // シンガポールおよび北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください。
        // 環境変数を設定していない場合は、次の行を Model Studio API キーに置き換えてください: String apiKey = "sk-xxx"
        String apiKey = System.getenv("DASHSCOPE_API_KEY");

        OkHttpClient client = new OkHttpClient();
        Gson gson = new Gson();

        /*String payloadJson = """
                {
                    "model": "qwen3-asr-flash-filetrans",
                    "input": {
                        "file_url": "https://dashscope.oss-cn-beijing.aliyuncs.com/audios/welcome.mp3"
                    },
                    "parameters": {
                        "channel_id": [0],
                        "enable_itn": false,
                        "language": "zh",
                        "corpus": {
                            "text": ""
                        }
                    }
                }
                """;*/
        String payloadJson = """
                {
                    "model": "qwen3-asr-flash-filetrans",
                    "input": {
                        "file_url": "https://dashscope.oss-cn-beijing.aliyuncs.com/audios/welcome.mp3"
                    },
                    "parameters": {
                        "channel_id": [0],
                        "enable_itn": false
                    }
                }
                """;

        RequestBody body = RequestBody.create(payloadJson, MediaType.get("application/json; charset=utf-8"));
        Request request = new Request.Builder()
                .url(API_URL)
                .addHeader("Authorization", "Bearer " + apiKey)
                .addHeader("Content-Type", "application/json")
                .addHeader("X-DashScope-Async", "enable")
                .post(body)
                .build();

        try (Response response = client.newCall(request).execute()) {
            if (response.isSuccessful() && response.body() != null) {
                String respBody = response.body().string();
                // Gson で JSON を解析します。
                ApiResponse apiResp = gson.fromJson(respBody, ApiResponse.class);
                if (apiResp.output != null) {
                    System.out.println("task_id: " + apiResp.output.taskId);
                } else {
                    System.out.println(respBody);
                }
            } else {
                System.out.println("タスクに失敗しました! HTTP コード: " + response.code());
                if (response.body() != null) {
                    System.out.println(response.body().string());
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    static class ApiResponse {
        @SerializedName("request_id")
        String requestId;

        Output output;
    }

    static class Output {
        @SerializedName("task_id")
        String taskId;

        @SerializedName("task_status")
        String taskStatus;
    }
}

Python

SDK の例については、「クイックスタート」をご参照ください。

import requests
import json
import os

# 次の URL はシンガポールリージョン用です。北京リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1/services/audio/asr/transcription に置き換えてください。
url = "https://dashscope-intl.aliyuncs.com/api/v1/services/audio/asr/transcription"

# シンガポールおよび北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください。
# 環境変数を設定していない場合は、次の行を Model Studio API キーに置き換えてください: DASHSCOPE_API_KEY = "sk-xxx"
DASHSCOPE_API_KEY = os.getenv("DASHSCOPE_API_KEY")

headers = {
    "Authorization": f"Bearer {DASHSCOPE_API_KEY}",
    "Content-Type": "application/json",
    "X-DashScope-Async": "enable"
}

payload = {
    "model": "qwen3-asr-flash-filetrans",
    "input": {
        "file_url": "https://dashscope.oss-cn-beijing.aliyuncs.com/audios/welcome.mp3"
    },
    "parameters": {
        "channel_id": [0],
        # "language": "zh",
        "enable_itn": False
        # "corpus": {
        #     "text": ""
        # }
    }
}

response = requests.post(url, headers=headers, data=json.dumps(payload))
if response.status_code == 200:
    print(f"task_id: {response.json()["output"]["task_id"]}")
else:
    print("タスクに失敗しました!")
    print(response.json())

model string (必須)

モデル名。Qwen3-ASR-Flash-Filetrans のみに適用されます。

input object (必須)

プロパティ

file_url string (必須)

認識対象の音声ファイルの URL。URL はインターネット経由でアクセス可能である必要があります。

SDK を使用する場合、録音ファイルがOSS に保存されている場合、oss:// プレフィックスで始まる一時 URL を使用できません。

RESTful API を使用する場合、音声ファイルがOSS に保存されている場合、oss:// プレフィックスで始まる一時 URL を使用できます。以下の点にご注意ください。

重要
  • 一時 URL の有効期限は 48 時間であり、期限切れ後は使用できません。本番環境では使用しないでください。

  • アップロード認証情報を取得するための API は 100 QPS に制限されており、スケールアウトをサポートしていません。本番環境、高並行シナリオ、ストレステストシナリオでは使用しないでください。

  • 本番環境では、OSS などの安定したストレージサービスを使用して、ファイルの長期的な可用性を確保し、レート制限の問題を回避してください。

parameters object (オプション)

プロパティ

language string (オプション) デフォルト値なし

音声の言語がわかっている場合は、このパラメーターを指定して認識精度を向上させることができます。

指定できる言語は 1 つだけです。

音声の言語が不確かな場合や、中国語、英語、日本語、韓国語など複数の言語が混在している場合は、このパラメーターを指定しないでください。

有効な値

  • zh:中国語(普通話、四川語、閩南語、呉語)

  • yue:広東語

  • en:英語

  • ja:日本語

  • de:ドイツ語

  • ko:韓国語

  • ru:ロシア語

  • fr:フランス語

  • pt:ポルトガル語

  • ar:アラビア語

  • it:イタリア語

  • es:スペイン語

  • hi:ヒンディー語

  • id:インドネシア語

  • th:タイ語

  • tr:トルコ語

  • uk:ウクライナ語

  • vi:ベトナム語

  • cs:チェコ語

  • da:デンマーク語

  • fil:フィリピン語

  • fi:フィンランド語

  • is:アイスランド語

  • ms:マレー語

  • no:ノルウェー語

  • pl:ポーランド語

  • sv:スウェーデン語

enable_itn boolean (オプション) デフォルト値:false

逆テキスト正規化 (ITN) を有効にするかどうかを指定します。この機能は中国語および英語の音声にのみ適用されます。

パラメーター値:

  • true

  • false

enable_words boolean (オプション) デフォルト値:false

単語レベルのタイムスタンプを返すかどうかを制御します。

  • false:文レベルのタイムスタンプを返します。

  • true:単語レベルのタイムスタンプを返します。

    単語レベルのタイムスタンプは、中国語、英語、日本語、韓国語、ドイツ語、フランス語、スペイン語、イタリア語、ポルトガル語、ロシア語でのみサポートされています。他の言語では精度が保証されない場合があります。

このパラメーターは文のセグメンテーションルールにも影響します。

  • false:音声区間検出 (VAD) に基づいて文をセグメント化します。

  • true:VAD および句読点に基づいて文をセグメント化します。

text string

コンテキストを指定します。Qwen3-ASR-Flash では、音声認識中に背景テキスト、エンティティ語彙、その他の参照情報 (コンテキスト) を提供して、カスタマイズされた認識結果を得ることができます。

長さ制限:10,000 トークン。

詳細については、「コンテキストバイアシング」をご参照ください。

channel_id array (オプション) デフォルト値:[0]

マルチトラック音声ファイルにおいて、認識対象の音声トラックのインデックスを指定します。インデックスは 0 から始まります。たとえば、[0] は最初のトラックを認識することを示し、[0, 1] は最初と 2 番目のトラックを同時に認識することを示します。このパラメーターを省略した場合、デフォルトで最初のトラックが処理されます。

重要

指定された各音声トラックは個別に課金されます。たとえば、単一ファイルに対して [0, 1] をリクエストすると、2 回分の課金が発生します。

レスポンスボディ

{
    "request_id": "92e3decd-0c69-47a8-************",
    "output": {
        "task_id": "8fab76d0-0eed-4d20-************",
        "task_status": "PENDING"
    }
}

request_id string

この呼び出しの一意な識別子。

output object

呼び出し結果に関する情報。

プロパティ

task_id string

タスク ID。この ID は、音声認識タスクの照会 API のリクエストパラメーターとして渡されます。

task_status string

タスクのステータス:

  • PENDING

  • RUNNING

  • SUCCEEDED

  • FAILED

  • UNKNOWN:タスクが存在しない、またはそのステータスが不明です。

タスク実行結果の取得

URL

国際

HTTP エンドポイント:GET https://dashscope-intl.aliyuncs.com/api/v1/tasks/{task_id}

SDK の base_url:https://dashscope-intl.aliyuncs.com/api/v1

中国本土

SDK の base_url:https://dashscope.aliyuncs.com/api/v1

HTTP エンドポイント:GET https://dashscope.aliyuncs.com/api/v1/tasks/{task_id}

リクエストボディ

cURL

# ======= 重要 =======
# 次の URL はシンガポールリージョン用です。北京リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1/tasks/{task_id} に置き換えてください。{task_id} は照会対象のタスク ID に置き換える必要があることにご注意ください。
# シンガポールおよび北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください。
# === コマンド実行前にこのコメントを削除してください。===

curl --location --request GET 'https://dashscope-intl.aliyuncs.com/api/v1/tasks/{task_id}' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header "X-DashScope-Async: enable" \
--header "Content-Type: application/json"

Java

SDK の例については、「クイックスタート」をご参照ください。

import okhttp3.*;

import java.io.IOException;

public class Main {
    public static void main(String[] args) {
        // 実際の task_id に置き換えてください。
        String taskId = "xxx";
        // シンガポールおよび北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください。
        // 環境変数を設定していない場合は、次の行を Model Studio API キーに置き換えてください: String apiKey = "sk-xxx"
        String apiKey = System.getenv("DASHSCOPE_API_KEY");

        // 次の URL はシンガポールリージョン用です。北京リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1/tasks/{task_id} に置き換えてください。{task_id} は照会対象のタスク ID に置き換える必要があることにご注意ください。
        String apiUrl = "https://dashscope-intl.aliyuncs.com/api/v1/tasks/" + taskId;

        OkHttpClient client = new OkHttpClient();

        Request request = new Request.Builder()
                .url(apiUrl)
                .addHeader("Authorization", "Bearer " + apiKey)
                .addHeader("X-DashScope-Async", "enable")
                .addHeader("Content-Type", "application/json")
                .get()
                .build();

        try (Response response = client.newCall(request).execute()) {
            if (response.body() != null) {
                System.out.println(response.body().string());
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Python

SDK の例については、「クイックスタート」をご参照ください。

import os
import requests


# シンガポールおよび北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください。
# 環境変数を設定していない場合は、次の行を Model Studio API キーに置き換えてください: DASHSCOPE_API_KEY = "sk-xxx"
DASHSCOPE_API_KEY = os.getenv("DASHSCOPE_API_KEY")

# 実際の task_id に置き換えてください。
task_id = "xxx"
# 次の URL はシンガポールリージョン用です。北京リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1/tasks/{task_id} に置き換えてください。{task_id} は照会対象のタスク ID に置き換える必要があることにご注意ください。
url = f"https://dashscope-intl.aliyuncs.com/api/v1/tasks/{task_id}"

headers = {
    "Authorization": f"Bearer {DASHSCOPE_API_KEY}",
    "X-DashScope-Async": "enable",
    "Content-Type": "application/json"
}

response = requests.get(url, headers=headers)
print(response.json())

task_id string (必須)

タスクの ID。「タスクの送信」操作で返された task_id を渡して、音声認識結果を照会します。

レスポンスボディ

RUNNING

{
    "request_id": "6769df07-2768-4fb0-ad59-************",
    "output": {
        "task_id": "9be1700a-0f8e-4778-be74-************",
        "task_status": "RUNNING",
        "submit_time": "2025-10-27 14:19:31.150",
        "scheduled_time": "2025-10-27 14:19:31.233",
        "task_metrics": {
            "TOTAL": 1,
            "SUCCEEDED": 0,
            "FAILED": 0
        }
    }
}

SUCCEEDED

{
    "request_id": "1dca6c0a-0ed1-4662-aa39-************",
    "output": {
        "task_id": "8fab76d0-0eed-4d20-929f-************",
        "task_status": "SUCCEEDED",
        "submit_time": "2025-10-27 13:57:45.948",
        "scheduled_time": "2025-10-27 13:57:46.018",
        "end_time": "2025-10-27 13:57:47.079",
        "result": {
            "transcription_url": "http://dashscope-result-bj.oss-cn-beijing.aliyuncs.com/pre/pre-funasr-mlt-v1/20251027/13%3A57/7a3a8236-ffd1-4099-a280-0299686ac7da.json?Expires=1761631066&OSSAccessKeyId=LTAI**************&Signature=1lKv4RgyWCarRuUdIiErOeOBnwM%3D&response-content-disposition=attachment%3Bfilename%3D7a3a8236-ffd1-4099-a280-0299686ac7da.json"
        }
    },
    "usage": {
        "seconds": 3
    }
}

FAILED

{
    "request_id": "3d141841-858a-466a-9ff9-************",
    "output": {
        "task_id": "c58c7951-7789-4557-9ea3-************",
        "task_status": "FAILED",
        "submit_time": "2025-10-27 15:06:06.915",
        "scheduled_time": "2025-10-27 15:06:06.967",
        "end_time": "2025-10-27 15:06:07.584",
        "code": "FILE_403_FORBIDDEN",
        "message": "FILE_403_FORBIDDEN"
    }
}

request_id string

この呼び出しの一意な識別子。

output object

呼び出し結果に関する情報。

プロパティ

task_id string

タスク ID。この ID は、音声認識タスクの照会 API のリクエストパラメーターとして渡されます。

task_status string

タスクのステータス:

  • PENDING

  • RUNNING

  • SUCCEEDED

  • FAILED

  • UNKNOWN:タスクが存在しない、またはそのステータスが不明です。

result object

音声認識の結果。

プロパティ

transcription_url string

認識結果ファイルのダウンロード URL。リンクの有効期限は 24 時間です。有効期限が切れると、以前の URL を使用してタスクを照会したり結果をダウンロードしたりすることはできません。
認識結果は JSON ファイルとして保存されます。このリンクからファイルをダウンロードするか、HTTP リクエストを使用してファイルの内容を直接読み取ることができます。

詳細については、「非同期呼び出しの結果」をご参照ください。

submit_time string

タスクが送信された時刻。

schedule_time 文字列

タスクがスケジュールされた時刻 (実行開始時刻)。

end_time string

タスクが終了した時刻。

task_metrics object

サブタスクのステータスに関する統計情報を含むタスクメトリック。

プロパティ

TOTAL integer

サブタスクの総数。

SUCCEEDED integer

成功したサブタスクの数。

FAILED integer

失敗したサブタスクの数。

code string

エラーコード。タスクが失敗した場合にのみ返されます。

message string

エラーメッセージ。タスクが失敗した場合にのみ返されます。

usage object

このリクエストのトークン消費情報。

プロパティ

seconds integer

Qwen3-ASR-Flash の音声の長さ (秒単位)。

非同期呼び出しの認識結果の説明

{
    "file_url": "https://***.wav",
    "audio_info": {
        "format": "wav",
        "sample_rate": 16000
    },
    "transcripts": [
        {
            "channel_id": 0,
            "text": "Senior staff, Principal Doris Jackson, Wakefield faculty, and of course my fellow classmates.I am honored to have been chosen to speak before my classmates along with the students across America today.",
            "sentences": [
                {
                    "sentence_id": 0,
                    "begin_time": 240,
                    "end_time": 6720,
                    "language": "en",
                    "emotion": "happy",
                    "text": "Senior staff, Principal Doris Jackson, Wakefield faculty, and of course my fellow classmates.",
                    "words": [
                        {
                            "begin_time": 240,
                            "end_time": 1120,
                            "text": "Senior ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 1120,
                            "end_time": 1200,
                            "text": "staff",
                            "punctuation": ","
                        },
                        {
                            "begin_time": 1680,
                            "end_time": 1920,
                            "text": " Principal ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 2000,
                            "end_time": 2320,
                            "text": "Doris ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 2320,
                            "end_time": 2960,
                            "text": "Jackson",
                            "punctuation": ","
                        },
                        {
                            "begin_time": 3360,
                            "end_time": 3840,
                            "text": " Wakefield ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 3840,
                            "end_time": 4480,
                            "text": "faculty",
                            "punctuation": ","
                        },
                        {
                            "begin_time": 4800,
                            "end_time": 4960,
                            "text": " and ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 4960,
                            "end_time": 5040,
                            "text": "of ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 5040,
                            "end_time": 5520,
                            "text": "course ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 5520,
                            "end_time": 5680,
                            "text": "my ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 5760,
                            "end_time": 6000,
                            "text": "fellow ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 6000,
                            "end_time": 6720,
                            "text": "classmates",
                            "punctuation": "."
                        }
                    ]
                },
                {
                    "sentence_id": 1,
                    "begin_time": 12268,
                    "end_time": 17388,
                    "language": "en",
                    "emotion": "neutral",
                    "text": "I am honored to have been chosen to speak before my classmates along with the students across America today.",
                    "words": [
                        {
                            "begin_time": 12268,
                            "end_time": 12428,
                            "text": "I ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 12428,
                            "end_time": 12508,
                            "text": "am ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 12588,
                            "end_time": 12828,
                            "text": "honored ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 12908,
                            "end_time": 12908,
                            "text": "to ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 12908,
                            "end_time": 13068,
                            "text": "have ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 13068,
                            "end_time": 13228,
                            "text": "been ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 13228,
                            "end_time": 13628,
                            "text": "chosen ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 13628,
                            "end_time": 13708,
                            "text": "to ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 13708,
                            "end_time": 14028,
                            "text": "speak ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 14028,
                            "end_time": 14268,
                            "text": "before ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 14268,
                            "end_time": 14428,
                            "text": "my ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 14428,
                            "end_time": 15148,
                            "text": "classmates ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 15308,
                            "end_time": 15468,
                            "text": "as ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 15468,
                            "end_time": 15628,
                            "text": "well ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 15628,
                            "end_time": 15788,
                            "text": "as ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 15788,
                            "end_time": 15788,
                            "text": "the ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 15788,
                            "end_time": 16188,
                            "text": "students ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 16188,
                            "end_time": 16588,
                            "text": "across ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 16588,
                            "end_time": 16988,
                            "text": "America ",
                            "punctuation": ""
                        },
                        {
                            "begin_time": 16988,
                            "end_time": 17388,
                            "text": "today",
                            "punctuation": "."
                        }
                    ]
                }
            ]
        }
    ]
}

file_url string

認識された音声ファイルの URL。

audio_info object

認識された音声ファイルに関する情報。

プロパティ

format string

音声フォーマット。

sample_rate integer

音声サンプリングレート。

transcripts array

完全な認識結果のリスト。各要素は音声トラックの認識内容に対応します。

プロパティ

channel_id integer

音声トラックのインデックス。0 から始まります。

text string

認識されたテキスト。

sentences object

文レベルの認識結果のリスト。

プロパティ

begin_timeinteger

文の開始タイムスタンプ (ミリ秒単位)。

end_timeinteger

文の終了タイムスタンプ (ミリ秒単位)。

text string

認識されたテキスト。

sentence_id integer

文のインデックス。0 から始まります。

language string

認識された音声の言語。language リクエストパラメーターが指定されている場合、この値はそのパラメーターの値と同じになります。

有効な値

  • zh:中国語(普通話、四川語、閩南語、呉語)

  • yue:広東語

  • en:英語

  • ja:日本語

  • de:ドイツ語

  • ko:韓国語

  • ru:ロシア語

  • fr:フランス語

  • pt:ポルトガル語

  • ar:アラビア語

  • it:イタリア語

  • es:スペイン語

  • hi:ヒンディー語

  • id:インドネシア語

  • th:タイ語

  • tr:トルコ語

  • uk:ウクライナ語

  • vi:ベトナム語

  • cs:チェコ語

  • da:デンマーク語

  • fil:フィリピン語

  • fi:フィンランド語

  • is:アイスランド語

  • ms:マレー語

  • no:ノルウェー語

  • pl:ポーランド語

  • sv:スウェーデン語

emotion string

認識された音声の感情。以下の感情がサポートされています。

  • surprised:驚き

  • neutral:中立

  • happy: ハッピー

  • sad:悲しみ

  • disgusted:嫌悪

  • angry:怒り

  • fearful:恐怖

words object

単語レベルの認識結果のリスト。enable_words リクエストパラメーターが true に設定されている場合にのみ返されます。

プロパティ

begin_timeinteger

開始タイムスタンプ (ミリ秒単位)。

end_timeinteger

終了タイムスタンプ (ミリ秒単位)。

text string

認識されたテキスト。

punctuation string

句読点。