WenetSpeech-Min:用于方言语音处理的大规模闽南语语音语料库及双重转写

  • paper: https://arxiv.org/abs/2609.36834
  • code: https://github.com/ASLP-lab/WenetSpeech-Min-Repo

WenetSpeech-Min 是一个开源的大规模闽南语语音语料库,来自不同的在线媒体来源。该语料库包含约 10,000 小时的真实语音数据。每一条语音记录都配有闽南语和普通话的转录文本,这使得系统能够同时实现保留方言特征的识别功能,以及输出清晰的普通话文本功能。

  • 在现实世界中,语音数据来自多个来源,涵盖了各种说话风格、应用场景以及声音条件。
  • 双重转录方式:闽南方言保留了当地的口语表达形式;而普通话则提供了与闽南方言相对应的书面表达形式。
  • 公开基准数据:包括人工验证的闽南语语音识别、普通话语音识别以及闽南语语音合成评估数据。

数据构建流程

该流程由两个主要部分组成:音频处理和配对转写生成。第一部分对音频进行分段,并依据语音内容和声学质量对所得片段进行过滤。第二部分结合多个闽南语 ASR 系统获得方言转写,然后生成对应的普通话转写。

音频处理: 从各种在线媒体来源收集闽南语语音,VAD切分,计算信噪比(SNR)和时长,计算WV-MOS来描述片段的声学质量,预测AED (声学事件检测) , 估计片段包含语音的置信度,并移除低于预定义阈值的片段,最后使用 pyannote 估计每个保留片段中的说话人数;

文本标注工具:使用人工转写的闽南语语音构建专用标注模型,使用 1,600 小时带有人工核验闽南语转写的语音,对 Qwen3-ASR、FireRedASR2-AED 和 Fun-ASR-Nano进行微调,用于生成方言转写候选结果。对一个 600 小时的子集进行标注,并人工核验配对的闽南语和普通话转写,使用 LoRA 对 Qwen3-8B进行微调,从而得到专用的闽南语到普通话翻译模型,用于生成普通话转写。

配对转写生成:三个 ASR 标注模型产生互补的候选结果;随后使用ROVER 对这些结果进行对齐和组合。组合结果被保留为方言转写。普通话转写通过两条路径之一获得。对于带有内嵌字幕的媒体,用 OCR提取字幕文本,并直接使用归一化后的字幕文本。对于其他媒体,则由微调后的 Qwen3-8B 翻译模型将 ROVER 组合得到的方言转写转换为书面普通话。随后对候选转写进行归一化,并对每个音频—文本对执行一致性检查。对于分段不可靠或内容置信度较低的样本,会将其删除或退回修正。

Dataset

WenetSpeech-Min 涵盖了大约 10,000 小时的语音数据。平均语音持续时间为 7.24 秒;中位数则在 5 到 7.5 秒之间,语料库以短话语为主,同时包含少量更长的连续语音片段。其中,约 8,500 小时的语音数据来源于不同来源:戏剧类内容占 54.7%,有声书占 19.8%,而娱乐类内容占 13.9%。

该语料库特意包含了相对清晰的语音记录以及具有挑战性的档案式电视素材。这样可以保留自然的多语言交互场景、富有情感的表达方式,以及多种多样的真实录音环境。

SNR 分布分布主要集中在 10 至 40 dB 之间,占总时长的 73.8%。按时长加权的平均 SNR 为 21.3 dB,中位数落在 19–20 dB 区间,表明所发布的语料库总体具有中等到较高的声学质量,同时保留了相当范围的录音条件

基准

ASR 基准:WS-Min-Eval-ASR,每个话语都配有两份人工核验的参考文本:一份闽南语转写和一份普通话转写。这种配对设计使得两种转写目标能够使用相同的音频片段和标注协议进行评估。所有系统都遵循统一的文本归一化和评分流程。对于闽南语转写,我们针对闽南语参考文本报告方言字符错误率(D-CER)。对于普通话转写,我们针对普通话参考文本报告普通话双语评估替补(M-BLEU)和普通话字符错误率(M-CER)。当有效的普通话表达在措辞上可能不同时,M-BLEU 作为 n-gram 重叠的补充度量;M-CER 则衡量字符级准确率。

TTS 基准:由 LLM 生成、并经过自然度和方言真实性优化的专家核验闽南语文本组成。Easy 子集包含 500 条日常话语,Hard 子集包含 250 条具有挑战性的文本:其中 46 条为 161–270 字的长文本,189 条为包含五至七次重复的高重复文本,15 条为绕口令。我们根据声学质量和方言真实性,从内部闽南语语料库中选取 9 名参考说话人。对于客观评估,使用 Qwen3-ASR-WSM-Min 模型生成的转写,通过 CER 衡量可懂度;说话人相似度(SIM)则计算合成语音与参考语音的 WavLM [2] 嵌入之间的余弦相似度。对于主观评估,23 名以闽南语为母语的听众对 40 个随机选取的测试案例进行评估,指标包括可懂度(I-MOS)、说话人相似度(S-MOS)和口音真实性(A-MOS);其中每个子集抽取 20 个案例。

ASR Leaderboard

 D-CER 和 M-CER 来说,数值越低越好;而对于 M-BLEU 则相反,数值越高越好。†符号表示使用的是商业 API。

闽南语:

ModelD-CER (%) ↓
Hy-ASR-3.0-Preview†32.78
CN-MultiDialect-ASR18.59
Qwen3-ASR34.61
Qwen3-ASR-WSM-Min17.59
Qwen3-ASR-WSM-Min + internal data15.21
FireRedASR2-AED43.39
FireRedASR2-AED-WSM18.95

普通话转录:

Each entry reports M-BLEU ↑ / M-CER ↓; GigaSpeech denotes GigaSpeechBench.

ModelWS-MinGigaSpeechMinSpeechAvg.
FunASR-Realtime†39.09/45.4153.37/32.6228.22/63.2340.23/47.09
SeedASR2.0†38.91/47.5855.32/32.5068.53/26.2154.25/35.43
Qwen3-ASR-MinSpeech20.34/60.5712.39/71.2667.94/23.9333.56/51.92
Qwen3-ASR-WSM-Mandarin42.93/42.5651.20/34.0159.82/29.4251.32/35.33
Qwen3-ASR-WSM-Mandarin
+ internal data
49.39/36.8147.65/36.6665.69/26.2154.24/33.05
FireRedASR2-AED18.05/64.4036.91/49.3513.60/85.0222.85/66.26
FireRedASR2-AED-WSM46.06/39.5357.73/28.6157.73/31.8553.73/33.33

TTS Leaderboard

Lower CER is better; higher is better for all other metrics. † indicates a commercial API. ‡ denotes a single-fixed-speaker API, for which SIM and S-MOS are not evaluated.

WS-Min-Eval-TTS Easy

ModelCER (%) ↓SIM ↑I-MOS ↑S-MOS ↑A-MOS ↑
QwenAudio-3.0-TTS†19.900.6723.883.853.62
Qwen3TTS-Flash†‡24.44–3.93–3.93
FireRedTTS333.760.7473.303.323.13
VoxCPM228.160.7073.453.543.38
MERaLiON-TTS21.250.6223.833.733.65
CosyVoice363.690.6542.132.131.49
CosyVoice3-WSM20.260.6783.853.753.65

WS-Min-Eval-TTS Hard

ModelCER (%) ↓SIM ↑I-MOS ↑S-MOS ↑A-MOS ↑
QwenAudio-3.0-TTS†35.090.6853.753.733.70
Qwen3TTS-Flash†‡38.02–3.75–3.73
FireRedTTS355.330.7313.153.393.04
VoxCPM240.500.6813.173.483.36
MERaLiON-TTS37.280.6223.583.733.63
CosyVoice360.350.6102.002.401.43
CosyVoice3-WSM35.980.6693.653.853.70

Fish Audio Drama 3 技术报告详解:面向导演式语音生成的 35B -A3B MoE 架构、训练数据与工程优化

一、论文要点与模型定位

Drama 3 是一个开放权重语音生成模型,总参数量约 35B,但采用稀疏混合专家结构,每个 Token 实际激活约 3B 参数。模型主干由 Qwen3.5-35B-A3B 初始化,采用 40 层混合架构:每四层包含三层 Gated DeltaNet 线性注意力和一层 Gated Full Attention。语音部分沿用 Fish Audio S2 的离散音频 Tokenizer,每个音频帧由 10 个 Codebook 表示;模型主干预测语义 Codebook,新的 Codebook-MTP Decoder 在同一时间位置并行预测其余 9 个声学 Codebook。

论文把创新概括为三点:

  • Hybrid Backbone + Codebook-MTP Decoder:用线性注意力处理长上下文,同时用少量 Full Attention 保留远距离检索能力,并将 S2 的逐 Codebook Fast AR 替换成一次运行 13 层的多 Token 预测解码器。
  • 一个模型统一多任务:多参考音色克隆、自然语言控制、多角色场景、多轮导演式修改、Speech Infilling、长文本合成和 Streaming Text Input 使用同一种交错文本—音频 Token 流表示。
  • 单一人类偏好奖励:RL 不再把 ASR WER、音质模型和 Speaker Similarity 作为规则奖励,而是训练一个小型 Speech Language Model 作为人类偏好 Reward Model。

二、总体架构

Drama 3 没有额外的音频编码器。参考音频、提示音频和生成音频都先通过离散 Audio Tokenizer 转换成 Codebook 序列,之后与文本 Token 交错输入语言模型。每一个音频帧只占用一个 Backbone 序列位置,因此一秒语音约占 21.5 个位置,与该帧包含多少个 Codebook 无关。

2.1 音频 Tokenizer

  • 基于 Descript Audio Codec,输入采样率为 44.1 kHz。
  • 约每秒 21.5 个音频帧,每帧 10 个 Codebook。
  • Codebook 0 是语义码,Codebook 1–9 是逐级增加细节的残差声学码。
  • 编码和解码完全因果,可以流式运行。
  • 参考音频以离散 Token 进入上下文,因此参考音频的细粒度声学信息可以被后续 Decoder 直接访问。

2.2 Hybrid Backbone 与 MoE

主干初始化自 Qwen3.5-35B-A3B,仅使用其语言模型部分。40 层结构由三层 Gated DeltaNet 加一层 Gated Full Attention 组成周期。DeltaNet 使用近似常数大小的状态保存历史,只有每四层中的 Full Attention 保留随上下文增长的 KV Cache;Full Attention 用来精确检索长上下文中的参考音色、早先台词和场景信息。

每一层的前馈网络都是 MoE:共有 256 个 Routed Experts,每个 Token 路由到 8 个专家,并额外经过一个 Shared Expert。总参数约 35B,但每个 Token 约激活 3B 参数。MoE Router 在预训练和 SFT 阶段都加入负载均衡损失,避免大多数 Token 集中到少数专家。

2.3 Partial Codebook Fusion

S2 将 10 个 Codebook 全部反馈给 Backbone。Drama 3 只把语义码和第一层声学码反馈给 Backbone,Codebook 2–9 绕过 Backbone,作为 Decoder 的侧输入。这样既保留参考音频和已生成语音的粗粒度声学线索,也减少模型暴露在自身采样细节上的误差累积。

设第 t 帧的语义码和第一层声学码分别为 \(q_t^{(0)}\) 和 \(q_t^{(1)}\),则 Backbone 的音频输入为:

\( \mathbf{x}_{t}=\frac{1}{\sqrt{2}}\left(\mathbf{E}^{\mathrm{LM}}\left[s\left(q_t^{(0)}\right)\right]+\mathbf{E}^{(1)}\left[q_t^{(1)}\right]\right) \)

其中 \(s(\cdot)\) 把语义码映射到新增的 4096 个语义 Token,\(\mathbf{E}^{\mathrm{LM}}\) 是语言模型词嵌入,\(\mathbf{E}^{(1)}\) 是第一声学 Codebook 的嵌入表。文本位置只使用语言模型嵌入;Codebook 2–9 不进入 Backbone。

2.4 Codebook-MTP Decoder

在第 t 个位置,Backbone 预测下一帧的语义码 \(q_{t+1}^{(0)}\);Decoder 在同一位置预测下一帧的 9 个声学码 \(q_{t+1}^{(1)},\ldots,q_{t+1}^{(9)}\)。Decoder 共有 13 层:前 4 层是共享层,后 9 层分别对应声学 Codebook 1–9。每一层沿完整时间序列做因果注意力,所以每一个声学 Codebook 都能看到参考音频和此前所有帧的声学细节。

每层先把注入的 Codebook 嵌入与上一层隐藏状态合并:

\(\mathbf{u}^{(\ell)}_t=\mathbf{W}^{(\ell)}\left[\operatorname{RMSNorm}\left(\mathbf{e}^{(\ell)}_t\right);\operatorname{RMSNorm}\left(\mathbf{h}^{(\ell-1)}_t\right)\right]\)

随后经过因果 Transformer Block:

\(\mathbf{h}^{(\ell)}_t=\operatorname{RMSNorm}\left(\operatorname{Block}^{(\ell)}\left(\mathbf{u}^{(\ell)}_{1:t}\right)\right)\)

第 k 个 Codebook 的输出分布可以写为:

\(q_{t+1}^{(k)}\sim\operatorname{softmax}\left(\mathbf{W}_{\mathrm{out}}^{(k)}\mathbf{h}^{(4+k)}_t\right),\qquad k=1,\ldots,9\)

相较于 S2 的 4 层 Fast AR 重复运行 10 次,Drama 3 的 13 层 Decoder 每帧只运行一次,因而大幅缩短顺序路径。

三、训练数据与三阶段预训练

数据由完成转录的语音和文本文档组成;所有语音在进入训练前先经过质量控制;文本文档用于保持 Backbone 的语言建模能力;总体训练规模为数千亿 Token;语言覆盖沿用 S2,约 80 种语言和方言。

3.1 Stage 1:基础文本到语音映射

  • 最大序列长度 8K Token。
  • 训练样本包括纯文本文档和多轮 TTS 对话。
  • 目标是学习文本到音频 Token 的映射、普通 TTS 和零样本音色克隆。
  • System 轮保存任务指令和参考音频,User 轮保存待合成文本,Assistant 轮保存目标音频 Token。
  • 损失只计算在 Assistant 的音频输出、必要的分隔符和结束 Token 上。

3.2 Stage 2:降低梯度噪声

Stage 2 继续使用 Stage 1 的序列格式和任务分布,主要变化是 Batch Size 翻倍,从而降低梯度噪声;学习率衰减留到 Stage 3。它并非独立的新任务阶段,而是让基础语音建模能力在更稳定的优化条件下继续收敛。

3.3 Stage 3:长音频、流式和编辑

  • 最大序列长度提升到 16K Token。
  • 加入整段录音合成:参考音频来自同一录音的后部,目标是前部,避免参考片段和监督目标重叠。
  • 加入逐行合成,用 \(<|audio_separator|>\) 对齐输入文本行和输出音频段。
  • 加入 Streaming Interleave:每个 User 轮包含当前文本块和一个前瞻文本块,模型边生成当前块边知道后续内容。
  • 加入 Speech Infilling:保留原音频编辑窗口前后的 Token,只生成窗口内部的新内容。
  • 样本使用 Document Masking 打包成每行 128K Token,优化器为 Muon。

3.4 预训练目标

令 \(\mathcal{T}\) 为需要监督的文本位置(包括结束 Token 和逐行分隔符),\(\mathcal{S}\) 为语义 Codebook 监督位置,则:

\(\mathcal{L}_{\mathrm{text}}=-\frac{1}{|\mathcal{T}|}\sum_{t\in\mathcal{T}}\log p_{\theta}(x_t\mid x_{<t})\) \(\mathcal{L}_{\mathrm{sem}}=-\frac{1}{|\mathcal{S}|}\sum_{t\in\mathcal{S}}\log p_{\theta}\left(q_t^{(0)}\mid x_{<t}\right)\) \(\mathcal{L}_{\mathrm{cb}}=\frac{1}{9}\sum_{k=1}^{9}\left(-\frac{1}{|\mathcal{S}|}\sum_{t\in\mathcal{S}}\log p_{\phi}\left(q_t^{(k)}\mid\mathbf{h}_{<t},\mathbf{q}_{<t},q_t^{(<k)}\right)\right)\)

总损失为:

\(\mathcal{L}=\mathcal{L}_{\mathrm{text}}+0.5\mathcal{L}_{\mathrm{sem}}+0.5\mathcal{L}_{\mathrm{cb}}\)

文本、语义码和声学码各自按自己的监督桶取平均,避免一个 Batch 中文本和语音比例变化导致损失权重漂移;声学 Codebook 损失会反向传播到 Backbone。预训练和 SFT 同时加入 MoE Router 负载均衡损失。

四、Instruction SFT 阶段:如何让模型学会“听懂导演指令”

SFT 从 Stage 3 Checkpoint 开始,最大序列长度为 32K Token,使用 Indexed Reference Layout。SFT 的目标不是重新学习基础发音,而是把已经具备 TTS 和克隆能力的模型转化为能够遵循复杂自然语言指令、处理对话和场景的生成器。

4.1 SFT 数据类型

  • 普通音色克隆:一段或多段参考音频 + 待合成文本。
  • Point Tags:在文本位置插入 [laughs]、[pause]、[coughs] 等局部事件。
  • Scoped Tags:用 <whisper>...</whisper> 只控制被包围的词或短语。
  • Style Prefix:控制整句的情绪、语速、表达方式。
  • Director’s Note:用自然语言描述意图、节奏、重音和表演方式。
  • 多说话人对话:每个角色绑定一个或多个参考音频,通过 speaker Token 切换角色。
  • 多角色场景:一次提供所有台词,并使用显式分隔符,使当前句能够利用后续台词和场景上下文。
  • 多轮修改:保留旧参考和上一版生成结果,下一轮用“更柔和、更温暖”“比上一版更快”等相对指令生成新版本。
  • 长文本、Speech Infilling 和 Text-only Chat:继续混入训练,防止 SFT 破坏 Stage 3 已学能力。

4.2 SFT 样本如何组织

训练序列采用 ChatML 风格。System 轮包含“把给定文本转换成语音”的任务说明、参考文本和参考音频;User 轮包含目标文本、说话人标记、控制标签和语言/时长提示;Assistant 轮以 \(<|voice|>\) 开始,输出目标音频的 10 个 Codebook。对于多轮修改,旧的 Assistant 音频保留在上下文中,下一轮 User 给出相对上一版的修改意见。

