SmoothAgent 把上下文变换「提前做」:Agent 长链路 TTFT 砍到原来的 1/12

长上下文 LLM Agent 跑多轮工具调用时,「上下文工程」听起来是个细节,实则是 TTFT(Time-To-First-Token)的隐形杀手。UCSD 与 UCLA 团队 6 月底在 arXiv 上公开的 SmoothAgent 论文把这个痛点一刀切开:他们提出 lookahead programming model,让 Agent 框架把上下文变换写成「异步操作」,运行时提前把变换后的 KV cache 准备好——实验数据是 TTFT 最多砍掉 11.9 倍。 现代 Agent 框架靠 offloading、reduction、isolation 三类策略控制上下文长度,但每次变换都会让已有 KV cache 失效,触发一次完整的 re-prefill。这就是 TTFT 在多轮 Agent 中被反复推高的原因。 SmoothAgent 的关键洞察是上下文变换是**段可分解**的——前缀的变换与未来 token 无关。抓住这一点,论文把变换操作改写成「异步任务」,运行时放到后台提前执行,等到真正需要时 KV cache 已经准备好,可以直接替换而不阻塞。配套的 lookahead-aware 调度器还能在延迟敏感的请求之间安排这些异步任务,控制相互干扰。 论文在多种上下文工程策略上做了实验,并把方案接进既有 Agent 框架和 vLLM / SGLang 这类 LLM serving 系统——不是停留在 demo,而是真的能在生产栈里跑。11.9 倍意味着过去十几秒的首 token 能压到一两秒,对长链 Agent 工作流的可用性是质变。 和传统的 KV cache 优化思路比,SmoothAgent 不是把缓存「压得更小」或「留得更久」,而是从**调度时序**上把变换前置。Agent 框架几乎不用改业务代码,只要把同步的变换调用改成 async API 就能享受到加速——这种「零侵入」设计往往决定了一项优化能不能真正铺开。