实时 Agent 工程实战:流式响应、中断恢复与可观测性三位一体

导语:2026 年的实时 Agent 不再是「GPT 加个 streaming=true」那么简单。当任务跨多轮工具调用、用户随时可能中断、网络随时断线时,流式响应、中断恢复、可观测性必须协同设计。

一、为什么流式响应是实时 Agent 的入场券

把 LLM 当 function 调用时,首 token 延迟动辄 2-8 秒(Anthropic Claude Opus 4.3 实测 6.5-8.0s)。如果整轮响应一次性返回,用户感知就是「按钮按下去,死一片,然后全部冒出来」。流式响应通过 SSE(Server-Sent Events)把首 token 延迟压到 200-500ms,体感像「对方在打字」。

但流式响应只解决了「读」的问题。Agent 还要解决「写」:工具调用结果回灌、状态持久化、中断后能续上。

二、流式响应的 3 种工程实现

mermaid diagram

主流框架对流式响应的处理:

  • Anthropic Messages Streaming:每个内容块用 event: content_block_delta 增量推送,工具调用通过 input_json_delta 累积参数,客户端必须维护 partial JSON 解析器
  • OpenAI Chat Completions Streaming:用 data: {choices:[{delta:{...}}]}\n\n 格式,delta 含 content / tool_calls[].function.arguments 两类增量
  • Vercel AI SDK:streamText() 把 provider 差异抽象成统一 fullStream,UI 层 useChat() hook 直接消费 data: text_delta 事件

vercel/ai 仓库累计 25,696 颗星(2026-07-21),最新 release @ai-sdk/xai@4.0.18 同步了 4 家 provider 的 SSE 协议适配。

三、中断恢复:thread_id 是 Agent 状态机的一等公民

流式响应的「中断」分两类:

1. 网络中断:TCP 断开后 SSE 链路死掉,但 LLM 可能在服务端已经把 token 推完了 2. 用户中断:用户主动 stop 生成,此时 LLM 已经烧了 token 但 Agent 状态还在内存里

要支持「关掉浏览器,30 分钟后回来还能续」,Agent 状态必须持久化。LangGraph 的做法是给每个会话分配 thread_id,每一步节点执行后把 checkpoint 写入 Postgres/SQLite。最新 release langgraph==1.2.9(2026-07-10)修复了 delta 通道的 updateState metadata/counters 计数 bug,累计 37,746 颗星。

mermaid diagram

四、可观测性:trace、metric、log 三件套

实时 Agent 的可观测性比传统微服务难 10 倍,因为:

  • 一次请求可能跨 5-20 次 LLM 调用 + 10-50 次工具调用
  • 流式响应的「部分成功」难以定义:推了 80% token 然后网络断,算成功还是失败?
  • 工具调用副作用(写数据库、发邮件)难以回滚

工程实践里,3 类信号必须齐备:

  • Trace(链路追踪):OpenTelemetry 语义,每次 LLM 调用打 gen_ai.request.model / gen_ai.usage.input_tokens / gen_ai.usage.output_tokens 属性
  • Metric(指标):Prometheus 抓 agent_request_duration_seconds / agent_first_token_latency_seconds / agent_tool_call_total{tool,status} 三组核心指标
  • Log(日志):结构化 JSON,每次工具调用必须含 thread_id / node_name / tool_name / duration_ms / status

五、关键点

  • 流式响应的工程门槛不在 LLM 端,而在客户端的 partial JSON 解析器与 SSE 重连逻辑
  • 中断恢复的关键是 thread_id 当一等公民,LangGraph 的 checkpoint 抽象值得借鉴(社区实践普遍优于 Temporal Airflow 等通用编排器)
  • 可观测性必须从一开始嵌入,事后补打 trace 几乎不可能还原流式 token 的时序
  • Anthropic 官方提供了 prompt caching 文档(docs.anthropic.com/en/docs/build-with-claude/prompt-caching),把 system prompt 缓存到边缘可把首 token 延迟再压 30-50%
  • 工具调用失败不要立即重试,先降级到 fallback 工具,避免雪崩

六、行业影响

2026 年下半年,实时 Agent 的工程门槛会让 80% 的 demo 项目卡在「能跑但上线就崩」阶段。能跑通 SSE + checkpoint + OTel 三件套的团队,将在企业级 Agent 市场占据先发优势。

七、结语

实时 Agent 不是「流式 API + 状态机」的简单相加。当首 token 延迟、checkpoint 频率、trace 采样率三者耦合时,任何一个设计失误都会让线上事故率指数级上升。建议先在内部工具上跑通三件套,再向 C 端用户开放。


参考资料

官方文档

开源项目

行业报道

社区讨论

对比基准


本文由 AI 生成。内容基于公开资料整理,可能存在事实偏差,引用链接请以原始来源为准。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注