损失只作用于模型自己的 Assistant 输出:语音帧的 10 个 Codebook、需要学习的音频分隔符和 \(<|im_end|>\)。参考音频只提供上下文,不直接产生生成损失。Speech Infilling 额外对编辑窗口两侧的接缝加大监督,使新旧音频能够自然拼接。

五、RL:从可控生成到符合人类偏好的表演

RL 从 SFT Checkpoint 开始。S2 使用 ASR 转录错误、语音质量和 Speaker Similarity 三类规则奖励;Drama 3 去掉它们,因为笑声和长停顿会改变 ASR 结果,耳语和喊叫会降低与中性参考的相似度,而整句质量模型无法评价某个词是否按指令变得更柔和或更有情绪。

5.1 人类偏好 Reward Model

Reward Model 是一个较小的 Speech Language Model,使用相同的 Audio Tokenizer 和序列格式预训练到 Stage 2,并在每条 Take 的结束 Token 上增加 Scalar Head。它直接读取完整 Prompt 和生成音频 Token,不需要额外运行 ASR、Tokenizer Decoder 或 Speaker Model,因此参考音色、文本内容和表演风格都能在同一奖励路径中被判断。

对两条 Take 的人类偏好使用 Bradley–Terry 损失:

\(\mathcal{L}_{\mathrm{RM}}=-\left[y\log\sigma(s_a-s_b)+(1-y)\log\sigma(s_b-s_a)\right]+10^{-3}(s_a^2+s_b^2)\)

5.2 GRPO 配置

  • 每个 Prompt 采样 \(G=8\) 条 Take,温度为 1,不使用 Top-p 或 Top-k 截断。
  • 每条 Take 最长约为期望时长的 2.5 倍,且不超过 4096 帧,约 190 秒。
  • 组内 Reward 标准差低于 0.05 的组丢弃。
  • 使用 Group Relative Policy Optimization,采用均值中心化优势,不使用 KL Penalty 和 Reference Model。
  • 每一步使用 1536 个 Prompt × 8 条 Take,采用大 Batch、少步骤、恒定 Muon 学习率和无 Weight Decay。
  • RL 时 Codebook-MTP Decoder 保持冻结,只更新 Backbone 的语义 Token 策略。
  • Rollout 使用块缩放 FP8 专家权重;训练器使用 BF16,并通过路由回放减少训练和推理路由不一致。

奖励标准化与组内相对比较可写为:

\(z_i=\operatorname{clip}\left(\frac{s_i-\mu_0}{\sigma_0},-3,3\right),\qquad R_i=\frac{1}{n-1}\sum_{j\ne i}\sigma(z_i-z_j)\)

论文强调,大 Batch、少更新步可以让策略朝向更广泛的人类偏好移动,并减少小 Batch、多步训练出现的 Reward Over-optimization。

六、推理引擎与吞吐优化

线上请求分为 Prefill 和 Decode 两阶段:Prefill 一次读取文本与参考音频,Decode 每帧执行一步。单 GPU 同时服务多个流,按轮次执行新请求 Prefill 或所有运行中流的一步 Decode。

指标Drama 3Fish Audio S2
Backbone 后的顺序层数1340
每帧读取权重约 6.0 GB约 15.6 GB
其中 Backbone(不含 Routed Experts)2.9 GB7.3 GB
Codebook-MTP / Fast AR2.1 GB8.3 GB
上下文 KV Cache 增长的层数2336
单 H200 单流速度271 frames/s177 frames/s
  • 减少顺序路径:Codebook-MTP 13 层每帧运行一次;S2 的 Fast AR 需要 10 次、共 40 层顺序 Pass。
  • FP8 Routed Experts:专家使用块缩放 FP8,每个专家参数约 1 Byte。Drama 3 每帧读取约 6.0 GB 权重,不到 S2 的五分之二。
  • 删除 CUDA Graph 之外的 Kernel:辅助 Decode Kernel 从 1429 个降到 1278 个,B300、并发 32 时提升 1.7%;融合 Gated DeltaNet Decode 和采样器计数器后减少 100 个 Kernel,单流提升 4.2%。
  • Prefill Graph:Gated DeltaNet Prefill 每层 Kernel 从 23 个降为 13 个;首帧采样的 Host 时间从 30.9 ms 降至 14.7 ms,早期开发模型在 H200 并发 32 时提升 15.3%。
  • 按线上 Shape 优化 Kernel:从真实服务日志抓取矩阵形状、Batch 和并发分布,再做 Nsight Profiling、算子级验证、引擎内 Token/WER 验证和同机 A/B 测试。FP8 MoE Kernel 在 \(M=256\) 时将 MoE 层耗时降低 19.2%。
  • Prefill–Decode 解耦:新请求的 Prefill 不再阻塞正在播放的 Decode 流,降低高并发下的流式卡顿。

七、实验设置与结果

实验统一使用论文附录中的 Prompt 格式,采样温度 0.7、Top-p 0.7、Top-k 30。静音、语音过短、长度失控、长段噪声或长段静音的输出会被重新生成并重新计分。中文使用 Paraformer-zh 转录,其余语言使用 Whisper-large-v3;Speaker Similarity 使用 WavLM-large + ECAPA-TDNN 说话人嵌入余弦相似度。

7.1 Preference Reward 对表达性的影响

在 Expresso 中,将同一说话人同一句话的中性读法与风格读法配对。耳语相对中性读法的 SIM 下降 0.310,笑声使 WER 上升 0.79 个百分点;因此相似度奖励在耳语样本中 99.7% 偏好中性读法,在笑声样本中 93.9% 偏好中性读法。Drama 3 的 Preference RM 在提示中明确写出风格后,偏好耳语的比例为 62.2%,偏好笑声的比例为 64.4%;不写方向时分别只有 10.6% 和 27.1%。

在 Seed-TTS-Eval 上,RL 后 Drama 3 的首轮中文 CER 从 SFT 的 1.66 降到 1.00,英文 WER 从 3.49 降到 2.20;信号检查失败率从中文 2.82% 降到 1.24%,英文 3.40% 降到 1.84%。重生成异常样本后,中文 CER 为 0.83,英文 WER 为 1.54。

7.2 多参考零样本音色克隆

论文在 LibriSpeech-PC test-clean 上扩展多参考测试集:1127 句、39 位说话人,每个目标说话人额外提供两段不包含目标句的参考音频。Drama 3 使用一段参考时 WER 1.85%、SIM 0.605、UTMOS 4.31;使用三段参考时 WER 仍为 1.85%,SIM 提升到 0.633,UTMOS 仍为 4.31。单参考时,UTMOS 4.31 高于 OmniVoice 的 4.28 和 CosyVoice 3 的 4.28;Qwen3-TTS 为 4.41,但其 WER 和 SIM 分别为 1.60 和 0.704。

7.3 MiniMax 多语言克隆

MiniMax Multilingual Testset 覆盖 24 种语言。Drama 3 相比 OmniVoice 在 15 种语言上错误率更低,相比 FireRedTTS3-Base 在 17 种语言上更低;在阿拉伯语、中文、荷兰语、英语、芬兰语、法语、德语、波兰语、葡萄牙语、土耳其语和越南语 11 种语言上同时低于 OmniVoice、FireRedTTS3-Base 和 Fish Audio S2。与实际通过 API 运行的商业系统比较时,Drama 3 低于 Inworld TTS-2 的语言数为 18,低于 Soniox TTS RT v2 的语言数为 21/23,低于 ElevenLabs v4 的语言包括中文、荷兰语、英语、德语、韩语、俄语、西班牙语、泰语和土耳其语。

语言指标Drama 3OmniVoiceFireRedTTS3Fish Audio S2
中文CER0.631.010.910.73
荷兰语WER0.591.361.150.99
英语WER1.131.562.121.62
芬兰语WER3.093.753.103.33
法语WER2.683.352.642.86
德语WER1.081.501.931.46
土耳其语WER1.622.932.472.25

7.4 Streaming Synthesis

在 1088 条 Seed-TTS-Eval 英文测试句上,流式输出 WER 为 1.86,非流式输出 WER 为 1.83;两者 SIM 都为 0.640。结果说明把音频边生成边发送不会带来明显质量损失。

7.5 Speech Infilling 编辑

在 Ming-Freeform-Audio-Edit 中,先用 Qwen3-ForcedAligner-0.6B 将源音频和转录对齐,再把从第一个不同词到最后一个不同词的区域作为编辑窗口。删除操作还会包含相邻未改变词,以保证窗口有可学习的边界。模型保留窗口前后源音频 Token,只生成窗口内部的目标文本,然后整体解码,避免把源波形直接贴回造成拼接痕迹。

系统英文插入 WER / SIM / MAE英文删除英文替换
Drama 33.03 / 0.905 / 0.2085.79 / 0.838 / 0.1742.08 / 0.866 / 0.181
VoiceCraft-X5.74 / 0.85 / 0.1669.71 / 0.80 / 0.1727.29 / 0.81 / 0.155
LEMAS-Edit6.04 / 0.81 / 0.1589.29 / 0.80 / 0.1676.09 / 0.80 / 0.167
CosyEdit21.90 / 0.93 / 0.1075.52 / 0.90 / 0.1311.43 / 0.89 / 0.137

中文结果中,Drama 3 在插入和替换上的 SIM 分别为 0.909 和 0.898,高于专用编辑模型 CosyEdit2 的 0.89;删除 WER 为 7.82,低于 CosyEdit2 的 8.23。与 Cartesia Sonic-3 的 Infill API 比较,Drama 3 在 Ming-Freeform 基础集/完整集上的英文 WER 为 3.49/3.43,中文为 3.69/2.35;Cartesia 对应为英文 4.58/4.68、中文 8.64/6.53。

7.6 多轮导演式修改

Step-Audio-Edit 要求模型先克隆声音,再通过最多三轮指令逐步靠近目标情绪或风格。Drama 3 在每轮中保留原始参考和上一版 Take,并以 [happier versus previous] 一类相对指令重生成。情绪准确率从第 0 轮的 55.5% 提升到第 3 轮的 58.2%,风格准确率从 76.5% 提升到 81.8%。使用 [coughs] 等 Point Tag 进行局部插入并 Infilling 后,拟声事件评分从 1.32 提升到 2.32。

指标第 0 轮第 1 轮第 2 轮第 3 轮
Drama 3 情绪准确率55.557.257.558.2
Drama 3 风格准确率76.579.480.581.8
Drama 3 拟声事件评分1.322.32––
Step-Audio-EditX 情绪准确率53.666.868.769.3
Step-Audio-EditX 风格准确率45.662.764.263.8

八、工程实现启示

  • 长上下文语音模型可以采用“多数线性注意力 + 少量 Full Attention”,在降低 KV Cache 成本的同时保留参考音频和早期台词的精确检索。
  • 多 Codebook 音频生成不必让主干逐一预测所有声学码;将粗语义信息反馈给 Backbone,把细节留给时间因果 MTP Decoder,可以同时降低曝光偏差和推理顺序长度。
  • 如果训练目标是表现力,WER、SIM 和整句音质分数不宜直接作为唯一奖励。更合理的做法是让 Reward Model 读取“指令 + 参考音频 + 生成音频 Token”的完整上下文。
  • SFT 数据应把多轮对话、参考音频索引、Point/Scoped Tag、分隔符和编辑窗口作为一等数据结构,而不是只把音频和文本做成单句配对。
  • 线上性能主要受权重搬运、Kernel Launch 和 Prefill 阻塞影响。需要从真实服务 Shape 出发做算子优化,并将 Prefill 与 Decode 分离。

九、结论

Drama 3 的关键不只是把模型扩大到 35B,而是把模型、数据格式、SFT 任务和 RL 奖励统一到“导演式表演”这一目标上。Hybrid Backbone 解决长上下文,Partial Codebook Fusion 控制反馈复杂度,Codebook-MTP Decoder 直接利用参考音频的细粒度声学信息;三阶段预训练建立基础语音能力,32K Token 的 Instruction SFT 教会模型遵循指令和维护多轮上下文,单一人类偏好 Reward Model 则让笑声、耳语、停顿和情绪表达不再被传统规则奖励压制。

从实验结果看,Drama 3 在多参考克隆、多语言识别准确率、流式生成、语音编辑和多轮修改上都表现出统一模型的优势;从工程结果看,它在单 H200 上达到 271 frames/s,高于参数量小得多的 Fish Audio S2。论文没有公开完整数据来源和样本规模,这一限制需要在复现或二次训练时单独补齐。

Qwen-Audio-Jev 技术报告详解:用一个决策头统一音频选择、二元判断与质量评分

论文的核心问题是:很多音频理解任务最终只需要一个有限答案,例如从几个候选项中选一个、判断一个命题是否成立,或者给语音质量打分。如果仍然让大型音频语言模型逐字生成答案,就会产生额外的解码延迟、格式解析和结果校验成本。

Qwen-Audio-Jev 保留 Qwen-Audio-3.1-ASR-Flash-Next 的音频编码器、音频到语言适配器和 MoE 语言解码器,在“答案开始之前”的隐藏状态上增加一个专用决策头。模型通过自然语言问题和显式答案规范理解任务,然后直接输出概率分布或数值分数,不再自回归生成答案文本。论文在 18 个标注配置上评测:MMAU-mini 准确率 78.70%,MMSU 准确率 84.06%,VoxCeleb1-O 说话人验证 EER 为 6.50%,NISQA overall 质量评分归一化 MAE 为 0.1062,Pearson 为 0.8210,Spearman 为 0.8074;在论文给定的推理设置下,速度约为原始 Qwen-Audio-3.1-ASR-Flash-Next 的 20 倍。

一、论文要解决的实际问题

传统大模型适合生成开放式文本,但在音频筛选、批量质检、说话人验证和数据标注中,输出空间往往是有界的。比如“这段音频属于哪种声学场景”“两个录音是否来自同一说话人”“这段语音的噪声等级是多少”,都可以表示为有限类别、真假概率或有序评分。自回归文本生成会带来三类问题:

  • 需要逐 Token 解码,短答案也要承担语言模型生成的时间开销。
  • 生成结果还要经过字符串解析、候选映射和格式校验,工程链路更长。
  • 文本答案的概率不一定等于任务本身的类别概率,难以直接做校准和阈值控制。

Jev 的思路是将问题、答案空间和输出类型显式写入接口。模型仍然可以使用自然语言描述音频任务,但最后由固定维度的决策读出完成选择、判断或打分。

二、模型总体设计

2.1 Qwen-Audio-3.1-ASR-Flash-Next 基座

基座模型包含三个主要表示模块:

  • Audio Encoder:从波形中提取声学、说话人、环境声音和韵律等表示。
  • Audio-to-Language Adaptor:对相邻编码帧做时间下采样,并将结果投影到语言解码器的隐藏维度。
  • MoE Language Decoder:把音频表示与文本指令、问题和上下文融合,形成问题条件的隐藏状态。

论文实验使用的解码器为 40 层 MoE,隐藏维度为 2048,共 256 个 Routed Experts,每个 Token 选择 8 个专家。原始模型通过自回归概率生成文字答案:

\(p_{\theta}(y\mid x,u)=\prod_{\ell=1}^{L}p_{\theta}\left(y_{\ell}\mid y_{<\ell},\mathbf{a},u\right)\)

其中 \(x\) 是输入音频,\(\mathbf{a}\) 是音频编码和适配后的表示,\(u\) 是文本指令和上下文。Qwen-Audio-Jev 保留这个音频条件表示通路,但把最终答案从“生成文本”改成“读取决策状态”。

2.2 Jev 决策头插入位置

设 \(q\) 为自然语言问题,设 \(c\) 为答案规范。答案规范规定使用哪一种决策原语、合法答案空间是什么,以及候选项或评分等级的含义。问题和规范被序列化为文本前缀,与音频表示一起送入共享解码器:

\(\mathbf{H}=D_{\theta}\left(\operatorname{Fuse}\left(\mathbf{a},\operatorname{Embed}\left(\operatorname{Serialize}(q,c)\right)\right)\right)\)

决策状态取问题前缀最后一个 Token 的隐藏向量:

\(\mathbf{h}_{\star}=\mathbf{H}_{t_{\star}}\)

\(t_{\star}\) 位于目标答案 Token 之前,因此因果注意力无法读取训练样本中的正确答案,避免标签泄漏。决策头包含三个独立的仿射投影:

\(\mathbf{z}^{\mathrm{Choice}}=\mathbf{W}_{C}\mathbf{h}_{\star}+\mathbf{b}_{C}\) \(z^{\mathrm{Noul}}=\mathbf{W}_{N}\mathbf{h}_{\star}+b_{N}\) \(\mathbf{z}^{\mathrm{Score}}=\mathbf{W}_{S}\mathbf{h}_{\star}+\mathbf{b}_{S}\)

当前实现中,决策头维度分别为 \(\mathbf{W}_{C}\in\mathbb{R}^{64\times d}\)、\(\mathbf{W}_{N}\in\mathbb{R}^{1\times d}\)、\(\mathbf{W}_{S}\in\mathbb{R}^{10\times d}\),其中 \(d=2048\)。Choice 和 Score 只对当前问题实际提供的候选或评分等级做归一化,未使用的位置不参与 Softmax。

2.3 三种类型化输出

统一接口可以写成:

\(f_{\theta}(x,q,c)\longrightarrow r_{\tau},\qquad \tau\in\{\mathrm{Choice},\mathrm{Noul},\mathrm{Score}\}\)

Choice:从候选项中选择

Choice 适用于声学场景、乐器、人类非语音声音、性别、情绪和音频问答。当前实现支持 2 到 64 个候选项。候选项的语义由问题中的描述决定,而不是绑定到一个固定的全局类别 ID:

\(p_{ik}=\frac{\exp(z^{\mathrm{Choice}}_{ik})}{\sum_{j\in\mathcal{C}_{i}}\exp(z^{\mathrm{Choice}}_{ij})},\qquad \hat{k}=\arg\max_{k\in\mathcal{C}_{i}}p_{ik}\)

训练时会随机打乱 Choice 候选项,同时同步打乱候选描述和标签概率,防止模型记住“第一个位置通常是正确答案”。

Noul:二元命题的真实性概率

Noul 适用于“两个录音是不是同一个说话人”“这段音频是否包含讽刺”“音频是否为深度伪造”等二元问题。输出是命题为真的概率:

