Qwen3-ASR-Flash-Filetrans

复制成功!
加入对比
语音识别

概述

语音识别

千问3-ASR-Flash的大文件转录版本,千问3-ASR-Flash是一款基于大语言模型的高精度、高智能、高鲁棒性的多语种语音识别模型。依托强大的基座模型、海量的文本与多模态数据、千万小时音频数据,千问3-ASR-Flash实现了高精度的语音识别功能,能够自动判断语种并准确识别多个语种的语音,在复杂的音频环境下能够保证精确转录。此版本为2025年11月17日的快照版本。

输入

音频

输出

文本

功能

前缀补全

您可在调用通义千问 API 时启用 Partial Mode,确保模型严格基于您的起始文本进行生成。查看文档

函数调用

您可以使用 函数调用 功能,通过引入外部工具,使得大模型可以与外部世界进行交互。查看文档

缓存

Context Cache 技术会缓存长上下文请求的公共前缀,减少推理时的重复计算,提升响应速度同时降低您的使用成本。查看文档

结构化输出

开启结构化输出功能可以确保大模型输出标准格式的 JSON 字符串。查看文档

批量任务

联网搜索

启用联网检索功能后,模型将基于实时检索数据进行回复。查看文档

微调

定价

  • 音频时长
    ¥0.00022每秒

速率限制

  • RPM每分钟请求数
    100

API 参考

获取 API Key
复制成功!
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
import os
import time
import requests
import json


API_URL_SUBMIT = "https://dashscope.aliyuncs.com/api/v1/services/audio/asr/transcription"
API_URL_QUERY_BASE = "https://dashscope.aliyuncs.com/api/v1/tasks/"


def main():
    # If no environment variable is configured, please replace the downlink with the Bailian API Key: api_key = "sk-xxx"
    api_key = os.getenv("DASHSCOPE_API_KEY")

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


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


    try:
        submit_resp = requests.post(API_URL_SUBMIT, headers=headers, data=json.dumps(payload))
    except requests.RequestException as e:
        print(f"Failed: {e}")
        return

    if submit_resp.status_code != 200:
        print(f"Failed! HTTP code: {submit_resp.status_code}")
        print(submit_resp.text)
        return

    resp_data = submit_resp.json()
    output = resp_data.get("output")
    if not output or "task_id" not in output:
        print("resp_data:", resp_data)
        return

    task_id = output["task_id"]
    print(f"任务已提交,task_id: {task_id}")


    finished = False
    while not finished:
        time.sleep(2)

        query_url = API_URL_QUERY_BASE + task_id
        try:
            query_resp = requests.get(query_url, headers=headers)
        except requests.RequestException as e:
            print(f"Failed: {e}")
            return

        if query_resp.status_code != 200:
            print(f"Failed! HTTP code: {query_resp.status_code}")
            print(query_resp.text)
            return

        query_data = query_resp.json()
        output = query_data.get("output")
        if output and "task_status" in output:
            status = output["task_status"]
            print(f"status: {status}")

            if status.upper() in ("SUCCEEDED", "FAILED", "UNKNOWN"):
                finished = True
                print("task finished:")
                print(json.dumps(query_data, indent=2, ensure_ascii=False))
        else:
            print("query data:", query_data)


if __name__ == "__main__":
    main()