← Agent Tool Use 2026

ACL 2026 · Long · A18

Shanks: Simultaneous Hearing and Thinking for Spoken Language Models

多模态感知与创作 · 直接工具使用 · 方法 / 系统

Idea

Shanks 让 spoken language model 在用户仍说话时处理固定时长 speech chunks,并交错生成不播出的 thinking chunks。它把原本等待 turn 结束才进行的推理和工具调用提前,支持在发现数学讲解错误时打断,以及信息足够时先发起旅行查询 API。

Research Problem

多数 LLM/SLM 在完整用户输入到达后才开始 reasoning 和 tool use,无法依据正在到来的内容及时互动,也把全部处理时间留在用户停顿之后。简单的实时 interruption model 又缺少中间推理,容易在错误时间打断或无法解释错误;工具依赖链则进一步增加最终回复前的等待。

Insight

用户说下一段话的时间可以用来处理已经听到的内容,但不能假装已知未来输入。交错序列保留已听 speech 与先前 reasoning,逐步积累足够参数后即可执行部分工作;固定 chunk 提供生成预算,而区分 partial-audio 与 end-of-audio 能让模型知道何时继续听、何时正式回答。

Method

  1. 默认每四秒输入一个 speech chunk,末尾附 EOPA;模型根据此前所有音频与 thinking 生成下一段内部文本,预算为 chunk duration 乘 tokens-per-second,超时强制终止该段。最终音频使用 EOA,随后生成最终 response。
  2. 构造音频/推理交错训练序列,用 cross-entropy 预测各 thinking chunk 与最终回答。实现包含 Qwen2.5-Omni speech-to-text 的 E2E 版本,以及 Whisper-large-v3 加 Qwen2.5-7B 的 cascade 版本。
  3. 数学 interruption 数据由问题、模型生成的分步解和 TTS 音频构成;教师依据当前可见 transcript 追踪变量、检查错误并生成 INTERRUPT 标记及解释。评估错误识别后的打断比例、有效性和相对首次错误的 latency。
  4. 将 ComplexFuncBench 一半用于训练、一半用于测试;教师把 ground-truth API calls 分配到参数已充足的 speech chunks,mask tool-response loss。测试用 judge 匹配预存调用及回复,统计 early call accuracy、完整任务成功率与 turn 结束后生成 token 数。

Sources & Reading Scope

阅读依据:官方 PDF 正文。核读页码按 PDF 页序计数,可能与 proceedings 页码不同。

p. 1 · p. 2 · p. 3 · p. 4 · p. 5 · p. 6

核读章节:2.1 Inference · 2.2 Training · 3.1 Scenario 1: Interrupting User Turn · 3.2 Scenario 2: Making Tool Calls When Listening · 4.1 Shanks-E2E · 4.2 Shanks-Cascade

核读 chunk 时序、训练与两种任务协议。工具实验采用预存 API responses,明确不计算真实 API latency,延迟指标是结束后 token 数;训练测试同源 ComplexFuncBench,不能直接与未在该分布训练的方法横比。E2E 实验未微调语音 talker,因此不把结果扩展为完整 speech-to-speech 系统验证。