\(p_{i}=\sigma(z^{\mathrm{Noul}}_{i})=\frac{1}{1+\exp\left(-z^{\mathrm{Noul}}_{i}\right)}\)

Score:有序等级上的分布与期望分数

Score 适用于 NISQA、VoiceMOS 和 BVCC 等主观质量评估。评分等级从 \(0\) 到 \(K_i-1\),模型不只输出一个回归数,还输出完整的等级概率分布。预测期望和目标期望分别为:

\(\hat{s}_{i}=\sum_{k=0}^{K_i-1}k p_{ik},\qquad s_i^{\star}=\sum_{k=0}^{K_i-1}k t_{ik}\)

这种设计同时保留分类分布、评分顺序和原始 MOS 尺度,适合需要概率校准的质量控制系统。

2.4 推理过程

推理时输入音频、自然语言问题和答案规范,模型只执行一次共享解码器前向计算,再读取被请求的输出头。Choice 和 Score 对有效候选或等级做 Softmax;Noul 对单个 Logit 做 Sigmoid。无需生成“答案是……”“评分为……”之类的文本,也不需要后处理字符串。

三、训练数据:

3.1 任务数据

决策类型论文涉及的数据集/配置监督信号典型任务
ChoiceCochlScene、NSynth、NonSpeech7k、DiDiSpeech、MELD、MMAU、MMSU、MMAR类别标签或多选答案声学场景、乐器、咳嗽/笑声等非语音声音、性别、情绪、音频问答
NoulVoxCeleb1-O、Clotho-AQA、PodSarc、In-the-Wild二元真假标签说话人验证、二元音频问答、讽刺检测、音频深度伪造检测
ScoreNISQA overall/noise/coloration/discontinuity/loudness、VoiceMOS有序等级或 MOS 评分噪声、染色、断续、响度、整体语音质量

论文将每条训练样本统一成“音频—问题—答案规范—目标”的格式。一个音频不需要同时拥有 Choice、Noul 和 Score 三类标注;样本只对已有且可靠的目标计算损失,缺失标注不产生 Loss。这是论文处理异构数据的关键。

四、SFT:异构音频任务的联合监督

SFT 阶段联合优化 Audio Encoder、Audio-to-Language Adaptor、语言模型 Backbone 和 Jev 决策头。每条样本只激活其请求的决策原语,另外两个读出头不接受该样本的任务损失。论文没有把训练拆成多个串行阶段,而是把三类任务放入同一个监督微调流中;因此这里的“训练阶段”主要是 SFT 和后续 RLCD-inspired 强化学习两个阶段。

4.1 Choice 损失

对有效候选集合 \(\mathcal{C}_i\),候选概率为:

\(p_{ik}=\frac{\exp(z_{ik})}{\sum_{j\in\mathcal{C}_i}\exp(z_{ij})},\qquad k\in\mathcal{C}_i\)

交叉熵为:

\(\ell_i^{\mathrm{choice}}=-\sum_{k\in\mathcal{C}_i}t_{ik}\log p_{ik}\)

硬标签是 One-hot 分布;当数据提供人工标注分布时,使用 Soft Target。Choice 的候选随机排列是论文中特别强调的抗位置偏置增强。

4.2 Noul 损失

二元标签 \(y_i\in\{0,1\}\) 经过 Sigmoid 得到真值概率,使用 Binary Cross Entropy:

\(p_i=\sigma(z_i),\qquad \ell_i^{\mathrm{noul}}=-y_i\log p_i-(1-y_i)\log(1-p_i)\)

论文同时允许 \(y_i\in[0,1]\) 的软二元标注。这样可以用于多人标注后的概率标签,而不是强行压缩为单一真假值。

4.3 Score 损失

Score 同时使用等级分布交叉熵、累计分布误差和期望分数的 SmoothL1。预测和目标的累计概率分别为:

\(P_{im}=\sum_{k=0}^{m}p_{ik},\qquad T_{im}=\sum_{k=0}^{m}t_{ik}\)

三项损失为:

\(C_i=-\sum_{k=0}^{K_i-1}t_{ik}\log p_{ik}\) \(D_i=\frac{1}{K_i-1}\sum_{m=0}^{K_i-2}(P_{im}-T_{im})^2\) \(H(e)=\begin{cases}\frac{1}{2}e^2,&|e|<1,\\ |e|-\frac{1}{2},&|e|\ge 1\end{cases}\) \(\ell_i^{\mathrm{score}}=C_i+\lambda_{\mathrm{cdf}}D_i+\lambda_{\mathrm{mean}}H(\hat{s}_i-s_i^{\star})\)

论文固定使用 \(\lambda_{\mathrm{cdf}}=0.25\) 和 \(\lambda_{\mathrm{mean}}=0.10\)。这比单一 MSE 回归更适合有序评分:交叉熵约束等级分布,CDF 项惩罚等级距离,SmoothL1 约束原始评分尺度上的期望值。

4.4 SFT 总目标

每条样本只计算其激活原语的损失:

\(\mathcal{L}_{\mathrm{dec}}=\ell_i^{t_i}\)

完整 SFT 目标为:

\(\mathcal{L}_{\mathrm{SFT}}=\mathcal{L}_{\mathrm{dec}}+\lambda_{\mathrm{lb}}\mathcal{L}_{\mathrm{lb}}^{\mathrm{base}}+\mathcal{L}_{\mathrm{rz}}\)

其中 \(\mathcal{L}_{\mathrm{lb}}^{\mathrm{base}}\) 是语言模型 Backbone 的 MoE 负载均衡损失,\(\mathcal{L}_{\mathrm{rz}}\) 是 Router z-loss。论文明确指出,SFT 不包含下一 Token 或多 Token 预测目标。

五、RLCD-inspired 强化学习:优化概率校准

强化学习从 SFT Checkpoint 开始,把每个类型化决策视为一步 Contextual Bandit。它不是为了让模型生成更长的解释,而是让概率分布同时具备正确性和校准性。论文使用基于 Brier Score 和 Ranked Probability Score 的组奖励,并通过采样动作做 REINFORCE 更新。

5.1 探索策略

对于第 \(i\) 个问题,Choice 和 Score 从候选或有序等级分布中采样,Noul 视为 False/True 两类策略。每个问题独立采样 \(M=32\) 个动作,探索行为策略为:

\(\mu_{\theta,i}(a)=(1-\epsilon)p_{\theta,i}(a)+\frac{\epsilon}{K_i},\qquad \epsilon=0.05\)

重要性权重为:

\(w_{ir}=\frac{p_{\theta,i}(a_{ir})}{\mu_{\theta,i}(a_{ir})}\)

5.2 校准导向的组奖励

对真实答案 \(y_i\),Brier 误差为:

\(B_i=\sum_{k=0}^{K_i-1}\left(p_{\theta,i}(k)-\mathbf{1}[k=y_i]\right)^2\)

Score 任务额外加入累计概率误差:

\(D_i=\frac{1}{K_i-1}\sum_{h=0}^{K_i-2}\left(\sum_{k=0}^{h}p_{\theta,i}(k)-\mathbf{1}[y_i\le h]\right)^2\)

论文构造的采样组奖励期望满足:

\(\mathbb{E}[\widehat{J}_i]=-B_i-\lambda_iD_i\)

其中 Score 任务使用 \(\lambda_i=0.25\),Choice 和 Noul 不使用有序等级项。该奖励不只奖励“猜对”,还奖励把概率质量放在正确等级附近,并减少过度自信。

5.3 策略梯度更新

论文使用 Leave-one-out Baseline,构造每个采样动作的 Return 和 Advantage,最终的策略梯度损失为:

\(\ell_i^{\mathrm{PG}}=-\frac{1}{M}\sum_{r=1}^{M}\operatorname{sg}\left[w_{ir}A_{ir}\right]\log p_{\theta,i}(a_{ir})\)

\(\operatorname{sg}\) 表示 Stop-gradient;采样动作、奖励、Baseline 和重要性权重视为常量,梯度只通过动作概率流动。这个阶段的重点是校准概率,而不是增加新的标签类型。

六、评测设置与数据集

论文共评测 18 个标注配置:8 个 Choice、4 个 Noul、6 个 Score。评测覆盖分类、音频问答、说话人验证、讽刺和深度伪造检测,以及语音质量评分。论文重点报告模型自身在这些任务上的结果,而不是逐任务与所有原始基座模型做完整消融对比。

6.1 Choice 任务

Benchmark任务Accuracy (%)
CochlScene声学场景分类77.8717
NSynth instrument乐器识别72.2900
NonSpeech7k sound人类非语音声音识别92.6897
DiDiSpeech gender说话人性别分类100.0000
MELD emotion对话情绪识别57.3072
MMAU多模态音频问答78.7000
MMSU语义、韵律和副语言理解84.0568
MMAR复杂混合音频问答69.9000

Choice 结果显示,性别分类和人类非语音声音识别超过 90%,而 MELD 情绪识别只有 57.31%,是最弱配置。模型对说话人属性和明显的副语言事件更容易判断,对对话情绪这种依赖上下文、语气和角色关系的任务仍有明显提升空间。三个音频问答数据集中,MMSU 最好,MMAU 居中,MMAR 最低,说明复杂混合音频问答比基础类别识别更难。

6.2 Noul 二元判断

ConfigurationAccuracy (%)EER (%)AUCBrierFPR (%)FNR (%)
VoxCeleb1-O93.54416.49800.9822670.0486957.32145.5901
Clotho-AQA79.890119.82510.8786520.14639114.412124.4898
PodSarc98.26511.44270.9952300.0164062.17251.2149
In-the-Wild76.323220.94690.8763180.1581123.782257.2867

PodSarc 和 VoxCeleb1-O 同时具备较高 AUC 和较低阈值错误,说明模型在说话人验证和讽刺检测上的概率排序、二元决策与概率误差都较稳定。In-the-Wild 与 Clotho-AQA 的 AUC 接近,但 In-the-Wild 在 0.5 阈值下 FNR 达到 57.29%,说明它不是不能排序,而是在当前阈值下漏掉了大量正样本。实际部署时应根据业务成本重新选择阈值,而不能只看默认 0.5。

6.3 Score 质量评分

ConfigurationMOS MAEMOS RMSENormalized MAENormalized RMSEPearsonSpearman
NISQA overall0.4246420.5463440.1061600.1365860.8210020.807382
NISQA noise0.5844990.7388430.1461250.1847110.7360520.722851
NISQA coloration0.3453700.4319120.0863420.1079780.8098830.808054
NISQA discontinuity0.4305620.5397930.1076400.1349480.8009400.725388
NISQA loudness0.4369850.5230980.1092460.1307750.7282350.689991
VoiceMOS0.8134971.0040480.2033740.2510120.7230590.753843

NISQA overall 和 coloration 的 MOS 误差较低且相关性接近 0.8;loudness 的平均误差与 overall 接近,但 Pearson 较低,说明“平均偏差小”和“随样本质量变化的趋势一致”是两个不同维度。VoiceMOS 的 Pearson 和 Spearman 都为正,但原始 MOS MAE 为 0.813,高于 NISQA 各维度,说明跨数据集评分尺度和主观一致性仍是难点。

七、对 ASR 和音频理解系统的工程启示

  • 把“识别”和“决策”分开:ASR、说话人验证、质量审核和音频筛选常常只需要结构化结果,直接读出比生成解释文本更适合高吞吐服务。
  • 使用问题条件化的候选空间:同一个输出位置可以在一个问题中表示场景,在另一个问题中表示情绪,候选语义放在问题中,比固定分类头更容易扩展新任务。
  • 把概率校准作为一等目标:线上系统通常需要阈值、置信度和风险排序,Brier、CDF 和概率分布损失比只优化准确率更贴近实际。
  • 允许部分标注:不同音频数据集的标签互不相同,统一“音频—问题—规范—目标”格式,可以在不强行补全标签的情况下联合训练。
  • 对 Score 保留有序结构:语音质量的 2 分和 3 分比 2 分和 5 分更接近,CDF 损失可以把这种等级距离纳入训练。
  • 部署时重新选阈值:In-the-Wild 结果说明 AUC 相近的系统,在固定 0.5 阈值下可能出现完全不同的 FNR,生产系统应根据漏检和误报成本选择 operating point。

Qwen-Audio-Jev 的主要价值在于重新定义音频语言模型的输出接口:输入仍然是音频、自然语言问题和答案规范,输出则从开放式文本改为三种类型化决策。Choice 负责有限候选选择,Noul 负责二元命题概率,Score 负责有序质量分布和期望分数。模型通过共享的 Qwen-Audio-3.1-ASR-Flash-Next 表示通路和一个决策头覆盖多个数据集,再用异构标签的 SFT 和面向校准的 RLCD-inspired 训练统一优化。

论文结果说明,这种设计在音频筛选、说话人验证、深度伪造检测、语音质量评估和批量音频问答中具有工程潜力;但它还不是完整的端到端复现方案,因为训练数据总量、数据配比、完整消融和统一速度基准仍未公开。对于 ASR 团队,最值得借鉴的是:把高频、有限答案的后处理任务从“生成式问答”改造成“问题条件化决策”,并把概率校准、候选重排和缺失标签处理直接纳入训练接口。

Index-Translate 深度解析:从 150 语种翻译到语音、可控配音与长文档的一体化模型家族

摘要:哔哩哔哩 Index LLM 团队在 2026 年 9 月发布了 Index-Translate。它不是单一的“文本翻译模型”,而是以 Qwen3.5 为基础,向文本、语音翻译、音节可控配音和原生长文档翻译扩展的模型家族。

Index-Translate 35B-A3B preview、9B 与 2B 文本模型的七维翻译能力对比

一、项目定位:把“翻译质量”扩展为可交付能力

传统机器翻译通常优化句子级质量,但真实内容生产还需要保留 JSON、CSV、Markdown、变量占位符和术语;字幕要适配时长;社区文本要翻出梗意;书籍翻译要维持人物、术语和概念层级。Index-Translate 的核心判断是:翻译模型应当同时优化语义、约束、模态和上下文,而不是只追求一个 BLEU 或 COMET 分数。

模型家族目前包含五类成员:

  • Index-Translate:文本、结构化内容、指令翻译与社区表达,覆盖 150 种语言,提供 2B、9B 和 35B-A3B(preview)。
  • Index-Echo:语音到文字(S2TT)和语音到语音(S2ST),支持目标语言字幕、配音与说话人声音条件。
  • Index-Homura:接收目标音节数,在保持语义的同时重组译文长度。
  • Index-NativeLong:输入完整文档并连续生成译文,面向书籍、网文和长篇资料的一致性。

二、统一基础模型:多语种中训 + 专家融合

1. 多语言 Mid-training

技术报告将训练拆成 constant 和 decay 两阶段。constant 阶段混合通用文本、平行语料和单语文本,采样比例为 1:1:1,7,000 步、117.44B tokens;decay 阶段使用通用文本、pivot-20 与 pivot-148 数据,比例为 1:4:2,3,000 步、50.33B tokens。总预算约 167.77B tokens,序列长度通常为 4,096,随后为长文档任务增加更长上下文。

这里的 pivot 组织不是简单地把双语句对堆在一起,而是通过英文锚点把多个语言版本连接起来。例如:

\(x_{zh}\leftrightarrow x_{ja}\) 表示普通平行数据;\(x_{zh}\leftrightarrow x_{en}\leftrightarrow x_{ja}\) 表示 pivot 数据。报告中的消融显示,多语言覆盖能明显提升非核心语言表现,同时仍需控制对通用能力的损耗。

2. 专家训练与融合

团队分别训练通用翻译专家、指令翻译专家和 MEME(社区文化表达)专家。指令专家使用约 104.5 万条、覆盖十类真实场景的样本;训练目标既包括术语、格式和结构保护,也包括风格、上下文消歧和跨句一致性。通用翻译和指令翻译使用 GRPO,MEME 使用参考引导的 LLM judge。

融合不是简单拼接多个 LoRA,而是先做参数插值:

\(\theta_{merge}=w_G\theta_G+w_I\theta_I+w_M\theta_M,\quad w_G+w_I+w_M=1\)

发布模型使用的代表性权重为 \(w_G:w_I:w_M=0.8:0.1:0.1\),之后用针对弱项的多教师 on-policy distillation(MOPD)修补融合后的能力缺口。这种设计的价值在于:通用质量、指令遵循和文化适配可以共享底座,但不必强行用一个训练目标解决所有任务。

三、三项关键扩展:语音、音节与长文档

1. Index-Echo:从“翻译文本”到“翻译声音”

Index-Echo S2TT 将 Qwen3-Omni AuT 音频编码器与 Index-Translate 解码器连接起来,直接从源音频生成目标语言文字。S2ST 则在 S2TT 基础上增加约 3,000 万参数的 Hidden2CV 映射器,把翻译器隐藏状态映射到 CosyVoice3 的语义层,并使用 DiffRO 通过 Gumbel-Softmax 语音 token 优化内容一致性;源音频还提供说话人 embedding 与声音提示。

任务/模型MT judgeASR/WER 中位误差起始时间 MAE
Index-Echo-2B S2TT0.8250.0880.395 s
Index-Echo-9B S2TT0.8570.1020.488 s
Qwen3.8-Omni-Flash0.8870.1121.004 s
SeamlessM4T-v20.0601.000—

报告还比较了 pipeline 与端到端 S2ST。以中文到日语为例,9B 端到端方案的内容错误率均值/中位数为 0.0436/0.021,音色相似度 Spk 为 0.782;这说明语音翻译的评价不能只看文本,还要同时考察内容、时间轴和说话人条件。

2. Index-Homura:把音节预算写进优化目标

HOMURA 论文指出,大语言模型翻译存在跨语言“冗长偏置”:译文往往比时间预算允许的长度更长。它提出 Sand-Glass 基准,用真实视频转写、停顿分段和信息密度校准构造音节级时长约束。中文到英文、德文、西班牙文的理论扩展约为 1.03、1.19、1.49 倍,但未经约束的 LLM 平均扩展可达到 1.35、1.59、1.84 倍。

HOMURA 的基本长度比定义为:

\(\rho(x,y)=\frac{\sigma(y)}{\max(\sigma(x),1)}\)

其中 \(\sigma(\cdot)\) 是音节数。模型使用动态区间 \([L(x),R(x)]\),短句会适当放宽下界,长度奖励采用区间内满分、区间外指数衰减;质量奖励则由回译语义相似度、流畅性判定和可选的 GenRM 组成。整体目标可写为:

