大数跨境

技术解读|在沙盒里打一万通电话:语音 Agent 的模拟训练场

技术解读|在沙盒里打一万通电话:语音 Agent 的模拟训练场 阿里语音AI
2026-11-03
4
导读:构建可执行的自进化沙盒,让语音 Agent 在模拟通话中反复试错,学习处理业务流程与真实交互中的复杂情况。

我们的语音模型要在真实电话里帮用户办事:改签一张机票、续一份车险、协商一笔逾期欠款。离线评测里,它的工具调用格式正确,业务规则也答得上来,但进入真实对话仍会出问题。

以一通模拟的航班改签电话为例。旅客先说:「我们两个人要一起走,尽量别拆到不同航班。」助手查询余票,发现原定时段的航班只剩一个座位,需要寻找其他方案。旅客接着补充:「我们到得不能太晚,落地后还要赶高铁。」核对后续车票信息时,旅客的声音突然中断,助手只听到半句「我们买的是……」。

这类问题考验的不只是模型是否掌握业务知识,还包括它能否应对真实通话中的断音、插话等情况。静态语料里的对话往往更加完整、有序,真实电话并不是这样。

为此,我们为语音端到端(S2T)模型的后训练构建了一套自进化语音 Agent 沙盒,让模型在"做了会真的发生"的环境里反复试错并获得反馈。沙盒承担两个角色:它是教师模型的演练场,批量产出带用户音频的示范轨迹,用于监督训练(SFT);也是被训模型的考场,每一次工具调用和回应都被自动评分,折算成强化学习(GRPO)的奖励信号。

(图 1:语音 Agent 沙盒的自进化闭环:从环境构建、仿真评分到模型训练)

整套系统是一条闭环(如图1):沙盒提供可执行环境,仿真产出轨迹与评分,训练据此更新模型;新模型回到仿真,暴露的问题再回流给环境:有问题的题目得到修复,过于简单的题目提高难度。下面按构建这条闭环时逐层解决的问题展开。

‍▎可执行环境:从开源生态到规模化构建

第一个问题是:题从哪来?

这里的一道题不是一句话,而是一个能真实运行的可执行环境(Domain):一组真实工具函数、一份业务规则(Policy)、一个有状态的数据库,以及一批任务。每个任务是一个四元组:用户目标、初始数据库状态、行为断言(逐条核对的行为检查项)、参考解法。工具必须真实执行,而非模型扮演:调用会真的改写数据库,后续查询也会读到改动,任务成败才有客观判据。

这样的环境靠手工搭建难以规模化,我们的解法是以开源生态为种子:

  • 开源工具定义提炼领域。系统性收集开源的工具与服务接口(API 文档、MCP 服务描述、函数调用规范),从中提炼覆盖多行业的领域候选。

  • Code Agent 自动构建环境。每个领域由一个代码 Agent 自动构建为可执行环境,工具、规则、数据库、任务一体生成。

  • 参考回放进行准入校验。环境进题库前,先回放参考解法证明每题可解,并校验规则与任务双向绑定:每条规则有题考查,每题断言都能在规则中找到出处。门禁不过的环境不进题库,否则后续模拟会把错题误判成模型的问题,难度信号从源头就被污染。

(图 2:沙盒展开,一个领域的静态组成与一次 rollout 的执行、评分和进化)

图 2 左侧是施工完成后的领域结构;右侧是一次模拟对话(rollout)从发生到评分的链路,正是下一节的主题。

‍▎自动评分与环境进化

domain初始化施工完成后,每道题被反复模拟:使用大模型模拟用户,与语音模型交互,直到用户觉得任务结束,期间语音Agent还会与沙盒环境交互,更新数据库状态。最后系统会对整个交互过程以及结果打分,打分由几道独立检查组成:

  • 终态校验:最终数据库状态是否符合目标

  • 写入白名单:这通电话只允许改动哪些字段,越权即否决

  • 行为断言判定:裁判模型逐条核对确认、核验、告知是否到位

  • 通用质量否决:复读、乱码、大段书面排版直接判零

