10天,能从零做出一个什么样的AI语音助手?这个问题的答案,没有等到项目结束才揭晓。在VoiceForBharat版“10天语音代理”挑战中,我用10天时间完成了Jan Sathi(जन साथी)——一个面向金融服务场景的语音代理。从最初只打算做一个能说话的机器人,到最终集成了记忆、工具调用、呼出电话、人工升级、通话分析,甚至多代理协作……整个过程像一次不断扩边的技术实验。
挑战的目标从一开始就不是“造一个能说话的AI”。我想做的是:让用户通过自然的语音对话,就能查询金融服务和政府计划相关的信息。政府计划通常分散在多个网站,资格条件错综复杂,表单流程对普通人并不友好。语音的价值,正在于把这道查找、理解、判断的工序压缩成一句简单的话——“我有可能符合哪些政府补贴计划?”Jan Sathi就是围绕这个想法设计的。
![]()
随着挑战推进,Jan Sathi逐渐超出了“语音助手”的范畴。我陆续加入了老用户记忆、补贴资格查询工具、呼出电话、人工升级、通话分析,以及一个能在需要深度方案知识时接管对话的专家代理。当然,不是所有功能第一次就能跑通。真正的转折发生在项目尾声:主代理成功把一场对话交给了专家代理,然后专家代理彻底沉默了。这个故障,成了整个10天里最值得复盘的一课。
挑战背景:为什么选金融服务赛道
VoiceForBharat版“10天语音代理”挑战设置了不同赛道,我选择的是金融服务方向(Financial Services track)。选择这个方向,是因为金融服务和政府计划的信息获取,对普通用户来说存在天然门槛——想弄明白自己是否符合某项补贴资格,通常需要找到分散在各部门的官方网站,阅读用正式文件语言写成的冗长条款,再对照收入、年龄、职业、地区等维度逐条核验。这些工序让人望而却步,而这恰恰是语音交互能发挥价值的地方。
Jan Sathi能做什么
Jan Sathi是一个基于实时语音架构的AI助手,由LiveKit处理实时交互、Murf Falcon驱动语音体验。它支持的自然对话场景包括:查询政府补贴计划的资格条件、了解金融服务办理流程、获取针对个人情况的方案建议、在信息不足时转接人工坐席。用户不需要搜索网站或输入长串文字,只需要说一句话,比如“我有可能符合哪些政府补贴计划?”——剩下的查找、理解、判断都由代理完成。此外,通过多代理协作,当主代理判断对话需要更深的领域知识时,可以实时将对话移交给专家代理。
故障重现:交接之后,一片寂静
项目演示前的最后一次联调,主代理顺利识别到用户需要专项补贴的详细解读,按设计将对话上下文完整移交给了专家代理。下一步本该是专家代理接手并继续应答,但现场只留下一阵沉默。日志显示专家代理已接收会话,却没有生成任何回复——这套“成功交接、无人应答”的故障,比主代理答错更令人措手不及。事后排查才发现,问题不在交接逻辑本身,而是专家代理在收到带完整上下文的会话后,陷入了某种对话状态:它等不到足够的输入,又无法自行产出回复。这次故障让“多代理分工”从纸上谈兵变成了实打实的坑:让一个代理学会交接,和让另一个代理学会接手,是两件完全不同的事。
10天里,我修好了这个故障,也重新理解了“交付”的边界:一个语音助手真正可用的标准,不只是能回答问题,而是在复杂场景下仍然知道何时该说话、何时该倾听、何时该接住上一个环节递来的话茬。如果将来再做类似的系统,我会把跨代理交接后的“首次响应确认”作为默认机制,而不是让它成为演示现场的一场意外插曲。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.