在多人同时说话的场景里,语音识别一直面临一个特殊问题:系统能够听见很多声音,却很难判断其中哪一句属于指定的人。
会议录音、多人通话、车载语音、家庭环境中的语音控制,都存在类似情况。传统方案通常需要先进行语音分离,再把分离后的目标声音交给 ASR 模型识别,整个流程涉及多个模型和处理环节。
小米近期开源的 Xiaomi-CocktailASR-1,针对的正是这一类目标说话人语音识别(Target-Speaker ASR,TS-ASR)任务。
模型输入一段目标说话人的参考语音,再输入一段单人或多人混合音频,系统可以直接生成目标说话人的转录结果。整个过程由一个端到端模型完成,参考语音承担目标说话人的声纹提示作用。
根据小米公开的技术报告,Xiaomi-CocktailASR-1 在 LibriMix、LibriSpeechMix、AMI、AliMeeting 等多个多说话人测试集上取得了较强的结果,同时兼顾单说话人 ASR 能力,并加入了目标说话人缺席时的负样本拒识机制。
亮点速览
- 目标说话人识别:通过参考语音指定需要识别的人,从多人混合语音中直接转写目标说话人的内容。
- 端到端架构:由音频编码器、Adapter 和 Qwen3-8B 组成,省去了独立的语音分离模块。
- 单人、多人统一处理:同一个模型可以处理单说话人和多人混合语音。
- 负样本拒识:目标说话人没有出现在音频中时,可以输出空文本。
- CoT 推理模式:可以输出说话人数、性别、声纹相似度等中间信息。
- 多说话人测试表现突出:LibriMix 2mix WER 达到 4.11%,AliMeeting-Far WER 达到 20.63%。
- Apache 2.0 开源:模型权重和代码均已公开。
Xiaomi-CocktailASR-1是什么
Xiaomi-CocktailASR-1 是小米 Xiaoai Plus ASR 团队推出的目标说话人语音识别大模型。
TS-ASR 的使用方式与普通 ASR 有一个明显区别。普通 ASR 接收一段语音,然后把其中的语音内容转换为文字;TS-ASR 还需要提供一段目标说话人的参考语音,让模型知道“需要关注谁”。
例如,一段会议录音中有三个人同时交谈。用户提供其中一人的几秒参考语音,模型就可以将这段参考声音作为身份条件,在后续混合语音中寻找与之对应的说话内容,并输出目标人物的转录结果。
这一机制对于多人交叠讲话尤其有价值。
传统系统往往需要经过语音活动检测、说话人分离、说话人识别、ASR 等多个步骤。每个环节都会产生误差,前面的分离质量也会影响后续文字识别。
Xiaomi-CocktailASR-1 将这些处理集中到一个端到端模型中。参考语音直接参与模型的音频理解过程,模型根据目标声音特征生成对应的文字结果。
模型架构
Xiaomi-CocktailASR-1 的整体结构可以概括为:
0.6B Audio Encoder + Linear Adapter + Qwen3-8B
其中 Audio Encoder 负责从语音中提取声学和说话人相关特征,Adapter 将音频特征映射到大语言模型的隐藏空间,Qwen3-8B 负责理解输入条件并生成最终文本。
模型输入采用特殊的音频排列方式:
参考语音 + 1 秒静音 + 待识别混合语音
参考语音通常提供目标说话人的身份信息,随后加入 1 秒静音作为边界,再输入实际需要识别的音频。
这种设计让模型能够明确区分“用于确定目标身份的声音”和“需要进行识别的声音”。
Audio Encoder
音频编码器规模约为 0.6B 参数,基于 Data2Vec2 进行改进。
小米在这一部分采用自监督学习中的 Mask Prediction 思路,使编码器在学习语音内容的同时保留说话人相关信息。模型没有额外设置独立的 Speaker Encoder,参考语音本身承担目标说话人的条件提示作用。
编码器输入经过 FBank 特征处理后,得到帧级音频表示,再交给 Adapter 进行维度和空间上的映射。
这一设计使语义信息和说话人信息能够在同一音频编码网络中共同建模。
Adapter 与 Qwen3-8B
Audio Encoder 输出的特征与 Qwen3-8B 的语言空间并不直接匹配,因此模型使用轻量级线性 Adapter 完成特征映射。
经过 Adapter 后,音频特征与文本 Prompt 一起输入 Qwen3-8B。
最终模型通过自回归方式生成目标说话人的文字内容。
整个过程可以理解为:
参考声音确定目标 → 编码器理解混合语音 → Adapter 对齐语言空间 → Qwen3-8B 生成转录结果
这也是 Xiaomi-CocktailASR-1 与传统“语音分离 + ASR”方案之间较大的架构差异。
多阶段训练
为了让一个模型同时适应单人、多人、目标缺席等不同情况,小米构建了大规模、多类型训练数据。
公开论文给出的数据规模包括:
| 数据类型 | 数据规模 | 训练目的 |
|---|---|---|
| 多说话人数据 | 约40万小时 | 学习目标说话人提取能力 |
| 同说话人参考-目标数据 | 约60万小时 | 保持单人场景识别能力 |
| 负样本数据 | 约1万小时 | 学习目标说话人缺席时的拒识 |
| CoT 数据 | 单独构建 | 学习可解释推理过程 |
多说话人数据用于训练模型从混合声音中寻找指定说话人。
单说话人数据的比例同样较高。这样的训练安排能够降低模型长期面对混合语音后产生的过度抑制问题,让模型在普通单人语音环境中依然保持较好的识别能力。
负样本训练解决的是另一类问题。
假设参考语音来自张三,而待识别录音中只有李四和王五。模型需要判断张三并没有出现,并输出空文本。小米通过大量参考声音与目标音频不匹配的数据进行训练,让这种判断成为模型自身能力的一部分。
根据论文描述,推理时不需要另外设置一个声纹相似度阈值来决定是否拒识。
多说话人识别性能
Xiaomi-CocktailASR-1 在多个公开基准上的表现,是这次开源中最值得关注的部分。
在 LibriMix 2mix 测试集上,模型 WER 为 4.11%;3mix 场景下 WER 为 12.29%。
LibriSpeechMix 2mix 的 WER 为 2.90%,3mix 为 4.91%。
在真实会议语音数据上,模型在:
- • AMI-SDM:21.81% WER
- • AliMeeting-Far:20.63% WER
其中 AliMeeting-Far 此前公开对比结果为 27.50%,Xiaomi-CocktailASR-1 的结果进一步下降到 20.63%。
对于 TS-ASR 来说,WER 并不能单独概括全部能力。目标说话人的定位、干扰说话人的抑制、重叠语音中的内容恢复都会影响最终结果。因此,模型同时提供单说话人和负样本测试,可以更完整地观察其实际能力。
单说话人场景同样可用
Xiaomi-CocktailASR-1 并没有把能力局限在多人混合语音。
公开测试中,模型在 LibriSpeech 上的 WER 为 1.73%,AMI-IHM 为 8.89%,CommonVoice 中文测试集为 4.95%。
这意味着在单人语音环境下,用户仍然可以按照相同的方式提供参考声音和待识别音频。
从产品设计角度看,这种统一输入方式比较简单。应用层无需根据录音中是否存在多人讲话来切换不同 ASR 模型。
负样本拒识
“目标人物没有讲话”是目标说话人识别中的一个重要场景。
例如语音助手已经登记了用户的声音,但当前环境里只有其他人在说话。模型如果强行生成文字,就容易产生错误触发。
Xiaomi-CocktailASR-1 专门加入了负样本训练。
公开测试数据显示:
| 测试集 | 拒识率 |
|---|---|
| LibriSpeech Neg | 79.59% |
| Aishell Neg | 75.35% |
| Chinese in-house Neg | 68.54% |
作为对照,论文测试中的 Qwen3-ASR-1.7B 和 StepAudio2 拒识率为 0%。
同时,模型也存在一定的误拒识。论文公布的 LibriSpeech 正样本 FRR 为 0.36%,CommonVoice 中文为 0.73%。
因此,这项能力可以理解为模型在“正确转写目标人物”和“目标人物不存在时保持沉默”之间进行了联合优化。
CoT模式
Xiaomi-CocktailASR-1 还提供 CoT 模式。
普通模式直接生成最终转录结果。CoT 模式则会在 <think> 中输出中间推理信息,再通过 <answer> 给出最终文本。
公开描述中,中间信息包括:
- • 当前音频中的说话人数;
- • 说话人的性别;
- • 参考声音与候选说话人的声纹相似度;
- • 最终目标说话人判断。
这一机制让模型的判断过程具有更高的可观察性,也方便研究人员分析目标说话人识别失败的原因。
在部分测试中,CoT 模式还能带来小幅 WER 改善。例如 LibriMix 2mix 从标准模式的 4.11% 降至 3.87%。
如何使用
官方 Hugging Face 模型可以直接通过 Transformers 加载。
pip install torch torchaudio transformers soundfile基础调用方式:
from transformers import AutoModel
model = AutoModel.from_pretrained(
"Ease3/Xiaomi-CocktailASR-1",
trust_remote_code=True,
torch_dtype="bfloat16"
).cuda().eval()
text = model("target.wav", "ref_speaker.wav")
print(text)其中第一个音频为待识别语音,第二个音频为目标说话人的参考语音。
官方实现支持 16 kHz 单声道音频,也能够对其他采样率进行自动重采样。
如果需要启用 CoT 模式,可以使用:
text = model("target.wav", "ref_speaker.wav", cot=True)项目同时提供批量推理工具,可以准备包含 utt_id、wav、text、ref_wav、ref_id 五列信息的 TSV 文件,再运行 tools/test_batch_scp.py 完成批量测试。
适合哪些场景
Xiaomi-CocktailASR-1 的使用方式决定了它比较适合“已经知道需要听谁”的语音应用。
多人会议转写
会议录音中可以指定某一位参会者,提取该人员的发言内容,减少其他说话人的干扰。
语音助手
设备可以绑定用户的参考语音,在多人交谈环境中优先识别指定用户的指令。
多人通话分析
客服、销售、访谈等录音中,可以针对某一方进行定向转写,减少人工筛选录音的工作量。
车载语音
驾驶环境中存在乘客交谈、广播和道路噪声时,可以利用参考声音锁定目标用户。
家庭语音设备
电视、音箱等设备处于多人环境时,目标说话人识别可以帮助系统区分控制者和其他人的讲话。
AI小展厅点评
Xiaomi-CocktailASR-1 的技术路线很清晰:用参考语音指定目标人物,再让语言模型完成混合语音中的定向识别。
模型真正值得关注的地方,在于它把目标说话人识别、普通 ASR、负样本拒识放进了同一套模型体系。0.6B 音频编码器、线性 Adapter 与 Qwen3-8B 的组合也比较克制,模型结构容易理解,官方提供的 Transformers 调用方式也比较直接。
从公开数据来看,模型在 LibriMix、LibriSpeechMix、AMI 和 AliMeeting 等测试集上表现突出,尤其是多人重叠语音场景。负样本拒识则进一步解决了目标人物缺席时的误转写问题。
对于开发者来说,Xiaomi-CocktailASR-1 更像是一套面向“定向听取”的 ASR 基础能力。它的输入逻辑非常明确:给出一个人的声音,再从另一段录音里寻找这个人说了什么。
项目地址
GitHub:https://github.com/xiaomi-research/xiaomi-cocktailasr-1
Hugging Face:https://huggingface.co/Ease3/Xiaomi-CocktailASR-1
arXiv:https://arxiv.org/abs/2609.11274