题目的不同通过率反映了题目的相对难度,Code Agent 会分析当前rollout的结果,由此形成进化机制:

  • 稳定全对的题说明太简单,需要增加难度,修改题干或者增加业务规则的复杂度;

  • 持续全错的题先归因:题本身/业务规则有错(比如规则存在冲突)则需要修正,题正确但模型做不对的,才是有效难题;

  • 成功率在0%和 100% 之间的题目定义为边界题目,是适应当前语音模型能力的“好题”;

全部修复后,就完成了domain的一轮进化:简单题变得更少,难题质量更高。除此之外,我们还设计了全局难题库:反复错的题目提炼为可复用范式,例如"数据库记录反驳用户说法""多意图串行、办完一件才提下一件",指导后续不同领域的出题。

通过这一机制,题库能够根据模型表现持续调整,积累更有价值的难题。

‍▎多粒度 GRPO:会话、里程碑、轮次三级奖励

有了可靠的分数,接下来的问题是信用分配:一整通电话只给一个分,模型怎么知道是哪一步做对的?沙盒为此提供三个尺度的 rollout 与反馈:

(图 3:会话级、里程碑级、轮次级三级 GRPO 反馈)

  • 会话级(Conversation-level):跑完整段对话,按终局状态与全程行为打分,回答"事最终办成了没有"。

  • 里程碑级(Milestone-level):从关键中间节点分叉出多条后续路径,比较同一岔路口上不同选择的结局。例如改签时未核实身份就直接改日期,与先核实再操作,两条路径的终局差异直接标定这一步的价值。

  • 轮次级(Turn-level):固定完整对话上文,只生成当前一轮回复,用评分细则(Rubric)单独评价这一轮的话术质量与工具调用正确性,给口语表达、确认时机等局部行为直接监督。

三级反馈结合,全局任务策略与局部表达各自获得对应粒度的学习信号。

‍▎真实通话鲁棒性:打断、断音与声学劣化

到这里,沙盒中的对话仍然过于理想:用户把话说完、听得清、不插话、都配合。真实线路并非如此,因此我们将高频异常逐类加入仿真。

(图 4:用户打断、用户断音与声学劣化的模拟)

  • 用户打断(barge-in)。判别 Agent 在助手发言中段选截断点并插入打断语。这里有一个实测教训:让 Agent 自由选择打断类型时,它几乎全选"不耐烦催促",而真实线路高频发生的"嗯哼""OKOK"附和被双工模块误触发几乎不出现。改为程序按配比采样类型、Agent 只负责选点与生成后,覆盖才恢复正常。

  • 用户断音。用户说到一半信号中断,助手只听到前半句,音频同步截断。我们期望的是极简承接,比如「138,后面几位是?」。实测教师模型最初的简洁承接通过率只有约两成;生产监督数据时给教师加入简短的双工应对指导后升至近九成。该指导仅用于教师生产数据,评测与 GRPO rollout 中不使用,否则等于带答案考试。

  • 声学劣化。背景噪、风噪、闷麦、丢包断续、远场低增益等效果直接叠加到用户侧音频,模型听到的是真实的"脏"声音,而非文本上的噪声标注。

  • 不完美的用户。用户模拟器有人设、记忆与底线:会记错、会隐瞒,甚至编造说辞(如声称昨天刚交过费)。助手必须通过工具查询核实,而不是用户说什么就信什么。

所有轨迹连同用户侧音频一并落盘:监督训练获得完整对话与真实音频,GRPO 的每次试错也发生在接近真实的声学分布上。

‍▎外呼场景:目标、立场与底线