\(R(x,c,y)=\lambda_{len}R_{len}(x,y)+\lambda_{qual}R_{qual}(x,y)\)

在 3,600 条 Sand-Glass 测试案例中,Index-Homura-9B 的输出有 81.92% 与目标音节数偏差不超过 10%,明显高于普通模型的约 13%–48%。代价是:当约束越来越紧时,COMET 等质量指标会下降,模型必须在信息密度与自然度之间做可解释的折中。

模型Quality偏差≤1 音节偏差≤10%长度拟合斜率
Index-Homura-9B(RL)0.786374.42%81.92%0.968
Index-Homura-9B(SFT)0.858141.39%45.75%0.680
GPT-5.6-Sol(low)0.871542.53%47.64%0.891
Qwen3.5-9B0.718315.61%16.39%0.430

3. Index-NativeLong:原生长文档而不是“分块 + 词表”

NativeLong 的关键假设是:书籍翻译中的人物身份、术语层级和叙事关系,不能完全依靠分块翻译后再拼接。2B/9B 模型通过约 4K–64K 中文侧 token 的双向文档监督进行全参数 SFT,并在 mid-training decay 阶段使用 128K 序列实验。报告显示,Index-NativeLong-9B 在 GuoFeng、BWB、General Books 上的平均得分分别为 0.7891、0.7683、0.8848。

案例中,32K token 奇幻文本里的“王妃”在原生全文翻译的三个位置都保持为 Wang Fei,而同一 9B 模型使用分块和自动词表时,后文变成 the Dean、The Queen Consort。冰川史案例也显示,原生全文能够区分 ice age(冰河时代)、glacials(冰期)和 interglacials(间冰期),避免把上下位概念压成同一个词。

四、RIVAL 与 HOMURA:两条强化学习技术线

Index-Translate 技术报告明确吸收了 RIVAL 的训练思想。RIVAL 发现,传统 RLHF 中离线 reward model 会因为策略分布不断变化而失配,模型可能通过“奖励投机”获得高分,却生成不存在于原文的内容。因此 RIVAL 把 reward model 与翻译模型写成迭代的 min–max 对抗过程:

\(\min_{r_\phi}\max_{\pi_\theta}\;\mathbb{E}[r_\phi(x,\pi_\theta(y|x))]-\mathbb{E}_{y\sim P_{strong}}[r_\phi(x,y)]\quad\text{s.t.}\quad D_{KL}(\pi_\theta\|\pi_{ref})<\eta\)

RIVAL 的 reward model 同时学习定性偏好和定量偏好:前者用强/弱翻译排序,后者用 BLEU 的 MAE 近似。实验中,MAE 的定量误差为 0.19、定性准确率为 99.5%,优于 MSE 的 0.93 和 97.0%。在中文到英文的口语字幕任务上,RIVAL-Iter1 的 GPT-4o 平均评分为 3.68,优于 Qwen2.5-7B-SFT 的 3.46;WMT 中文到英文在 Iter2 达到 BLEU 33.42、COMETKiwi 73.61。

两条技术线各自解决不同问题:RIVAL 解决 reward model 与策略分布漂移,HOMURA 解决时长约束下的质量—压缩折中。Index-Translate 则把这些训练方法组合到通用翻译、指令翻译、MEME 和字幕任务中。

五、实验对比:质量、约束遵循与小语种不能混成一个分数

技术报告使用 FLORES-200、FLORES 低资源对、WMT24++、WMT26、instTrans、IFMTBench、MEME、OPUS-Books、Biomedical、MTNT、MuST-Cinema 和 GuoFeng-Webnovel 等数据。需要注意:COMET-22、XCOMET-XXL、WMT judge、IFscore 和 MEME 分数的量纲不同,不能直接横向相加。

模型FLORES COMET-22WMT26 JudgeinstTrans IFscoreMEME
Index-Translate-35B-A3B(preview)0.879476.760.83360.7405
Index-Translate-9B0.878975.350.82090.7387
Index-Translate-2B0.865560.260.75690.6443
Hy-MT2-7B0.874760.510.60790.5139
GPT-5.6-Sol0.865089.100.76240.7194

低资源结果更能体现项目的训练取向:35B-A3B 在 FLORES_minor_pair 上取得 COMET-22 0.8168、XCOMET-XXL 0.7164,off-target 仅 2.4%;9B 在 instTrans_minor 上取得 IFscore 0.7725,且 off-target 为 3.47%。指令基准 instTrans 包含 3,000 条中文到 20 种语言任务,低资源扩展另有 2,793 条;MEME 则包含 3,638 条中译英社区表达,覆盖 703 个词语和 857 个词义。

通用能力方面,Index-Translate-9B 的 C-Eval、GPQA-Diamond、INCLUDE、MMMLU 分数分别为 69.6、36.3、63.1、66.6;这说明专家融合后仍保留一定基础模型能力,但它的主要优势仍在翻译与约束任务,而非通用问答榜单。

六、最值得关注的创新点

  • 能力边界被显式建模:把“格式是否保留、术语是否一致、目标语言是否正确、音节是否命中、长文身份是否稳定”作为可测量目标,而不是只看译文流畅度。
  • 多语基础与专门模型分工:150 语种共享基础模型,语音、音节、长文档采用专门训练,避免一个模型在所有约束上互相牺牲。
  • 奖励函数更接近生产需求:通用翻译使用 XCOMET、目标语言 gate 和 adequacy;指令翻译加入硬约束 gate;HOMURA 加入动态音节奖励;RIVAL 用迭代 reward model 缓解 reward hacking。
  • 参数融合后再定向蒸馏:先用 0.8/0.1/0.1 融合通用、指令和 MEME 专家,再通过 MOPD 修复融合造成的局部退化。
  • 从句子级走向内容生产级:语音输出、时间轴、声音条件、结构化数据和全篇一致性都进入同一产品路线。

七、局限与使用建议

第一,35B-A3B 仍是 preview,论文与 README 的部分评测使用不同解码和汇总口径;引用数据时应注明模型版本和指标。第二,音节数只是语音时长代理,真实配音还受语速、停顿、音素时长和声码器影响。第三,NativeLong 对超长文档的显存、吞吐和错误恢复要求较高,生产部署仍要评估上下文窗口与并发成本。第四,LLM judge、回译和 XCOMET 都可能存在偏差,官方也记录了引用后缀、终止标记等 judge failure cases。

如果你的任务是结构化资料、社区内容或多语言产品文本,优先选择 Index-Translate-9B;如果是低延迟或资源受限场景,可从 2B 开始。如果是视频字幕和配音,建议使用 Index-Echo + Index-Homura 的组合,并把实际音频时长作为最终验收标准;如果是书籍、网文或技术报告,优先测试 NativeLong 的全篇一致性,再决定是否采用分块流程。

八、结语

Index-Translate 的价值不只在于“多翻几种语言”,而在于重新定义翻译模型的交付指标:能否保留结构、接住语境、压进时长、维持音色,并在一整本书里保持同一个人物和概念。它的工程路线也很清晰:共享多语底座,专家化训练,参数融合与定向蒸馏,再为语音、长度和长文档建立专门接口。对于希望把翻译直接接入内容生产流程的团队,这种模型家族式设计比单一榜单分数更值得关注。

参考资料

Qwen-Audio-3.0-ASR:用 MoE、上下文与指令控制把 ASR 推向真实工业场景

论文:Qwen-Audio-3.0-ASR Technical Report

一、先说结论:这不是只追求 Benchmark 的 ASR

Qwen-Audio-3.0-ASR 的核心目标,是把“听清楚”扩展成“在真实产品里持续可用”。论文把问题归纳为四类:多语言和地区方言、动态人名/品牌/专业术语、长语音跨句上下文,以及停顿、重复、口误和自我纠正等自然口语现象。

模型采用 Qwen Mixture-of-Experts(MoE)语言模型作为解码器,训练数据达到数千万小时量级,统一支持 30 种语言和 16 种中文方言变体。更重要的是,它把语言指定、历史文本、P0/P1 分层热词和文本润色都设计成输入指令,而不是为每种任务维护一套独立模型。

  • 30 种语言,覆盖东亚、东南亚、南亚、阿拉伯语区和欧洲多种语言。
  • 16 种中文方言/方言变体,覆盖 8 个主要方言区,既支持方言转写,也支持方言到普通话的语音翻译。
  • 行业实体识别、分层热词、长音频上下文和原生单次解码润色。
  • 独立的 Qwen-Audio-3.0-ASR-Streaming 流式版本,以及面向语音输入、会议、采访和客服的 Message ASR 部署形态。
系统总览:多语言/方言、流式、行业实体、长上下文、热词和原生润色,以及“指令控制、上下文感知、单次生成、低延迟”四个系统级属性。

二、研究背景:数据、模型和 LLM 三条路线正在汇合

论文把近年的 ASR 演进概括为三个互补方向:

  • Data Scaling:Whisper 系列从约 3,000 小时扩大到 68 万小时以上后,WER 下降超过 20 个点;领先系统的训练规模已经进入数千万小时。
  • Model Scaling:Whisper 参数量从约 38M 增加到 1.5B,多语言 WER 继续显著改善。
  • LLM Integration:Seed-ASR、FireRedAudio 等模型利用语言知识、世界知识和上下文推理能力,处理同音词、实体歧义和语义不完整等纯声学模型难以解决的问题。

但 Benchmark 的低 CER/WER 并不自动等价于产品体验。传统系统往往需要按语言或市场部署多个 checkpoint,热词更新要依赖外部 biasing 模块,口语润色又要额外串联一个 LLM。Qwen-Audio-3.0-ASR 的设计取舍是:把这些控制信号放进同一个 instruction-following ASR 解码过程里。

三、模型设计:四个模块加一个统一指令接口

Qwen-Audio-3.0-ASR 延续上一代 Fun-ASR 的整体拓扑,但把原来的 7B Dense LLM Decoder 换成 Qwen MoE Backbone。一次请求除了音频,还可以携带目标语言列表、是否润色、历史转写,以及 P0/P1 热词。

  • Audio Encoder:多层 Transformer Encoder,使用 SenseVoice 音频编码器,把波形转换为声学表示。
  • Audio Adapter:两层 Transformer Encoder,将声学表示映射到 LLM 可消费的表示空间。
  • CTC Decoder:挂在 Audio Encoder 上方,生成粗粒度识别假设。它不负责最终输出,而是为热词定制和长音频上下文注入提供候选与对齐信号。
  • LLM Decoder:Qwen MoE 解码器,综合 Audio Representation、CTC Hypothesis、Instruction 和 Context,自回归生成最终文本。

最终输出可以抽象为:

\(P(y_{1:T}\mid x,c)=\prod_{t=1}^{T}P(y_t\mid y_{<t},x,c)\)

其中 \(x\) 是音频, \(c\) 是语言、历史上下文、热词和润色等条件。关键变化不在音频前端,而在解码器:MoE 通过稀疏专家路由维持较大的总语言容量,同时只激活部分专家,降低每个 token 的实际计算成本。

“音频 + 指令条件 -> CTC 粗假设/音频表示 -> Qwen MoE 解码 -> 最终转写”的流程。

四、训练方案:五阶段逐步对齐声学、语言和产品目标

训练顺序为:Audio Encoder Pretraining -> Audio LLM Pretraining -> LLM Cooldown Adaptation -> Supervised Fine-tuning(SFT)-> Reinforcement Learning(RL)。这条链路的含义是,先获得稳健声学表示,再对齐 Qwen 的语言空间,随后用高质量数据收敛,最后直接优化生产指标。

4.1 Audio Encoder:BEST-RQ 自监督 + AED 有监督

第一阶段使用 BEST-RQ 在海量无标注语音上训练。随机遮蔽声学帧,目标是预测由固定随机投影和冻结 codebook 生成的离散目标。部分 Transformer 层从预训练 Qwen3 初始化,但将语言模型中的 causal attention 改为双向 attention,以适应语音编码。数据覆盖 AI、生物科技、电商、教育、娱乐、金融、出行等真实场景,两阶段合计达到数千万小时。

第二阶段把编码器放进 attention-based encoder-decoder(AED)模型,用中文和英文为主的带标注或伪标注数据继续训练。数据流程包含 VAD、多 ASR 模型伪标签(Paraformer-V2、Whisper、SenseVoice)和 ITN。训练结束后,AED Decoder 被丢弃,只保留训练好的 Audio Encoder 作为后续初始化。

BEST-RQ 到 AED 的两阶段音频编码器预训练图

4.2 Audio LLM Pretraining:约 2,000 万小时做音频-文本对齐

Audio Encoder 在这一阶段冻结,Audio Adapter 和 Qwen MoE Decoder 联合训练。数据约 2,000 万小时,主要由 ASR 数据和交错 text-audio 数据组成,目标是文本 token 的交叉熵:

\(\mathcal{L}_{CE}=-\sum_{t=1}^{T}\log P_{\theta}(y_t\mid y_{<t},x,c)\)

这一阶段把声学表示对齐到 LLM 的文本表示空间,形成多语言知识、世界知识、同音词和实体消歧能力,以及后续指令跟随能力。

4.3 LLM Cooldown:减少数量,增加质量与平衡

Cooldown 使用约 100 万小时的更高质量数据,并重新平衡语言和方言分布,同时加入 Audio Understanding、Speaker Diarization 和 SpeechQA。ASR 数据经 VibeVoice 重识别,错误率大于 0.3 的样本被过滤。Audio Encoder 继续冻结,只更新 Adapter 和 Decoder。它的作用不是继续堆数据,而是把大规模预训练模型“收敛”到更可靠、更均衡的音频语言任务。

4.4 SFT:统一指令格式覆盖 30 语言、16 方言和多种业务条件

SFT 使用数千万小时语音,包含人工标注、高置信伪标签、噪声增强、TTS、流式模拟、远场/房间模拟、code-switch、多语言/方言和业务场景数据。Audio Encoder 与 Adapter 更新,Base LLM 冻结并通过 LoRA 适配 Decoder,训练序列最多 8,192 tokens。

  • 指定语言转写:单语场景只输出指定语言;多语混说保留各语言原始书写形式,减少 language leakage。
  • 行业实体增强:从 AI、金融、医疗、IT 等领域挖掘实体,经过“实体 -> 事实检索 -> LLM 造句 -> CosyVoice3 合成 -> 当前 ASR 重识别过滤 -> SFT”流程,强化长尾词。
  • 原生润色:用二值指令控制 verbatim 或 polished 输出,学习删除 filler、消除重复、处理 self-correction、补标点和规范格式。
  • 历史上下文:将同一 session 的前序转写作为 context,同时训练正确、冲突、噪声和空 context,明确告诉模型音频始终是主要证据。
  • 分层热词:P0 是高置信、高优先级词;P1 是更宽的候选池。LLM 根据 reference transcript 做语义匹配,P0 bias 更强但仍需得到声学和语义证据支持。

分层热词可以形式化为:对 P0 候选使用更高的条件权重,对 P1 使用较弱权重;目标不是把候选词硬塞进结果,而是在召回长尾词和抑制错误插入之间取得平衡。

4.5 RL:FunVerl-ASR + GRPO,直接优化 ASR 产品指标

RL 数据集强调 compact、high-quality、hard cases:模型与 Whisper/FireRed-ASR/SenseVoice 不一致的样本、超过 20 秒的长语音、幻觉样本、关键词/热词样本,以及用于防止灾难性遗忘的普通 ASR 数据。

FunVerl-ASR 为音频大模型扩展了普通文本 RL 框架,包含四个并行模块:

  • Audio Processor:波形转 Mel 特征,指令文本转 token。
  • vLLM Rollout Engine:冻结 Audio Encoder/Adapter 生成音频 embedding,与文本 embedding 合并后由 MoE 生成多个候选。
  • Reward Module:支持 CER、关键词召回、热词命中、上下文实体匹配、幻觉检测、语言一致性和 LLM Judge。
  • Megatron Policy Trainer:使用 tensor/pipeline/expert parallel,更新后通过 NCCL 将 Decoder 权重同步回 rollout worker。

其工程创新是 fully asynchronous loop:rollout 持续生成轨迹并放入消息队列,trainer 独立消费并更新策略;当轨迹对应的旧策略过于陈旧时直接丢弃。默认每个 prompt 生成 8 个 hypothesis,每次 actor update 使用 32 个 prompt,在 32 张 A100(rollout 和训练各 16 张)上,一天内完成完整 RL。

GRPO 不需要单独训练 value network。组内 advantage 为:

\(\hat{A}_{i,t}=\frac{R_i-\operatorname{mean}(\{R_j\}_{j=1}^{G})}{\operatorname{std}(\{R_j\}_{j=1}^{G})}\)

策略目标使用 clipped objective 和 KL 惩罚:

\(\mathcal{L}_{GRPO}(\theta)=\frac{1}{G}\sum_{i=1}^{G}\frac{1}{|o_i|}\sum_t\min\left(r_{i,t}(\theta)\hat{A}_{i,t},\operatorname{clip}(r_{i,t}(\theta),1-\epsilon,1+\epsilon)\hat{A}_{i,t}\right)-\beta D_{KL}(\pi_{\theta}\parallel\pi_{ref})\)

当 reward 只有 WER 时,GRPO 与 ASR 中的 MWER 训练接近;论文进一步使用组合 reward:

  • \(R_1=1-WER\):总体识别准确率。
  • 关键词准确率与召回率:既奖励命中,也惩罚错误插入。
  • 热词 reward:分别评价 P0/P1,并使用不对称正负权重。
  • 上下文 reward:奖励命中历史实体,惩罚错误复制。
  • 幻觉抑制:按幻觉 span 长度惩罚。
FunVerl-ASR 的异步 RL 架构图,突出 rollout、reward、policy trainer 和 NCCL 权重同步

五、部署形态:一个模型,三种产品能力

5.1 多语言与方言:从多 checkpoint 变成运行时指令

上一代 Fun-ASR 需要中文英文主模型和独立的 Fun-ASR-ML 多语言 checkpoint。Qwen-Audio-3.0-ASR 改成一个模型加 runtime language instruction,例如 Chinese+English+Japanese、Chinese+French、English+Indonesian。支持语言包括中文、日语、韩语、越南语、泰语、印尼语、马来语、菲律宾语、印地语、阿拉伯语,以及英语、法语、德语、西班牙语、葡萄牙语、俄语、意大利语、荷兰语、瑞典语、丹麦语、芬兰语、希腊语、波兰语、捷克语、匈牙利语、罗马尼亚语、保加利亚语、克罗地亚语、斯洛伐克语和挪威语。

