本文介绍Qwen-Audio-3.x-ASR-Flash/Fun-ASR-Flash非实时语音识别HTTP API的参数和接口细节。
用户指南:非实时语音识别。关于支持的音频格式、文件大小限制、时长限制等输入要求,请参见音频规格。
在流式模式下,客户端需关注以下处理要点:
接口地址
- 新加坡
- 华北2(北京)
POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation调用时请将{WorkspaceId}替换为真实的Workspace ID。请求头
参数 | 类型 | 是否必选 | 说明 |
|---|---|---|---|
Authorization | string | 是 | 鉴权令牌,格式为 |
Content-Type | string | 是 | 请求参数的媒体类型,固定为 |
X-DashScope-SSE | string | 是 | 用于控制是否以SSE流式方式返回结果。设置为 |
请求参数modelstring(必选)指定模型名。支持Qwen-Audio-3.x-ASR-Flash和Fun-ASR-Flash系列模型,详情请参见支持的模型与地域。inputobject(必选)输入信息。
属性 messages array(object)(必选)消息列表。包含当前待识别的音频,以及可选的对话上下文(用于提升识别效果)。
属性 role string(必选)消息角色。取值范围:
array(object)(必选)消息内容列表。
属性 type string(必选)内容类型。每个请求至少需要一条input_audio类型的消息。取值范围:
object(条件必选)当type为input_audio时必填。
属性 data string(必选)待识别音频数据。关于支持的音频格式、文件大小限制、时长限制等输入要求,请参见音频规格。支持以下两种方式:
https://example.com/audio/sample.wav示例(Base64方式):data:audio/wav;base64,{BASE64_ENCODED_DATA}string(条件必选)当type为input_text时,填入前几轮用户语音的识别结果或领域相关的词表;当type为text时,填入前几轮大语言模型的回复内容。文本按字符数计算,每个字符计为 1。每轮上下文中所有消息的 text 字段长度之和不超过 400 个字符,超出部分从末尾截断。object(必选)模型参数。Qwen-Audio-3.0-ASR-Flash 和 Fun-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表示16kHz采样率。详情请参见音频规格。vocabulary_idstring(可选)预编译热词列表 ID。需预先调用创建热词列表接口生成,识别时传入该 ID 即可使用列表中的热词。适用于词汇已知且相对稳定、需要跨请求复用同一词表的场景。使用方法请参见预编译热词。vocabularyobject(可选)即时热词。以键值对形式传入,键为热词文本(string),值为热词权重(integer),无需预先创建热词列表。权重取值范围为 [1, 5] 或 50:取 [1, 5] 时值越大模型越倾向输出该词;取 50 时为超级热词,召回率大幅提升,但超级热词数量最多不超过 50 个。适用于临时性、会话级别的热词优化。与预编译热词同时配置时,系统会合并两类热词;合并后超过 2000 个时,随机选择 2000 个使用。使用方法请参见即时热词。language_hints array[string](可选)设置待识别语言代码。如果无法提前确定语种,可不设置,模型会自动识别语种。对于 Qwen-Audio-3.x-ASR-Flash 系列模型,最多支持设置 4 个值,即便设置超出 4 个,也仅前 4 个生效;对于 Fun-ASR-Flash 系列模型,仅支持设置 1 个值,即便设置多个,也仅第一个生效。
点击查看支持的语言代码
| 以下为新加坡地域的配置,调用时请将"{WorkspaceId}"替换为真实的业务空间ID,各地域的配置不同。新加坡地域和北京地域的API Key不同。
|
响应参数request_idstring本次请求的唯一标识。outputobject输出结果。
属性 text string当前累积的完整识别文本。sentences array[object]仅 qwen-audio-3.1-asr-flash 开启说话人分离时返回。包含当前及历史句子的识别结果,每个元素的结构与 sentence 相同。sentenceobject当前句子的详细信息。
属性 speaker_id integer | null说话人编号,用于区分不同说话人。qwen-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 | null词对应的说话人编号。qwen-audio-3.1-asr-flash 开启说话人分离时返回编号,未开启时为 null。textstring词文本。begin_timeinteger词开始时间,单位毫秒。end_timeinteger词结束时间,单位毫秒。punctuationstring词后的标点符号。无标点时为空字符串。fixedboolean词是否已稳定。false表示后续事件中该词的时间戳可能调整。object用量信息。仅在sentence_end为true时返回。
属性 duration integer已处理的音频时长,单位秒。input_tokensinteger本次调用消耗的输入 Token 数。仅适用于 qwen-audio-3.1-asr-flash。output_tokensinteger本次调用消耗的输出 Token 数。仅适用于 qwen-audio-3.1-asr-flash。total_tokensinteger本次调用消耗的总 Token 数,等于 input_tokens 与 output_tokens 之和。仅适用于 qwen-audio-3.1-asr-flash。 |
|
SSE 流式结果处理逻辑
在流式模式下,客户端需关注以下处理要点:
- 每收到一个SSE事件,解析
data字段中的JSON。 - 对于 Qwen-Audio-3.0-ASR-Flash 和 Fun-ASR-Flash,通过
output.sentence.sentence_end判断当前句子是否结束:当该值为true时,该句识别完成,词级时间戳已稳定,可作为最终结果使用;当该值为false时,识别仍在进行中,文本和时间戳可能在后续事件中更新。 usage信息仅在句子结束事件中返回,包含音频处理时长。对于qwen-audio-3.1-asr-flash,还包含本次调用的输入、输出和总 Token 数,该模型按 Token 计费。
qwen-audio-3.1-asr-flash,未开启说话人分离时,词级时间戳在 output.sentence.words[i].fixed 为 true 后才固定;在此之前,时间戳仍可能调整。开启说话人分离时,应读取 output.sentences 中当前及历史句子的结果。