模型在用户说话之前就挂断了电话
摘要
文章描述了Telnyx通话中AI语音模型因工具调用而过早结束的错误,修复方案涉及实现代码防护以防止过早终止,突出了模型控制操作的可靠性问题。
上个月在Telnyx通话中遇到了一个关于native-audio语音引擎的奇怪错误!通话总是在大约1.5秒时中断,每次都如此。没有错误,没有崩溃。只是静默,然后线路断开。花了一段时间才找到原因。模型在用户说话之前就调用了end_call。它听到了铃声,也许还有一声呼吸,就决定对话结束了。对话记录中没有任何内容可以反应;它就直接退出了。修复方案是一个防护措施,而不是更智能的提示。我们现在忽略通话中前6秒内的任何end_call调用。如果用户尚未说话,我们也会完全忽略它。简单的规则,但它需要存在于模型之外,在我们控制的代码中。这一点让我印象深刻。一个裸露的end_call工具调用基本上就是一把上膛的枪!模型可能因为幻觉、随机令牌或任何原因触发它。如果你让工具调用直接结束通话,你就是在信任模型对对话何时真正结束的判断。目前它还不够可靠;至少在我们测试的每个引擎上都不够。一旦防护措施到位,1.5秒的中断就完全停止了。用户得到了正常的铃声、正常的开场白,通话又像正常通话一样了。小事,但这种错误看起来像网络问题,直到你逐行阅读实际事件日志!工具调用完全按照指示执行。只是指示不够充分。
相似文章
确定性动作否决机制阻止幻觉end_call:语音代理在呼叫者未说话时即挂断
本文针对AI语音代理幻觉并提前结束通话的问题,提出了一种确定性动作否决机制,该机制运行于模型外部以防止不可逆操作。
通话在音频结束后并未完成
本文认为,由AI代理处理的通话在音频结束时并未完成;真正的检验标准是承诺(如回电)是否被正确记录到工作队列中,并附有负责人、截止日期和证据,而不仅仅是有一份漂亮的转录文本。
当AI助手在通话中突然失灵时该怎么办?
一位开发者描述了AI电话助手的一种故障模式,即助手在通话中无错误地卡顿,导致掉线和轮换问题,并寻求诊断建议。
你的代理失败不是因为模型,而是因为没人构建一个停止按钮
文章认为,AI代理在生产中的主要失败点并非模型本身,而是缺乏基础设施,如停止按钮、账单监控以及工具调用的可追溯性。
我的语音代理测试现在包含600秒断崖
作者描述了一次语音代理通话在600秒时被无预警切断的情况,并提出了一种优雅处理最大通话时长的测试方法,包括切断前警告和状态保存。