5.2 Streaming:先快后准的混合式解码

流式模型先用短 chunk 和有限 right context 连续输出临时文本;端点检测后,再用完整上下文大模型重算并刷新最终文本。chunk size 与 right context 可以独立调整:上下文越短,响应越快;上下文越长,准确率越高。论文在 H100 上测量 first-token latency 和 text-display latency,低延迟配置下前者低于 200 ms,后者低于 300 ms。

5.3 Message ASR:面向会议、采访和客服的组合式接口

Message ASR 不是另一个模型,而是把 streaming audio、历史上下文、P0/P1 热词、native polishing 和 right context 组合成一个部署 profile。它在说话过程中提供 partial result,结束后用完整 utterance 刷新结果;上下文帮助维持主题和实体一致性,热词帮助识别人名、产品和技术术语,但音频证据始终优先于 context 和 hotword。

Message ASR 工作流图: “识别、上下文、润色和流式延迟在同一接口内完成”

六、公开基准:在统一评测下,中文、英文和多语言都具竞争力

论文同时使用公开数据集和内部工业测试集。公开集包括 AISHELL-1、AISHELL-2、FLEURS、LibriSpeech、WeNetSpeech、GigaSpeechBench 和 Common Voice 15。中文使用 CER,英文使用 WER;数值越低越好。

作者将中文英文结果分为两组:Panel A 是各模型官方报告结果,Panel B 是所有系统通过同一个 API 评测流程得到的结果。Panel A 可能存在预处理、参考文本和打分约定差异,因此真正适合横向比较的是 Panel B。

测试集指标GPT-4o TranscribeAzureDoubao-ASRFun-ASR-FlashTencent Hy-ASR-3.0-previewQwen-Audio-3.0-ASR
AISHELL-1CER3.341.601.540.760.781.03
AISHELL-2CER4.473.242.661.932.152.02
FLEURS-zhCER6.145.518.185.522.382.08
FLEURS-enWER5.795.476.504.955.454.17
LibriSpeech-cleanWER1.581.903.361.351.601.19
LibriSpeech-otherWER3.873.544.462.512.682.24
WeNetSpeech-netCER12.274.584.813.834.164.31
表 1:统一 API 评测结果,单位为百分比,越低越好。

在 Panel B 中,Qwen-Audio-3.0-ASR 在 7 个测试集中的 4 个取得最低错误率:FLEURS-zh 2.08%、FLEURS-en 4.17%、LibriSpeech-clean 1.19%、LibriSpeech-other 2.24%。相对同一 pipeline 下最强竞争系统,分别降低 0.30、0.78、0.16 和 0.27 个百分点;AISHELL-2 也只落后最佳结果 0.09 个百分点。

6.1 多语言结果:GigaSpeechBench 与 Common Voice 15 的宏平均领先

数据集Qwen-Audio-3.0-ASR 宏平均对比结论
GigaSpeechBench22.50%在完整覆盖的系统中最低;7 种语言中 5 种最低
Common Voice 154.57%宏平均最低;7 种语言中 6 种最低
FLEURS4.94%9 种语言中 4 种最低,整体具有竞争力
表 2:多语言宏平均结果。宏平均只统计覆盖对应全部语言的系统。

这组结果体现了论文的主要平衡:模型不是在每一种语言、每一个测试集上都绝对第一,但在跨语言覆盖面和宏平均稳定性上表现很强,尤其适合一个模型服务多个市场的场景。

七、内部工业评测:论文真正想证明的四项能力

7.1 16 种中文方言:CER 与任务一致性同时评估

方言测试覆盖 16 种方言。四川、山西、河南、济南、粤语、陕西、青岛采用 ASR 设置,要求保留目标方言;上海、南昌、宁波、客家、杭州、温州、湖南、福建、苏州采用 AST 设置,要求翻译为自然普通话。

一致性由 Qwen3.7-Max 按 0-10 分评价,分数至少为 6 才算一致。计算公式为:

\(Consistency=\frac{100}{N}\sum_{i=1}^{N}\mathbf{1}[s_i\ge 6]\)

Qwen-Audio-3.0-ASR 在 16 个方言子集中的 11 个取得最低 CER,宏平均 CER 为 9.40%,对比 Doubao-ASR 的 16.77% 和 Tencent Hy-ASR-3.0-preview 的 20.40%。在温州话上,模型 CER 为 14.22%,而两个对比系统分别为 64.63% 和 64.66%,差距尤其明显。

16 方言 CER
任务一致性率

7.2 行业实体:15 个领域全部取得最高召回

内部行业测试覆盖 15 个领域,包括 AI、医疗、农业、制造、文化体育媒体、软件与 IT 等。Qwen-Audio-3.0-ASR 在所有领域的 entity recall 都高于 Doubao-ASR 和 Tencent Hy-ASR-3.0-preview,软件与 IT 的提升最明显,因为其中包含大量低频、快速变化的软件库、框架和 API 名称。

这里需要保持严谨:论文认为实体挖掘和数据合成 pipeline 很可能是主要贡献之一,但不能据此证明所有提升都由该模块单独带来,因为 MoE 解码器、更多数据和 RL 也可能共同贡献。

15 个行业的实体召回雷达图

7.3 分层热词:P0 召回接近 99%,P1 有意保持更弱 bias

类别Qwen 无热词Qwen + 热词说明
Person names P062.12%99.43%提升 37.31 个百分点
Subject terms P069.36%99.42%高优先级词强增强
Trending buzzwords P063.08%99.46%动态热词效果明显
AI entities P088.22%99.39%接近饱和召回
Brand names P083.83%97.95%实体类别稳定提升
Product entities P072.87%99.07%长尾产品名受益明显
Subject terms P188.46%95.31%较弱 bias,避免误插词
Trending buzzwords P174.00%88.34%保守增强
表 3:Qwen-Audio-3.0-ASR 不同热词层级的召回率。

7.4 长音频上下文:把前文变成 running context cache

很多错误不是当前片段的声学信息不足,而是同音实体、文件名、技术缩写或人名需要跨句记忆。模型把同一 session 中已经识别的前序文本作为上下文,不要求人工维护完整热词表。例如前文已经确认“style.xsl”、TCC、unigram、softmax、debug 或某个人名,后续再次出现时可以抑制声学上相近但错误的替代词。

前文线索参考无长上下文有长上下文
xsltproc style.xsl input.xmlstyle.xsl data.xml > out.htmlxsl data.xml > out.htmlstyle.xsl data.xml > out.html
“这叫法条竞合”法条竞合划掉即可法条竞合
unigram 已出现两次我们称之为 unigramuniqueunigram
TCC 已被反复确认our TCC will be…our GGC will be…our TCC will be…
softmax 已出现softmax 形式softmap 形式softmax 形式
表 4:长音频上下文带来的代表性纠错。

7.5 原生单次润色:可读性接近两阶段级联

传统做法是 ASR 先输出原始转写,再调用一个 LLM 清理 filler、重复和自我纠正。Qwen-Audio-3.0-ASR 用一个 polishing flag 在同一次自回归解码中选择 verbatim 或 polished 输出。

内部 5 分制评测中,原始输出可读性为 2.53,原生润色提升到 3.44;忠实度为 3.44,与两次调用的 ASR + Qwen3.6-Plus 级联方案 3.47 接近,但只需要一次推理。代表性行为包括删除 um/uh、消除 the the the、解析 false start、补充标点并规范缩写。

7.6 流式延迟-准确率:400 ms 是一个可用折中点

随着 algorithmic latency 增加,中文 CER 和英文 WER 持续下降;非流式模式准确率最低。论文给出 400 ms 延迟点的结果:中文 CER 9.24%、英文 WER 13.38%;非流式分别为 8.03% 和 11.78%,相对错误率增加约 15.1% 和 13.6%。这说明系统可以按产品需求在响应速度和准确率之间选 operating point。

配延迟-准确率曲线,测试硬件为 NVIDIA H100

八、创新点总结:真正有价值的不是单个模块,而是组合方式

  1. MoE LLM-ASR:以 Qwen MoE 替换 Dense Decoder,在增加语言/世界知识容量的同时控制 token 级计算。
  2. 统一 instruction-controlled ASR:语言、历史上下文、热词和润色不是外挂,而是同一解码接口中的条件。
  3. 分层 P0/P1 热词:用优先级和证据约束同时优化长尾召回和错误插入。
  4. 原生单次润色:把“识别 + 可读化”放到一次生成中,减少后处理延迟。
  5. 上下文缓存式长音频建模:利用此前已确认的文本维持跨句实体一致性,不依赖人工热词维护。
  6. FunVerl-ASR 异步 RL:针对音频大模型补齐 rollout、奖励和训练的异步系统,并用复合 reward 优化真实业务目标。
  7. 流式与全上下文结合:实时给反馈,结束后再用完整音频刷新最终文本。

九、如何理解论文的实验优势

从公开 Benchmark 看,Qwen-Audio-3.0-ASR 的优势是整体均衡:中文和英文各有多个测试集领先,多语言宏平均在 GigaSpeechBench 和 Common Voice 15 上领先。从工业集看,最明显的提升集中在通用 CER/WER 难以表达的部分:方言一致性、行业实体、热词、跨句上下文和可读性。

更准确地说,论文证明的不是“每个数据集都第一”,而是“一个统一模型可以同时覆盖多种生产约束”。这对会议记录、客服质检、跨境语音输入和企业知识场景,比只看单一测试集的 SOTA 排名更有意义。

十、局限性

  • Panel A 不完全可比:官方结果可能使用不同预处理、参考文本和评分协议。作者也建议优先参考统一 API 的 Panel B。
  • 大量工业测试集未公开:15 行业实体、16 方言、润色和流式延迟的内部数据有较强应用价值,但外部研究者难以完整复现。
  • MoE 规模信息有限:论文强调稀疏激活带来的效率,但没有在报告中完整披露总参数、激活参数、专家数量和详细吞吐。
  • LLM Judge 可能引入评测偏差:方言一致性使用 Qwen3.7-Max,部分 reward 也支持 LLM Judge;这适合产品质量评估,但需要独立人工标注或跨模型验证。
  • 上下文和热词不是无条件增益:论文反复强调音频是第一证据,错误、过时或冲突的 context/hotword 不应被模型机械复制。
  • 低延迟仍有代价:低于 200 ms 的 first-token latency 与非流式准确率并非同时达到,实际部署必须根据业务选择 operating point。

十一、结语

Qwen-Audio-3.0-ASR 的核心贡献,可以概括为一句话:它把 ASR 从“音频到文字”的单一任务,升级成“音频 + 指令 + 上下文 + 业务词表 -> 可直接使用文本”的统一生成系统。

其工程路线也很清晰:用数千万小时数据建立规模基础,用 Qwen MoE 提供语言和世界知识,用 SFT 把产品控制信号统一进解码,用异步 GRPO 直接优化 CER、热词、上下文和幻觉指标,再通过 streaming/full-context 和 Message ASR 落到低延迟业务。公开基准证明了竞争力,工业测试则说明它的真正卖点在长尾实体、方言、上下文和可读性。

如果把这篇报告放到 ASR 的发展脉络里看,它的重要性不只是“又一个更大的模型”,而是尝试回答一个更实际的问题:在多语言、长音频、动态热词和低延迟约束同时存在时,能否用一个可控的音频大模型替代多套串联系统。Qwen-Audio-3.0-ASR 给出的答案是肯定的,但其内部数据、模型规模和评测可复现性仍值得后续公开与验证。

参考资料:
1. Qwen-Audio-3.0-ASR Technical Report, arXiv:2609.07549v2, https://arxiv.org/abs/2609.07549
2. Nova Speech,《最新工业SOTA转写模型:Qwen-Audio-3.0-ASR》,https://mp.weixin.qq.com/s/_jWVjU0XslOw31WPAjhEdg

dLLM-ASR:更快的扩散式大语言模型语音识别框架

  • 论文题目:dLLM-ASR: A Faster Diffusion LLM-based Framework for Speech Recognition
  • 论文链接:arXiv:2601.17902

大语言模型语音识别(LLM-ASR)通常“准”,但解码仍是逐 token 的自回归生成,延迟会随句子长度线性增长。离散扩散大语言模型(dLLM)可以并行生成整段序列,却容易从全掩码开始、固定输出长度,并让每个 token 使用同样的去噪步数。论文提出的 dLLM-ASR 将 ASR 解码重新定义为先验引导的自适应去噪:用轻量 ASR 先验提供更好的初始状态和长度锚点,用长度自适应剪枝去掉冗余填充 token,再用基于置信度的早停把计算集中到仍然模糊的位置。

一句话结论:dLLM-ASR 在保持与自回归 LLM-ASR 接近的识别准确率的同时,平均 RTF 降至 0.063,相对 Whisper-LLaMA3 取得 4.44× 加速,并在论文比较的模型中给出了最好的精度—效率折中。

一、为什么要把扩散语言模型用于 ASR

LLM-ASR 通常由语音编码器、模态对齐模块和 LLM 解码器组成。它可以利用预训练语言模型的语义推理、长尾词汇和上下文建模能力,但自回归(AR)解码必须按顺序预测每一个 token,复杂度近似为:

\(T_{\mathrm{AR}}=\mathcal{O}(N)\)

非自回归(NAR)模型可以并行预测,理论上更快,但往往缺少大规模基础模型的语言知识。dLLM 在离散 token 空间中进行多轮并行去噪,在保留预训练 LLM 语义能力的同时,将生成过程改写为有限轮数的迭代 refinement:

\(T_{\mathrm{dLLM}}=\mathcal{O}(K),\quad K\ll N\)

问题在于,文本 dLLM 面向的是开放式生成,而 ASR 是由声学输入强约束的映射任务。直接移植会产生三类浪费:从全掩码序列开始,忽略语音中已有的信息;输出长度预先写死,过长会产生大量 padding,过短又可能截断;所有 token 使用统一的去噪预算,已经确定的简单词仍被重复计算。

二、dLLM-ASR 的整体设计

dLLM-ASR 由三部分组成:冻结的 Whisper-large-v3 语音编码器、轻量级 adapter,以及以 LLaDA-8B-Instruct 为基础的 dLLM 解码器。语音编码器以 25 Hz 输出声学表示;adapter 先用 kernel size 为 3、stride 为 2 的一维卷积把帧率降到 12.5 Hz,再通过线性层将 1280 维声学特征投影到 LLaDA 的 4096 维 embedding 空间。

设输入语音为 \(W\),声学条件特征为:

\(A=\mathrm{Projector}\big(\mathrm{SpeechEncoder}(W)\big)\)

解码器接收文本提示、语音特征和转写序列。训练时,真实转写 \(x_0\) 中的 token 以概率 \(t\in(0,1]\) 独立替换为特殊掩码 \([\mathrm{M}]\),得到 \(x_t\);模型根据 \(x_t\) 和语音条件 \(A\) 恢复被掩盖的 token。论文采用带 \(1/t\) 归一化的掩码重建目标:

\(\mathcal{L}=-\mathbb{E}_{t,x_0,x_t}\left[\frac{1}{t}\sum_{i=1}^{L}\mathbb{I}(x_t^i=[\mathrm{M}])\log p_\theta(x_0^i\mid x_t,A)\right]\)

当掩码比例较低时,\(1/t\) 会提高该样本的权重,避免不同噪声水平造成训练偏置;同时以概率 \(\alpha\) 令 \(t=1\),增强模型从全掩码状态恢复转写的鲁棒性。

两阶段训练与聊天式数据格式

第一阶段只训练 adapter,冻结语音编码器和 dLLM;第二阶段在 LLaDA 中加入 LoRA,同时优化 adapter 与 LoRA 参数,从而尽量保留预训练 dLLM 的语言能力。论文还发现,数据格式对生成质量影响明显:把语音表示和转写包装成类似文本 LLM 的 chat-style prompt,有助于激活模型原有的指令跟随能力,并缩小跨模态差距。

三、核心创新:先验引导的自适应去噪

1. ASR 先验初始化。论文增加一个极轻量的 CTC 分支,在冻结语音编码器输出上预测初始 ASR 先验。该分支仅包含下采样卷积和分类头,额外计算开销很小。先验不要求一次性给出最终答案,而是作为扩散过程的起点:它提供较好的语义锚点,也自然给出候选序列长度。与从全掩码开始相比,第一轮就会有更多 token 达到置信度阈值。

2. 基于置信度的 token 早停。每一轮去噪后,若某个 token 的最大预测概率超过阈值 \(\tau\),就将其固定并退出后续迭代。这样,清晰的词或字符只需较少步数,难点位置则继续 refinement。为避免错误 token 过早锁定,论文采用较高阈值,并在没有 token 达标时选择置信度最高的 top-\(\gamma\) 个 token 推进过程。

3. 长度自适应剪枝。ASR 中 padding token 往往熵低、收敛快,第一轮即可识别。模型在固定高置信 token 的同时检测序列尾部 padding,并逐轮删除冗余位置,动态收紧长度上界。该策略避免了固定 128 token 生成长度带来的无效计算。

4. 语音 KV cache。模型缓存与语音特征对应的 Key/Value,并在后续去噪轮次复用;由于缓存严格限制在 speech features 上,论文观察到几乎没有精度损失。这使每一轮只需更新尚未确定的文本位置。

完整推理流程可以概括为:先验初始化状态与长度 → 第一轮锁定高置信 token、提取语音 KV cache、识别尾部 padding → 后续轮次复用 cache,只更新未决位置并持续剪枝 → 所有位置确定后结束。

四、实验设置

训练数据共 13,900 小时,来自 LibriSpeech、CommonVoice 22.0 English 和 GigaSpeech。测试集包括 LibriSpeech test-clean、LibriSpeech test-other、CommonVoice English test,并加入域外的 VoxPopuli English test 检验泛化能力。

解码器为 8B 参数的 LLaDA-8B-Instruct,语音编码器为冻结的 Whisper-large-v3。训练时总 mask 概率 \(\alpha=0.2\);LoRA rank 为 16,缩放系数为 32,dropout 为 0.05;优化器为 AdamW(\(\beta_1=0.9,\ \beta_2=0.999\))。两阶段均训练 5 个 epoch、总 batch size 256,学习率先在线性 warm-up 4,000 步后升至 \(1\times10^{-4}\),再按 cosine 调度衰减。所有实验使用 16 张 NVIDIA A100。

