LiveKit Blog·· 2026-07-07精选评分66
LiveKit Agents 异步工具:用 ctx.update() 消除慢后端调用期间的通话静默
Async Tools for Voice Agents: Keep Talking While Work Runs
导读
livekit-agents 1.6.0(2026-06-11)起支持异步函数工具:工具是同步的直到它调用 await ctx.update(message),首次调用会立即把控制权交还给 LLM 并以该消息作为工具返回值,语音 Agent 因此可以先播报进度、后台继续执行,后续更新只在 Agent 与用户都空闲时播报。文章以退款场景演示(验证订单 6 秒 + 出款 8 秒,共约 14 秒静默导致用户挂断),并给出可取消工具(cancelable 标志会向 LLM 暴露取消工具)、重复调用的四种处置模式以及 ctx.with_filler() 在更新间隙插入填充语音的写法。
推荐理由
针对语音 Agent 工具调用冷场这一高频体验问题,给出可直接复制的框架级实现。
来源:LiveKit Blog · livekit.com