前面的任务由用户带着诉求来电,助手主要负责理解和执行。外呼(outbound)则把目标放到助手一侧:它要主动联系客户,促成续保、协商还款或约定到店。用户变成了被动执行的一方,并且可能不配合。模型要始终记得自己为什么打来,在对方犹豫、质疑甚至不配合时,继续寻找合规且可执行的下一步。这里训练的是长时间保持角色与目标、处理异议、推进协商的能力。

(图 5:外呼场景,助手与用户各有立场,目标要在协商中推进)

为此,外呼环境不能只有一个会拒绝的用户模拟器,还要让双方都能观察事实并采取行动:

  • 用户是另一方决策者,而不是等待被说服的道具。每个被叫用户有自己的预算、接受条件和挂断条件,也会坚持"月供不能超过实际承受能力"或"必须比别家的报价划算"。余额、预算、竞品报价等私人信息不由用户背诵,而是通过用户侧工具临时查询;用户真正接受方案后,还要用工具完成支付、转账等动作。助手不能只凭一句"我同意了"或"已经转了"就宣布成功,必须确认业务状态确实改变。

  • 持续推进不等于反复劝说。客户拒绝当前方案时,助手要判断该核实哪项事实、回应哪个异议、怎样调整方案,或者在当场无法完成时约定回拨。比如续保议价要按客户预算逐档调整,不能刚听到"贵"就跳到最低价;逾期协商要根据客户的真实偿还能力给出可执行的安排,而不是逼出一个无法兑现的承诺。

  • Policy 规定的不只是禁区,还有完整的推进路径。何时可以披露信息,报价必须依据哪次查询,优惠按什么顺序释放,哪些条件绝不能妥协,都有明确约束。评分既检查目标与数据库终态,也检查是否处理异议、是否越过必要步骤、是否过早放弃。目标是合规达成,不是不惜代价成交:编造金额、隐瞒限制或未经授权提交,即使最后成交也是失败。

  • 何时结束也是策略的一部分。通常由助手在目标完成或政策允许的推进手段用尽后收尾,用户也可以随时挂断。没有成交不必然是失败:助手守住底线、完成应有的告知和登记,即使客户生气挂断,也可能是正确结局;反过来,客户只是犹豫就草草收线,不能因通话更短而获得奖励。‍

▎结语

如果把沙盒理解成一套固定的 pipeline,会漏掉最重要的部分:环境本身一直在进化。模型稳定做对的题会被加难,持续失败的题需要区分环境缺陷与能力短板,验证过的难题再沉淀为新的出题机制。模型能力在变化,环境也要随之长出新的规则、状态和任务,持续提供有效的训练信号。

环境的动态性也发生在每通电话内部。用户有人设、记忆和立场,会查询自己的余额与预算,会在条件满足后接受方案,也会拒绝、反悔或挂断;助手的一次追问、报价或承诺,又会改变用户接下来的反应。插话、附和误触发、断音、风噪和闷麦进一步打乱了理想的发言节奏,同一项任务由此可以展开出不同的对话路径。模型需要理解此刻发生了什么,再决定下一句怎么说、下一步怎么做。

因此,我们持续建设的是一套能够产生新场景、容纳真实行为、根据训练反馈修正自身的动态环境。新的业务领域、新的用户行为和新观察到的语音异常不断进入其中,旧环境也在 rollout 中接受复查。沙盒的价值最终体现在这里:模型面对的世界可以越来越丰富,训练环境也能跟着它一起成长。



 往期推荐 
 Recommend 






























































                            
记得关注

【声明】内容源于网络
0
0
阿里语音AI
阿里巴巴通义实验室语音团队,基于多模态大模型语音识别、语音合成、自然语言理解等 AI 技术,实现“能听、会说、懂你”式的智能人机交互体验。
内容 159
粉丝 0
阿里语音AI 阿里巴巴通义实验室语音团队,基于多模态大模型语音识别、语音合成、自然语言理解等 AI 技术,实现“能听、会说、懂你”式的智能人机交互体验。
总阅读2.6k
粉丝0
内容159