对比模型包括自回归的 Whisper-LLaMA3 8B、Whisper-Qwen3 8B,以及直接把语音编码器、adapter 与 LLaDA 拼接的 Whisper-LLaDA。后者固定生成长度为 128 token,覆盖约 99% 的语音转写。评价指标为词错误率(WER,越低越好)和实时率(RTF,计算时间/音频时长,越低越好)。

五、主要结果:速度和准确率同时进入更优区域

模型解码器参数LS clean WER / RTFLS other WER / RTFCV test WER / RTFVoxPopuli WER / RTF平均 WER / RTF
Whisper-LLaMA38.03B2.15 / 0.3175.58 / 0.3308.55 / 0.2039.89 / 0.2686.54 / 0.280
Whisper-Qwen38.19B2.72 / 0.4106.62 / 0.4279.18 / 0.35510.06 / 0.3647.15 / 0.389
Whisper-LLaDA8.02B2.34 / 1.6785.22 / 1.8928.80 / 2.0299.68 / 1.3446.51 / 1.736
dLLM-ASR8.02B2.28 / 0.0575.17 / 0.0768.36 / 0.0579.56 / 0.0606.34 / 0.063
表 1:论文主要测试结果。WER 为百分比,RTF 越低表示推理越快。

从表 1 可以看到,dLLM-ASR 的平均 WER 为 6.34%,优于 Whisper-LLaMA3 的 6.54%、Whisper-Qwen3 的 7.15%,也略优于直接移植的 Whisper-LLaDA(6.51%)。在更具挑战性的 LibriSpeech test-other、CommonVoice 和 VoxPopuli 上,dLLM-ASR 均取得最低 WER;在 test-clean 上也保持竞争力。

速度差异更明显:dLLM-ASR 平均 RTF 仅为 0.063,而 Whisper-LLaMA3、Whisper-Qwen3 和 Whisper-LLaDA 分别为 0.280、0.389 和 1.736。换算后,dLLM-ASR 相对 Whisper-LLaMA3 加速约 4.44×,相对 Whisper-Qwen3 加速约 6.17×,相对直接的 Whisper-LLaDA 加速约 27.6×。这说明扩散模型本身并不会自动带来速度优势,真正关键的是先验初始化、长度剪枝和 token 级早停的协同。

六、消融实验说明了什么

模型/变体LS clean WER / RTFLS other WER / RTF
dLLM-ASR2.28 / 0.0575.17 / 0.076
w/o ASR Prior2.29 / 0.0695.20 / 0.084
w/o Length Pruning2.27 / 0.0715.13 / 0.089
w/o Chat-Style Prompt2.87 / 0.0565.76 / 0.076
Whisper-LLaDA2.34 / 1.6785.22 / 1.892
Whisper-LLaDA + confidence denoising2.98 / 0.0775.98 / 0.108
表 2:论文消融实验结果。

去掉 ASR prior 后,LS clean/other 的 RTF 从 0.057/0.076 上升到 0.069/0.084,说明更好的初始状态可以显著减少去噪轮次。去掉长度剪枝后,RTF 进一步上升到 0.071/0.089,验证了删除 padding 对效率的直接贡献。去掉 chat-style prompt 虽然速度变化不大,却使 WER 明显恶化到 2.87/5.76,说明数据组织方式对跨模态对齐和生成质量非常关键。

值得注意的是,仅把 confidence-based denoising 加到 Whisper-LLaDA 上,RTF 可以降到 0.077,但 WER 反而升至 2.98/5.98。这一结果说明“早停”不能孤立使用:如果没有先验提供可靠起点、没有长度剪枝控制候选空间,单独追求更少的迭代会造成错误过早固化。

阈值的选择

论文进一步扫描置信度阈值 \(\tau\)。阈值从 0.6 提高到 0.9 时,token 接受更谨慎,WER 改善但 RTF 变高;阈值继续从 0.9 提高到 0.95,WER 差异已经很小。因此作者将 \(\tau=0.9\) 作为默认值,在速度和精度之间取得更好的平衡;推理时 top-\(\gamma\) 参数取 1。

七、如何理解这项工作的价值

dLLM-ASR 的关键不只是“把 LLM 换成扩散 LLM”,而是针对 ASR 的结构性约束重新设计推理过程。语音已经提供了强条件,因此没有必要像开放式文本生成那样从纯噪声猜测;ASR 的输出存在明显的长度和 padding 结构,因此可以主动删掉简单位置;不同词的识别难度不同,因此计算预算应当按 token 分配,而不是统一分配给整句。

从系统角度看,这是一种“先验负责覆盖,扩散负责纠错”的组合:轻量 CTC 分支快速给出可用草稿,dLLM 再利用强语言模型能力修正含糊、长尾或上下文依赖的位置。最终模型在精度—效率平面上形成新的 Pareto 前沿,尤其适合对实时性敏感、又不能接受明显识别退化的语音应用。

八、局限与后续方向

论文当前主要验证英语离线或整段语音识别,默认仍需要为一段输入建立完整的候选序列。阈值、先验质量和 padding 剪枝规则也会影响不同数据域下的稳定性。作者将后续工作指向流式 ASR 和更多任务场景,这也是检验扩散式解码能否在持续输入、动态上下文中保持优势的关键。

结语

dLLM-ASR 给出了一个清晰的答案:扩散 LLM 可以用于高质量语音识别,但必须从“通用文本生成”转向“受语音先验约束的自适应 refinement”。通过 ASR prior、长度自适应剪枝、置信度早停和语音 KV cache,论文在 8B 参数规模下实现了平均 WER 6.34%、平均 RTF 0.063,并相对自回归 Whisper-LLaMA3 达到 4.44× 加速。其更具普适性的启示是:当生成任务拥有强条件输入时,最有效的扩散推理往往不是从噪声开始,而是从一个便宜但有信息的先验开始。

RSI – [Recursive Self-Improvement]

Awesome RSI 仓库(网站),尝试从分类的视角整理现有 RSI 工作

https://github.com/Prism-Shadow/awesome-rsi

收录关于智能体从自身经验中学习的论文、书籍与课程,涵盖自我演化、技能学习、记忆、持续学习和自动化 AI 研究。你可以按主题筛选、搜索,并按时间或影响力排序。

Jev 深度解析:面向结构化决策的 System One 模型、原理、优势与工程实践

最近,TypeSafe AI 发布的 Jev 引发了开发者社区的集中讨论。它的定位并不是“又一个更小的聊天大模型”,而是一种面向软件系统的 System One(系统 1)模型:接收当前状态和一组预先定义的问题,快速返回类型化答案、概率分布与置信度,让程序可以直接据此分支、路由或触发动作。

这篇文章综合 TypeSafe 官方文档、Eigent 的技术解读,以及社区对 Jev 的端侧复现和应用观察,系统说明 Jev 是什么、为什么快、如何减少结构化输出错误、适合哪些场景、有哪些局限,以及如何把它放进 Agent 和自动化系统中。需要特别说明的是:Jev 目前是闭源服务,具体模型结构、训练数据和 RLCD 的完整实现尚未公开;本文会把官方事实、厂商自报指标和社区推测分开表述。

一、Jev 是什么:把“判断”从文本生成中剥离出来

传统 LLM 的基本接口是“输入文本,生成文本”。即使我们只想知道“这个工单应该交给哪个部门”,也往往需要模型逐个 token 生成 JSON,再由程序解析、校验和兜底。Jev 采用了相反的设计:调用方先声明问题和合法答案空间,模型只在这个空间内进行判断。

可以把一次 Jev 调用抽象为:

\( (s, Q) \xrightarrow{\text{Jev}} (a, P, c) \)

其中,s 是应用提供的状态(字符串、JSON 或文本数组),Q 是类型化问题集合,a 是答案,P 是答案空间上的概率分布,c 是供程序使用的置信度。Jev 不负责写解释、代码或回复,而是把判断结果交还给确定性代码。

二、System One 与 System Two:Jev 在 AI 栈中的位置

“System One”借用了 Daniel Kahneman《思考,快与慢》中的概念。System 1 代表快速、直觉式判断;System 2 代表慢速、审慎的推理。映射到 Agent 架构中:

  • System 2(传统前沿 LLM):理解复杂目标、规划多步任务、生成代码和自然语言、处理开放式推理。
  • System 1(Jev):分类、选择、评分、风险判断、工具路由、完成检测等高频且边界明确的局部决策。

因此,Jev 不是 GPT、Claude 等模型的替代品,更像是软件里的“智能 if 语句”或快速决策层:复杂问题交给 System 2,局部判断交给 System 1。

三、Jev 的三种基本原语

TypeSafe 官方文档将 Jev 的问题接口归纳为三种原语。它们看起来简单,但正是“可约束、可校验、可被代码直接消费”的基础。

原语回答的问题典型输出适合场景
Choice从有限选项中选一个选项、各选项概率、置信度部门路由、工具选择、下一步动作
Score在文字定义的量表上评分连续或离散分数及分布情绪、复杂度、风险、优先级
Noul一个是/否问题0 到 1 的概率是否退款、是否危险、是否完成

Choice 的答案空间通常由调用方显式提供,官方资料提到最多可配置 255 个选项;Score 则允许模型在量表之间给出更细的数值,例如 1.4,而不是被迫四舍五入到某一档。多个问题可以在一次请求中并行评估,例如同时询问“应该由哪个团队处理”“客户有多生气”“是否明确要求退款”。

四、为什么 Jev 可能更快:从自回归生成到受限决策

1. LLM 的瓶颈:逐 token 生成

自回归 LLM 生成长度为 T 的答案时,需要重复进行多轮解码:

\( P(y_{1:T}\mid x)=\prod_{t=1}^{T}P(y_t\mid y_{<t},x) \)

每一步都要从完整词表中选择下一个 token。输出越长,延迟越高;如果还要求 JSON,就必须生成括号、键名、引号和字段值,任何一步出错都可能导致解析失败。

2. Jev 的思路:一次前向传播,直接对答案空间打分

在受限决策中,答案集合是已知的。模型可以对候选答案直接计算 logits,再在候选集合上做归一化:

\( p_i=\frac{e^{z_i}}{\sum_{j=1}^{K}e^{z_j}},\quad i\in\{1,\ldots,K\} \)

这里的 K 是候选答案数量,z_i 是对应分数。程序拿到概率最高的候选即可执行下一步,不必等待模型生成一段文本。

社区对 Jev 的端侧复现进一步提出了一个工程假设:可以把多个问题共享的 KV-Cache 广播给各个问题头,再对候选 token 做词表切片,从而将“多个字段的判断”并行化。这个解释与受限分类器的常见实现相符,但由于 Jev 权重和内部架构没有公开,它属于合理的逆向推测,不应当当作官方实现细节。

在底层逻辑上,Jev 彻底重构了模型的输入与输出范式:

  • 输入端:结构化上下文(JSON) + 决策需求定义。Jev 的定位不是处理自然语言闲聊,而是接收结构化的上下文与调用方严格定义的决策需求(例如:从有限的候选动作集合中单选、判断某个布尔条件是否满足、或输出特定区间的分数等)。
  • 推理端:隐状态直接打分。Jev 彻底跳过了一个 Token 一个 Token 的自回归生成文本的过程。它并不输出自由文本去拼出一个 JSON 字符串,而是直接利用模型内部隐状态对预设的类型化输出空间进行直接投影打分,一步到位输出结构化判定。
  • 训练端:RLCD(校准决策强化学习)。传统大模型普遍采用 RLHF(基于人类反馈的强化学习)一类的对齐训练,偏向于迎合人类的对话审美,常常导致模型为了“显得有说服力”而盲目自信、甚至编造胡话;而 Jev 采用的 RLCD(Reinforcement Learning for Calibrated Decisions),其核心思想是概率校准(Probability Calibration),让模型输出的得分具备严格的置信度含义,我们只要设定一个置信度的阈值,就可以筛除不确定的答案。

由于 Jev 未公开具体的训练方案与技术架构的细节,这里尝试用开源的 Qwen3.5 9B 模型进行了复现。核心点:在结构化决策与分类场景中,字段候选值通常是有界的。所以我们无需让模型逐 Token 自回归生成文本,可以通过“KV-Cache 广播 + 词表切片”,将所有字段候选值的选择并行化为O(1)次批量前向传播,这样就可以成倍提升吞吐与响应速度。

传统 LLM 自回归生成在每一步都会在全词表(以 Qwen 3.5 为例,全词表包含 248,320 个 Token,约 24.8 万)上进行采样,这赋予了模型“胡说八道”的自由度。Jev 模型将自由文本生成转化为封闭决策,仅在调用方提供的选项中进行选择,决策空间被严格约束在预定义集合内,模型从数学上就不可能产生未定义选项的幻觉。

传统 LLM 输出一个 JSON,需要逐 Token 吐出 {、"field_name":、, 等语法字符。模型一旦出现注意力衰减,就会漏掉字段、写错括号或者自行脑补多余的 Key。我们将模型的能力边界严格限定为“特征分类器”,剥离了其组织语法的职责;最后的 JSON 结构由宿主程序以确定性代码直接填装,使得 JSON 语法有效率 100% 保证,字段缺失率与语法错误降为绝对的 0。

传统 LLM 在自回归解码中,生成第 10 个字段时,输入不仅包含原始文档,还包含了前 9 个字段生成的输出。如果前面的字段存在微弱偏差,这个偏差就会污染 KV-Cache,引发自回归级联误差。通过 KV-Cache 广播 将各字段解耦,每一个字段的决策都是直接基于原始输入和 Schema 定义进行评估,字段与字段之间互不干扰,这样就切断了自回归误差放大链条。

3. 结构化输出错误为什么接近于零

如果模型负责生成 JSON,它需要同时承担“判断”和“语法组织”两项工作。Jev 则只负责在合法候选中做选择,最终 JSON 由 SDK 或宿主程序按照 Schema 组装:

\( \text{JSON}_{\text{final}}=\text{Serialize}(\text{Schema},\text{TypedAnswer}) \)

因此,“未定义选项”“漏字段”“括号不匹配”等语法型错误可以从生成环节被消除。这里的“0% 类型错误”是由输出约束和确定性序列化保证的;它不等于 0% 语义错误,模型仍可能在合法选项中选错。

五、RLCD 与概率校准:Jev 的核心价值不只是快

传统 RLHF 往往围绕人类偏好、可读性和对话体验优化;Jev 所强调的 RLCD(Reinforcement Learning for Calibrated Decisions,校准决策强化学习)则把重点放在“概率是否具有实际意义”上。

理想的校准意味着:在所有给出约 0.8 置信度的预测中,长期平均约有 80% 是正确的。一个常见的评估指标是期望校准误差(ECE):

\( \mathrm{ECE}=\sum_{m=1}^{M}\frac{|B_m|}{n}\left|\mathrm{acc}(B_m)-\mathrm{conf}(B_m)\right| \)

其中,样本按置信度划分为多个区间 Bm,比较每个区间的实际准确率与平均置信度。ECE 越小,说明概率越接近“可解释的风险信号”。

Choice 和 Score 通常返回完整概率分布。分布越集中,置信度越高;越平坦,说明模型更不确定。也可以用熵描述这种不确定性:

\( H(P)=-\sum_{i=1}^{K}p_i\log p_i \)

TypeSafe 文档强调,校准是大量预测上的统计性质,并不保证某一次回答一定正确。因此,置信度应该被当作“是否自动执行”的控制信号,而不是绝对真理。

RLCD 的具体原理:把“答对”与“知道自己有多确定”同时优化

TypeSafe 官方的 AI primer 明确了 RLCD 的目标:模型不生成文本,而是返回决策和概率;更高的概率应该对应更高的正确概率。官方公开资料目前没有披露完整的奖励函数、训练数据、模型头结构或优化超参数,因此下面分为“官方已确认”和“基于概率预测训练的工程解释”两部分。

官方已确认的训练目标

  • 输出契约不同:RLHF 主要优化人类偏好的自然语言回复,RLVR 主要优化可验证任务的结果,RLCD 则优化类型化决策和校准概率。
  • 概率必须可解释:一批预测中,给出 0.2 概率的事件应大约有 20% 发生,给出 0.8 概率的事件应大约有 80% 发生。
  • 面向软件使用:概率不是展示给用户看的装饰,而是让代码决定自动执行、请求确认或升级人工的控制信号。
  • 不是单次正确率保证:校准描述的是一组预测的统计关系,不能保证某一个样本一定正确。

一个可理解的 RLCD 训练流程

从机器学习角度,可以把 Jev 的决策模型抽象成 pθ(a|x,q):给定状态 x 和问题定义 q,模型参数 θ 输出各合法答案的概率分布:

\( p_{\theta}(a\mid x,q),\qquad a\in\mathcal{A}(q) \)

一次训练样本不仅包含“正确答案” y,还包含该答案是否真实发生、是否满足业务结果等可验证 outcome。训练过程大致可以理解为:

  1. 构造决策样本:从历史工单、工具调用、网页状态或人工标注中得到状态 x、问题 q、正确答案 y 和最终 outcome。
  2. 产生候选概率:模型对有限答案集合计算 logits,并通过 Softmax 得到概率分布。
  3. 同时评价准确性与概率质量:正确答案应获得较高概率;错误答案或不确定样本不能被赋予虚高概率。
  4. 用强化学习继续优化:把“决策正确”“概率与长期结果一致”“答案符合类型约束”等信号组合成奖励,更新策略模型。
  5. 在独立校准集上验证:检查 ECE、Brier score、可靠性曲线、选择性风险和不同场景的升级率,而不仅是 top-1 accuracy。

奖励信号可能如何组成

TypeSafe 没有公开 RLCD 的精确 reward 公式。对“校准决策强化学习”最合理的工程化理解,是同时使用正确性奖励和概率评分规则。常见的概率损失包括对数损失:

\( L_{\mathrm{log}}=-\frac{1}{N}\sum_{n=1}^{N}\log p_{\theta}(y_n\mid x_n,q_n) \)

以及 Brier score:

\( L_{\mathrm{Brier}}=\frac{1}{N}\sum_{n=1}^{N}\sum_{k=1}^{K}(p_{n,k}-\mathbb{1}[y_n=k])^2 \)

在二分类 Noul 问题中,Brier score 可以简化为:

\( L_{\mathrm{Brier}}=\frac{1}{N}\sum_{n=1}^{N}(p_n-y_n)^2 \)

一个用于理解的组合目标可以写成:

\( L_{\mathrm{total}}=L_{\mathrm{decision}}+\lambda L_{\mathrm{calibration}}+\beta L_{\mathrm{constraint}} \)

其中 Ldecision 衡量是否选对,Lcalibration 衡量概率是否与实际结果一致,Lconstraint 则惩罚非法选项、类型错误或违反 Schema 的输出。上式是解释 RLCD 的概念模型,不是 TypeSafe 已公布的内部公式。

RLCD 与 RLHF、RLVR 的区别

方法主要优化对象典型奖励适合的输出
RLHF人类偏好、可读性、遵循指令偏好模型分数聊天回复、解释、写作
RLVR可验证答案或推理结果数学/代码测试器是否通过推理、数学、代码任务
RLCD决策正确性与概率校准结果正确、概率评分合理、输出受约束Choice、Score、Noul 等软件决策

这也解释了为什么 RLHF 模型可能“说得很像正确答案”,却不适合直接承担自动化决策:它被奖励的是让人满意的表达,而不是让概率在长期统计上可信。RLCD 的目标是让模型在不确定时保留不确定性,而不是用流畅语言掩盖信息不足。

如何测量 RLCD 是否真的有效

  • 准确率:答案是否选对,适合衡量决策能力,但不能单独说明置信度是否可信。
  • ECE:概率分桶后比较平均置信度与实际准确率。
  • Brier / Log loss:同时惩罚错误答案和过度自信。
  • 可靠性曲线:横轴是预测概率,纵轴是实际发生率,理想情况接近对角线。
  • 选择性风险:只自动执行高置信度样本时,错误率是否显著下降。
  • 覆盖率—风险曲线:在自动处理更多样本与保留较低错误率之间寻找平衡。

例如,系统可以定义自动执行集合:

\( S_{\tau}=\{x:c(x)\ge\tau\} \)

然后计算该集合上的选择性风险:

\( R(\tau)=\Pr(\hat{y}\ne y\mid x\in S_{\tau}) \)

如果提高阈值 τ 后,自动处理覆盖率下降但风险稳定下降,说明置信度可以作为有效的治理开关。真正上线前,还应按业务动作分别校准阈值,而不是全系统共用一个数字。

六、最重要的工程模式:置信度门控与级联路由

一个可靠的 Jev 工作流通常不是“模型说什么就执行什么”,而是让代码根据置信度和操作风险分流:

  1. 准备状态:用户消息、页面元素、交易记录、策略规则或工具结果。
  2. 并行提出多个 Choice、Score、Noul 问题。
  3. 读取答案、概率分布和置信度。
  4. 由确定性代码执行阈值判断。
  5. 高置信度且低风险时自动执行;中等置信度时请求确认或补充信息;低置信度或高风险时升级人工或调用更强的 System 2 模型。

可以形式化为:

\( a=\begin{cases} \text{自动执行}, & c\ge\tau_{\text{auto}} \land r\le r_0 \\ \text{请求确认/补充信息}, & \tau_{\text{review}}\le c<\tau_{\text{auto}} \\ \text{升级人工或 System 2}, & c<\tau_{\text{review}} \end{cases} \)

阈值不应只有一个。只读操作可以使用较低阈值;删除、支付、下单、发送邮件等不可逆操作应使用更高阈值,并配合人工确认。

七、Jev 的典型应用场景

  • Browser Use / Computer Use:先扫描真实存在且可交互的 DOM 或无障碍节点,再让 Jev 从候选动作中选择点击、输入、滚动或结束。模型不生成不存在的选择器,能显著减少“选择器幻觉”。
  • 邮件、工单和客服路由:并行判断部门、紧急程度、垃圾邮件概率、退款意图和是否需要人工介入。
  • Agent Harness:判断任务是否完成、是否卡住、是否偏离目标、工具调用是否危险、哪些上下文应该保留。
  • 模型与工具路由:在每个回合开始时选择便宜模型、强模型、搜索工具或专用子 Agent。
  • 内容审核和数据筛选:对新闻、帖子、论文摘要、商品或文档进行高频分类、评分和过滤。
  • 实时控制和游戏:对模拟器状态、游戏状态或设备状态进行低延迟动作选择。交易、支付等高风险场景必须采用 advisory 或人工确认模式。

这些场景的共同点是:判断频率高、答案空间窄、延迟或成本敏感,而且最终动作可以由程序执行。它们不是开放式写作、代码生成或长链推理。

八、社区端侧复现说明:哪些可以复现,哪些仍是推测

APUS AI 实验室的文章基于 Qwen3.5-9B 等开源模型,尝试复现 Jev 的关键思想,并开源了 fast-browser-use。其路线包括:候选动作枚举、单 token logits 决策、KV-Cache 广播、受限动作空间和 Harness 防护。测试显示,在 Apple M2 Pro、MLX 和 4-bit 本地权重上,多个浏览器任务可以在数秒到几十秒内完成。

这类项目证明的是“受限决策模型”这一范式可以在开源模型上落地,并不等于复现了 Jev 的权重、训练配方或全部性能。社区文章中的速度、准确率和成本数字属于特定硬件、页面和实现下的实验结果,不能直接与 TypeSafe 的云端基准横向等同。

九、Jev 的优势

  • 低延迟:避免长文本自回归,适合实时循环和高频 Agent 步骤。
  • 低成本:官方公开价格曾宣传为输入每百万 token 约 0.042 美元、输出免费;具体价格和可用性应以当前控制台为准。
  • 类型安全:答案空间由调用方定义,JSON 由程序生成,结构化解析错误可被系统性消除。
  • 天然可并行:一次调用可同时询问多个独立问题,适合扇出式评估。
  • 置信度可用于治理:概率和置信度让自动执行、人工复核和升级模型之间有明确边界。
  • 便于审计:问题定义、候选集合、模型答案、概率、阈值和最终动作都可以记录为 Trace。

十、局限与风险:Jev 不是什么

  • 不是生成模型:不能替代对话、写作、代码生成或复杂解释。
  • 没有主动世界知识:它只判断传入的状态,不会自动浏览互联网或调用工具;信息收集必须由外部程序完成。
  • 概率不等于正确:校准是群体统计性质,单次预测仍可能错误。
  • 强依赖问题设计:如果候选选项遗漏了正确答案,模型只能在错误的集合中做选择。必要时应加入“其他/不确定”选项。
  • 闭源与供应商依赖:权重和完整训练细节未公开,延迟、价格和配额可能变化。
  • 高风险动作不能只看模型:支付、交易、删除、外发消息等必须有确定性规则、幂等保护、二次确认和审计。

十一、如何设计一个可靠的 Jev 问题

  1. 把问题写成一个原子判断,不要把规划、解释和执行混在一起。
  2. 显式列出合法答案,并加入 other、unknown 或 need_human 等兜底选项。
  3. 让状态尽量结构化,去掉与当前问题无关的上下文。
  4. 一次并行询问多个相互独立的问题,减少往返。
  5. 为每类动作建立独立阈值,并用离线标注集校准。
  6. 把 Jev 的答案、置信度和最终动作全部写入 Trace,便于回放和误差分析。
  7. 对副作用动作使用外部状态断言,例如 URL、页面标题、数据库状态或业务回执,而不是把模型返回的 DONE 当成事实。

十二、一个混合 Agent 架构示例

用户请求
  ↓
System 2:理解目标、制定计划
  ↓
程序收集状态(页面、工具结果、权限、策略)
  ↓
Jev:Choice / Score / Noul 并行判断
  ↓
确定性代码:阈值、权限、幂等、审计
  ├─ 高置信度 + 低风险 → 自动执行
  ├─ 中等置信度 → 请求确认或补充信息
  └─ 低置信度/复杂情况 → 升级人工或 System 2
  ↓
外部状态断言与 Trace 记录

这个架构的关键不是“让 Jev 接管 Agent”,而是把它放在最适合的位置:成为快速、局部、可审计的决策层。主 LLM 负责方向,程序负责边界,Jev 负责高频判断。

十三、Jev 技术架构细节:如何一次回答多个问题并提升吞吐

下面这套架构是根据 TypeSafe 对 System One 的公开描述,以及社区端侧复现文章所还原出的工程模型。TypeSafe 尚未公开 Jev 的权重和完整实现,因此其中涉及 KV-Cache 广播、Suffix Batch 和候选 token 映射的部分,应理解为“高度合理的实现路径”,而不是官方确认的内部代码。

1. 输入不是一段提示词,而是 Context + Schema

调用方首先准备两类数据:

  • Context:当前业务状态,例如工单正文、用户资料、页面 DOM 摘要、交易记录或游戏状态。
  • Schema:要问的问题、问题类型和合法答案集合。例如 team ∈ {billing, technical, account}、risk ∈ {low, medium, high},以及若干 Noul 和 Score 问题。

可以形式化为:

\( Q=\{q_1,q_2,\ldots,q_M\},\qquad q_i=(\text{name}_i,\text{type}_i,\mathcal{A}_i) \)

其中 M 是一次请求中的问题数量,𝒜i 是第 i 个问题的合法答案空间。关键点是:这些问题可以相互独立地基于同一份 Context 判断,而不需要让第 2 个问题读取第 1 个问题生成的文本。

2. 单次 Prefill:Context 只编码一次

在普通自回归 LLM 中,每个字段的生成过程可能重复携带上下文,或者在生成后续字段时继续依赖前面字段的 KV-Cache。Jev 式架构把共享的 Context 前缀单独处理:模型先对 Context 做一次 Prefill,得到初始 Key/Value 缓存。

\( (K_0,V_0)=\mathrm{Prefill}(X_{\text{context}}) \)

如果有 M 个问题,最昂贵的上下文编码只发生一次。后续每个问题只追加自己的问题前缀、字段名和候选答案提示。

3. Suffix Batch:把多个问题组织成批次

为每个问题预先构造一个短的 suffix(后缀提示),例如 field="team":、field="urgent":、field="refund":。这些 suffix 的作用不是让模型生成完整 JSON,而是把模型引导到对应字段的决策位置。

随后将同一个 Context 的 KV-Cache 沿 batch 维度广播 M 份:

\( (K_0,V_0)\;\xrightarrow{\text{broadcast along batch}}\; (K_0^{(1:M)},V_0^{(1:M)}) \)

第 i 个 batch 样本只附加第 i 个问题的 suffix。这样做的效果是:共享上下文不重复计算,问题之间彼此解耦,同时又可以交给 GPU、NPU 或高效 CPU 内核进行批量矩阵运算。

4. Single Batched Forward Pass:一次前向得到 M 个问题的 logits

完成广播和 suffix 拼接后,系统执行一次批量前向传播:

\( Z=\mathrm{Forward}\left(\mathrm{Batch}\left[X_{\text{context}}+S_1,\ldots,X_{\text{context}}+S_M\right]\right) \)

输出 Z 包含每个问题在“下一个决策位置”上的 logits。传统做法可能需要为 M 个字段分别调用 M 次推理;批处理后,它们共享一次 kernel 调度和一次上下文计算,工程上可以显著提升吞吐。

需要准确理解“复杂度降低”的含义:它不是把所有计算神奇地变成常数,而是把最昂贵的共享前向从 M 次重复执行变成 1 次,并将问题特有的工作放入并行 batch。理想情况下,端到端延迟更接近一次前向加上批量宽度带来的并行开销,而不是 M 次串行延迟。

若串行方案的近似耗时为:

\( T_{\text{serial}}\approx M(T_{\text{prefill}}+T_{\text{decode}}) \)

而共享 Prefill、批量决策的方案近似为:

\( T_{\text{batched}}\approx T_{\text{prefill}}+T_{\text{batched\_forward}}+T_{\text{assemble}} \)

则理论加速比可以写成:

\( S=\frac{T_{\text{serial}}}{T_{\text{batched}}} \)

当 M 较大、Context 较长且硬件具备批处理能力时,S 会明显增大;当 Context 很短、问题数量很少或 batch 已经受限于内存带宽时,加速比则会下降。

5. 候选子词表 Logit 切片:不再扫描完整词表

普通语言模型的输出层通常面对完整词表 V。但在 Jev 的 Choice 问题中,调用方只允许模型从 K 个候选中选择,其中 K≪V。因此,系统可以先把每个合法选项映射到 tokenizer 中的候选 token,再只保留这些位置的 logits:

\( z_{\text{choice}}=Z[:,\mathcal{I}_{\text{valid}}],\qquad |\mathcal{I}_{\text{valid}}|=K\ll |V| \)

然后在候选集合内部重新 Softmax:

\( p(a_i\mid X,Q)=\frac{\exp(z_i)}{\sum_{j=1}^{K}\exp(z_j)} \)

这样可以避免让模型在数万或数十万 token 中自由采样,既减少输出层计算和内存搬运,也从结构上阻断“生成未定义选项”的路径。工程上应特别注意 tokenizer 校验:一个业务选项未必对应一个单独 token,必要时需要使用唯一的短标签(例如 A、B、C),再由程序把标签映射回业务值。

6. 多个问题的输出如何组装

Jev 或类似受限决策模型的核心输出通常不是一段完整 JSON,而是“每个问题一个结构化结果”。宿主程序负责把这些结果放回 Schema 定义的字段中。

可以把第 i 个问题的结果表示为:

\( r_i=\{\text{name}:n_i,\text{type}:t_i,\text{value}:a_i,\text{probabilities}:P_i,\text{confidence}:c_i\} \)

之后通过确定性映射函数把所有结果组装成最终对象:

\( R=\mathrm{Assemble}(\mathrm{Schema},r_1,r_2,\ldots,r_M) \)
// Schema(示意)
{
  "team":  { "type": "choice", "options": ["billing", "technical", "account"] },
  "score": { "type": "score",  "min": 0, "max": 2 },
  "refund":{ "type": "noul" }
}

// 模型只返回各问题的决策分布
{
  "team":   { "choice": "billing", "probabilities": {"billing": 0.91, "technical": 0.06, "account": 0.03}, "confidence": 0.91 },
  "score":  { "value": 1.4, "probabilities": {"0": 0.08, "1": 0.22, "2": 0.70}, "confidence": 0.70 },
  "refund": { "probability": 0.96 }
}

// 宿主程序再添加策略字段
{
  "team": "billing",
  "frustration_score": 1.4,
  "refund_requested": true,
  "route": "human_review",
  "reason": "refund probability is high but operation is high-risk"
}

最后三个字段 route、reason 和是否执行,并不是 Jev 自由生成的文本,而是程序根据概率、风险等级、权限和业务规则计算出来的。这样可以保证:模型负责判断,程序负责字段完整性、默认值、类型转换、阈值和副作用。

7. Choice、Score、Noul 的组装差异

类型模型侧输出宿主程序组装
Choice候选标签或索引、候选概率分布标签映射为业务枚举值,计算置信度和路由
Score量表各等级的分布或期望分数转换为业务分数、优先级或风险等级
Noul条件成立的概率按阈值转换为 true、false 或 need_review

例如 Noul 不应简单地写成“概率大于 0.5 就执行”。更安全的逻辑是把概率阈值和动作风险同时纳入:

\( \text{allow}=\left(p_{\text{allow}}\ge\tau_{\text{allow}}\right)\land\left(r_{\text{action}}\le r_{\text{max}}\right) \)

8. 为什么这套架构能减少级联误差

在传统 JSON 自回归生成中,第 i+1 个字段的输入往往包含第 i 个字段已经生成的文本。一旦前一个字段出现偏差,后续 KV-Cache 可能继续携带这个偏差,形成级联错误。

批量受限决策则让每个问题直接基于原始 Context 和自己的 Schema 分支:

\( a_i=f_i(X_{\text{context}},q_i),\qquad a_i\perp a_j\mid X_{\text{context}}\; (i\ne j) \)

这里的条件独立是架构目标,而不是说业务语义一定独立。程序仍然可以在第一批结果出来后,再有条件地发起第二批问题;但在同一批次中,一个字段不会因为另一个字段生成了错误文本而被迫污染。

9. 吞吐提升不只来自模型,还来自调度和内存布局

  • 减少重复 Prefill:长 Context 只编码一次。
  • 批量矩阵乘:多个问题共享一次 forward 的 kernel 调度,提升硬件利用率。
  • 缩短解码长度:从生成几十到几百个 JSON token,变成一次或少量决策 token。
  • 候选集合裁剪:只处理合法答案对应的 logits,减少无关词表计算。
  • 字段解耦:问题可以并行完成,不必等待前一个字段生成结束。
  • 宿主侧零 token 组装:JSON 序列化、默认值和字段映射由普通代码完成,几乎不占用模型推理时间。

不过,实际吞吐仍受 Context 长度、batch 大小、设备显存、内存带宽、网络 RTT、SDK 序列化和业务后处理影响。因此“成倍提升”应通过真实任务基准验证,而不能仅由单次 logits 计算推导出来。

十四、速度与成本数据应该如何解读

TypeSafe 和社区资料中出现过 70–500 毫秒延迟、比传统 LLM 快几十到数百倍、成本低几十到数百倍等数字。这些数字很有吸引力,但应视为厂商或项目方在特定条件下的自测结果:硬件、网络、批量大小、输入长度、对比模型、是否包含编排和浏览器等待,都会显著影响结果。

工程上更可靠的做法是针对自己的任务建立基准:固定数据集,分别测量端到端延迟、模型延迟、准确率、校准误差、升级率、单位任务成本和副作用错误率。只有当 Jev 在真实流量和风险约束下仍然改善整体指标,才算产生了实际收益。

十五、结论:Jev 代表一种“决策优先”的 AI 工程范式

Jev 最值得关注的地方,不只是某个 API 有多快,而是它重新划分了 AI 系统中的职责:不是所有智能都需要通过生成文字来表达。大量软件任务真正需要的是“选哪个”“是否允许”“风险多高”“是否需要升级”,这些判断可以拥有受限的答案空间、显式的概率和明确的代码边界。

如果把传统 LLM 看作负责深思熟虑的 System 2,那么 Jev 就是负责快速分诊和局部控制的 System 1。最有前景的落地方式,是让两者形成级联:Jev 先以低延迟完成分类、路由和护栏检查;复杂、模糊或高风险任务再交给更强模型或人工。

现阶段,Jev 仍处于早期阶段,官方模型闭源,性能数据主要来自厂商和社区自测。建议从范围明确、可回放、风险较低的任务开始试用,例如工单路由、工具选择、Agent 完成检测和浏览器候选动作选择,并用自己的数据验证准确率、校准和成本。真正成熟的 Jev 系统,最终应当是“模型做判断,代码守边界,外部状态作验收”。

参考资料

PESQ、STOI、SI‑SDR 语音增强评价指标

文章:https://mp.weixin.qq.com/s/DM1FSdVinKyI_IYJ_e9dbg

语音增强评价方法(2):PESQ、STOI、SI-SDR 分别在测什么

做语音增强时,模型输出更干净,未必听感最佳。本期介绍以下评价指标:PESQ、STOI 与 SI-SDR 分别从感知质量、可懂度和信号重建误差三个角度评价语音增强的效果,并使用Github开源代码对示例音频进行计算评价(附Github源码链接),让大家对这几个指标有个大致的认识。

图 1:PESQ、STOI 与 SI-SDR 面向的是同一组参考/增强语音,但分别回答感知质量、语音可懂度与信号重建误差的问题。

1. PESQ 评价:与参考音频感知质量的相近程度

PESQ(Perceptual Evaluation of Speech Quality)是全参考语音质量指标,它需要一段干净参考语音和一段经过系统处理后的语音结果,用感知模型估计两者差异对听感质量的影响。它最初面向窄带电话网络、语音编解码和传输链路的端到端质量评估;宽带扩展也常被用于语音增强实验。

从计算过程来看,PESQ 先对参考语音与处理后的语音做时间对齐和电平处理,再映射到近似人耳感知的表示,聚合时频域中的感知扰动,最后输出一个质量预测分。需要注意的是参考和待测语音需要是同一句内容且需要对齐。可以把 PESQ 的处理过程概括为:

参考语音 + 处理后语音
        ↓
时间对齐与电平处理
        ↓
听觉频带 / 响度映射
        ↓
计算对称与非对称感知扰动
        ↓
聚合为 PESQ 质量预测分

Github源码链接:https://github.com/audiolabs/PESQ

2. STOI 评价:语音可懂度

STOI(Short-Time Objective Intelligibility)也是全参考指标,但侧重点偏向于“语音可懂度”。它由 Taal 等人在噪声与时频加权失真语音的可懂度预测任务中提出,目标是让自动分数与听音实验中的语音可懂度趋势相关。其核心思路是,比较干净语音与处理后语音在短时、分频带区域内的时间包络相关性,核心计算可以写成“分频带、短时间段相关系数的平均值”:

STOI = 平均值 { corr(xⱼ,m, y′ⱼ,m) }

其中,xⱼ,m 是第 j 个三分之一倍频程内、以第 m 帧为末尾的一段参考语音包络;y′ⱼ,m 是与之对应、经过归一化和限幅处理后的增强语音包络;corr(·) 是两段包络的皮尔逊相关系数。也就是说,STOI 不直接比较逐个波形采样点,而是观察关键频带的短时能量起伏是否仍与参考语音保持一致。

从定义也可以看出来,STOI 更在意辅音、元音和音节节奏等承载内容的短时结构有没有被破坏。其计算时会去除低能量静音帧,将信号变换到短时频带表示,按三分之一倍频程汇聚包络,并在短时间段内计算参考与处理结果的相关性后求平均。同一组语料下,分数通常接近 0 到 1,数值更高通常表示预测可懂度更好。有时候一个模型可能把背景压得很低,STOI 却没有提升,甚至下降。原因往往是算法同时削弱了弱辅音、词尾或瞬态结构。

Github源码链接:https://github.com/mpariente/pystoi

3. SI-SDR评价: 尺度不变信号失真比

SI-SDR(Scale-Invariant Signal-to-Distortion Ratio,尺度不变信号失真比)常用于语音分离与端到端语音增强。它将估计语音 ŝ 投影到目标语音 s 的方向上,先允许一个最优的整体缩放,再把剩余部分看作失真。与直接比较幅度的指标不同,整体音量被放大或缩小本身不会改变 SI-SDR,这正是“scale-invariant”的含义。其常用定义如下,其中 ŝᵀs 表示内积,||·||² 表示信号能量:

α = (ŝᵀs) / ||s||²
e_target = αs
e_res = ŝ − e_target

SI-SDR = 10 log₁₀ (||e_target||² / ||e_res||²)

因此它评价的是:在忽略一个全局增益差异后,估计结果中有多少能量落在目标语音方向上,剩余误差有多少。 分数越高,表示与目标信号的投影关系越好。SI-SDR 对训练和评测都很方便,尤其适合有明确干净目标或分离目标的监督任务。

Github源码链接:https://github.com/fgnt/pb_bss/blob/master/pb_bss/evaluation/module_si_sdr.py

4. 指标比较

指标最主要的测量对象更适合回答的问题容易遗漏的方面
PESQ感知质量预测听起来是否更接近干净语音语义是否可懂、分布外伪影
STOI短时包络结构与可懂度趋势语音内容是否仍容易辨认自然度、残余噪声是否令人舒适
SI-SDR与目标信号的投影误差信号重建/分离误差是否减小人耳感知质量与主观偏好

5. 评价示例

本文以一个示例音频(包括1个参考干净语音、相对应的1个经过降噪处理后的语音, 48k采样率)进行3个指标的计算,示例音频时域图如下:

参考干净语音时域图与频谱图

降噪处理后的语音时域图与频谱图

3个指标的计算结果如下:

指标时延计算未时间对齐时间对齐后
PESQ0.04s—1.8573
STOI0.04s0.20490.8418
SI-SDR0.04s-35.2156 dB6.7163 dB

3个指标都需要对音频进行时间对齐的,其中PESQ由于源码内部做了时间对齐,所以PESQ结果暂时只有对齐后的结果,没有额外做“未时间对齐的结果”。从另外两个指标可以看到,时间对齐与否对结果的影响还是很大的。其中 PESQ 越接近分值 5,STOI越接近 1,SI-SDR越大,通常代表结果越好。

图 2:示例音频存在 0.04 s 时延。对齐前后的 STOI 和 SI-SDR 差异表明,评测前必须先处理时间错位。

6. 小结

PESQ、STOI、SI-SDR 并非三种对同一件事的重复评分:PESQ 侧重预测感知质量,STOI 侧重语音内容的可懂度,SI-SDR 侧重与目标语音的尺度不变重建误差。评测语音增强算法时,先明确应用是追求通话体验、内容可懂、信号分离,还是它们的组合;再用相应指标观察代价,并把异常样本带回试听和真实链路验证。

参考资料

  1. 1. ITU-T P.862, Perceptual evaluation of speech quality (PESQ): An objective method for end-to-end speech quality assessment of narrow-band telephone networks and speech codecs. ITU 页面。
  2. 2. C. H. Taal, R. C. Hendriks, R. Heusdens, J. Jensen, An Algorithm for Intelligibility Prediction of Time–Frequency Weighted Noisy Speech, IEEE/ACM TASLP, 2011. DOI。
  3. 3. J. Le Roux, S. Wisdom, H. Erdogan, J. R. Hershey, SDR – half-baked or well done?, ICASSP 2019. 论文。

从自己出题到自己选题:耶鲁新方法让大模型 Self-Evolution 又进一步

摘自:https://mp.weixin.qq.com/s/eR1m3_i9c24fN0HPHSNaYw

关键词:Self-Evolution、Self-Improvement、INFUSER、Influence Score、AI4AI、合成数据、课程学习

大模型正在越来越会“自己训练自己”。没有足够的人工标注数据?那就让模型自己出题、自己做题,再通过强化学习继续训练自己。这样的 Self-Evolution / Self-Improvement 路线,正在成为近期 AI4AI 中越来越重要的方向。

但这里藏着一个关键问题:

模型自己生成 100 万道题,它怎么知道其中哪些题真的值得学?

一道题很难,不代表它有用;模型做错一道题,也不意味着训练这道题就一定能让模型变强。

来自 Yale、Stanford、UChicago、UCSD 等机构的研究者提出了 INFUSER(Influence-Guided Self-Evolution),给出了一个很有意思的答案:

不要只看一道题难不难,而要看:训练完这道题之后,模型是不是真的朝着我们希望的方向变强了。

换句话说,INFUSER 想让 AI 不只是会“自己出题”,还开始学会判断:什么才是自己当前最值得学的东西。

01|Self-Evolution 最大的问题:什么才算一道“好题”?

现在不少 Self-Evolution 方法,基本遵循这样的闭环:

模型生成问题 → 模型回答 → 根据回答结果做强化学习 → 得到更强的模型 → 再继续生成新问题。

真正麻烦的地方在于:我们应该鼓励模型生成什么样的问题?

一种直觉答案是,生成那些“刚好有点难”的问题。如果一道题模型每次都能做对,说明太简单;如果永远做不出来,又可能太难。因此,一些已有方法会寻找模型正确率处于中间区域的问题,把 Difficulty 当成“训练价值”的代理指标。

Hard ≠ Useful。

模型做不出一道题,可能是缺少某种推理能力,也可能只是因为题目写得不好、答案有问题、表述存在歧义,甚至问题本身过于偏门。这样的题当然很“难”,但反复训练未必能提升我们真正关心的能力。

于是 INFUSER 把问题从:

“这道题对模型来说难不难?”

换成了:

“如果模型训练这道题,它会不会真的变得更好?”

这就是整篇工作的核心变化。

02|Influence Score:别看题目本身,看它把模型推向哪里

INFUSER 引入了一个核心概念:Influence Score(影响力分数)。

假设我们真正希望模型提升的是某一类目标能力。INFUSER 会保留一小批目标任务的 Dev Set,让模型在这些数据上计算一个目标梯度方向。可以把它粗略理解为:如果模型想在真正关心的任务上表现更好,那么参数应该朝哪个方向更新。

接下来,Generator 生成一道新的训练题,Solver 回答这道题并据此学习,同样产生一个参数更新方向。系统要比较的,就是这两个方向到底有多相似。

cos(g_target, g_question) → 1

如果两个方向高度一致,说明训练这道题恰好让模型朝我们希望的方向前进,这是高价值训练数据。如果两个方向近乎垂直,题目可能很难,但对目标能力帮助不大;如果两个方向相反,训练甚至可能把模型带向错误方向。

因此,INFUSER 对“好数据”的定义发生了变化:

  • 传统指标:Difficulty、Correctness、Quality;
  • INFUSER 更关心:Learning Utility,即这条数据能否对当前模型产生有价值的学习更新。

03|一个 Generator,一个 Solver:两个模型一起进化

INFUSER 系统包含两个核心角色:

  • Generator:负责出题;
  • Solver:负责做题并学习。

两者最初可以来自同一个 pretrained model,但之后拥有独立的参数和优化过程。

整个训练过程可以概括为四步:

  1. 确定方向:用少量目标 Dev Set 计算 Target Gradient,告诉系统 Solver 最终应该朝哪里变强。
  2. 自动出题:Generator 从教材、科学文本、代码等未标注文档中生成 Question 和 Reference Answer。
  3. Solver 学习:Solver 回答问题,并通过强化学习更新能力。
  4. 反过来训练 Generator:比较每道题造成的 Solver 参数更新与 Target Gradient 的一致性,并把 Influence Score 作为 Generator 的奖励。

于是 Generator 会逐渐发现:“原来这种问题,对现在这个 Solver 最有帮助。”随后,它会倾向于产生更多类似的高价值训练数据,而 Solver 又会因为这些数据不断变强。

最终形成动态闭环:

Generator 出更合适的题 → Solver 变强 → Solver 的能力边界变化 → Generator 重新调整 curriculum → Solver 再继续提升。

这就是 INFUSER 所说的 Co-Evolution。

04|它追求的不是“越来越难”,而是“现在最值得学”

我们很容易把 Self-Improvement 理解成:模型越来越强,于是给自己生成越来越难的问题,再继续把自己练得更强。但 INFUSER 的观点并不是这样。

最难的题,不等于当前最值得学的题。

假设一个模型当前的能力大致如下:

领域当前能力
微积分90%
概率论70%
组合数学40%
拓扑学10%

如果只根据 Difficulty 生成数据,Generator 很可能不断给模型出它完全不会的拓扑学难题。但这些问题距离模型当前能力边界太远,并不一定是最高效的学习材料。

Influence-based Generator 可能发现:当前训练一些中等难度的组合数学问题,反而最能推动整体推理能力提升。

这很像现实中的优秀老师。优秀的老师并不是永远给学生出最难的题,而是知道:这个学生现在到底应该做什么题。

从这个角度看,INFUSER 中的 Generator 已经不只是简单的 Data Generator,而开始像一个 Adaptive Teacher。

05|为什么 Influence Score 没有一路上涨?

既然 Generator 越来越会生成“有价值的问题”,直觉上我们可能认为 Influence Score 应该随训练一路上涨。但论文中的结果并不是这样。

在完整的 INFUSER 训练过程中,Influence Score 早期为正,随后有所下降,并长期在接近 0 的区域附近波动。这并不奇怪,因为 Generator 在学习,Solver 也在学习。

昨天对 Solver 非常有帮助的问题,今天可能已经被 Solver 掌握;今天的高价值数据,到了下一阶段又可能变得过于简单。Generator 实际上一直在追逐一个不断移动的目标:

当前这个 Solver,下一步到底最需要学什么?

作者还做了一个 control experiment:固定 Solver,也固定 document batch,只继续训练 Generator。此时“学生”不再变化,Generator 的 influence alignment 就明显提升。

这说明 Generator 确实可以学会生成更有价值的问题。完整系统中看不到 Influence Score 一路上升,并不是 Generator 没学会,而是 Solver 本身也一直在成长。这恰恰体现了 Co-Evolution:老师越来越会教,学生也越来越会学;学生变强之后,老师又必须调整下一阶段该教什么。

06|甚至,小模型老师可能比大模型老师更会教

论文比较了两种 Generator:一种是随着 Solver 一起进化的 8B Generator;另一种是能力更强、但始终被冻结的 32B Thinking Generator。

按照直觉,32B 模型本身更强,似乎应该更会生成高质量问题。但在 Math 和 Coding 等实验中,INFUSER 中持续 co-evolving 的 8B Generator 反而取得了更好的效果。

一个更聪明的老师,不一定比一个更了解学生当前状态的老师更会教。

32B Generator 可能知识更多、推理能力更强,但它并不知道现在这个 Solver 到底缺什么。INFUSER 的 Generator 却一直在接收直接反馈:“你刚才出的这道题,究竟有没有让这个学生朝正确方向进步?”

因此,真正重要的可能不只是 Strong Teacher,而是 Adaptive Teacher。

07|实验效果怎么样?

作者分别从 Qwen3-4B-Base 和 Qwen3-8B-Base 出发进行 Self-Evolution,测试覆盖 General Reasoning、Math、Physics、Medical、Coding 等多个方向,共 14 个 benchmark,并与 R-Zero、AZR、R-Few、SPICE 等方法进行比较。

以 Qwen3-8B 为例,在 General Reasoning 上的结果如下:

MethodAverage
Base34.43
R-Zero37.14
AZR37.61
R-Few38.88
SPICE38.75
INFUSER40.62

相比 Base,整体提升约 17.98%。一些单项 benchmark 的变化也比较明显:

  • SuperGPQA:30.62 → 37.77
  • OlympiadBench Math:40.36 → 50.24
  • HMMT:2.96 → 7.04

相比单纯生成更多数据,自动寻找“对当前模型最有学习价值的数据”,可能是 Self-Evolution 更关键的一步。

08|不过,它离“AI 完全自主进化”还有一步

不能把 INFUSER 理解成 AI 已经不需要任何人类信号、可以无限自我进化。它仍然依赖一个关键组件:Target Dev Set。

系统需要一小部分目标数据,通过这些数据计算 Target Gradient,从而告诉 Generator:我们最终希望 Solver 往哪个方向发展。实验也显示,Dev Set 太小时,估计出来的 Target Gradient 会更加 noisy,进而影响训练效果。

所以,更准确的描述是:

少量目标信号 + 大量无标注文档 + 自动生成训练 curriculum。

人类仍然需要回答“模型最终应该往哪里进化”,但一旦方向被给定,AI 开始尝试解决另一个过去高度依赖研究员的问题:

为了往这个方向变强,我下一步究竟应该学什么?

09|从 Data Generator,到 AI Training Scientist

如果只把 INFUSER 看成一种新的 synthetic data 或 RL 方法,可能低估了这项工作的意义。它背后体现的是一个更大的趋势:AI 开始参与“训练 AI”这件事情本身。

传统模型研发闭环大致是:

研究员观察模型 → 分析模型弱点 → 设计数据 → 训练 → Evaluation → 分析结果 → 再设计下一轮数据。

其中包含大量过去只能由 researcher 完成的判断:模型现在缺什么?什么数据最值得加入?下一轮应该训练什么能力?

INFUSER 自动化掉的是其中非常关键的一环:Curriculum Design。

Generator 不再只是批量制造 Question-Answer Pair,而是观察 Solver 当前的学习状态,通过真实的参数更新效果判断什么样的数据最值得当前模型学习。

于是它的角色开始从 Data Generator 逐渐走向 AI Training Scientist。

从更长远的 AI4AI / Self-Improving AI 视角看,完整闭环可能是:

发现问题 → 提出任务 → 生成数据 → 训练模型 → Evaluation → 分析结果 → 决定下一轮实验。

INFUSER 自动化的正是其中一个关键问题:下一步,到底应该让模型学什么?

10|最后

如果只记住 INFUSER 的一个观点,可以记住这一句:

Self-Evolution 的关键,不是让模型给自己出越来越难的题,而是让模型找到“当前最值得学的题”。

过去讨论 synthetic data 时,我们经常问:这条数据本身质量高不高?INFUSER 提供了另一种值得关注的视角:

所谓高质量训练数据,也许不存在完全脱离模型的绝对标准。真正重要的是,它能不能让“当前这个模型”朝我们希望的方向发生改变。

从 Data Quality 到 Learning Utility,从 Difficulty 到 Influence,再从简单的 Data Generator 走向根据模型状态动态调整 curriculum 的 Adaptive Teacher——这或许正是 Self-Improving AI 接下来最值得关注的一条路线。


论文:INFUSER: Influence-Guided Self-Evolution Improves Reasoning

微信公众号文章

原文:微信公众号文章