快速阅读:AI Agent 正在从“你问我答”的同步聊天模式,转向“后台自主运行”的异步模式。这种转变导致了现有的 HTTP 传输协议出现断层:当 Agent 的生命周期长于用户的网络连接时,如何实现状态持久化与实时双向通信,成为了新的技术核心。
---
现在的 Agent 正在变得“不听话”。
以前我们用 LLM,逻辑很简单:打开窗口,输入 Prompt,看着 Token 一个个蹦出来。这像是在打一场同步电话,你必须在线,对方才能说话。但这种模式正在失效。现在的 Agent 开始有了 Cron Job、Webhook 和定时任务,它们更像是在后台默默工作的员工,而不是只会复读的聊天机器人。
问题在于,我们一直试图用 HTTP 这根“细绳”去拴住一个正在奔跑的巨人。
HTTP 的本质是请求-响应。一旦你刷新页面,或者手机进了个隧道断了网,那个正在传输的 SSE 流就断了。这就像你正在跟一个聪明人讨论方案,聊到一半电话突然断线,而对方并不知道该把刚才的想法存在哪,也不知道该怎么在电话接通后重新开始。
有观点认为,这不仅仅是传输协议的问题,更是交互模型的滞后。目前的解决方案大多在“补丁”层面:要么把状态塞进数据库,让你不断地去轮询(Polling);要么把消息发到 Slack 或邮件里。但这都只是在解决“如何通知你”的问题,并没有解决“如何构建一个连续会话”的问题。
要把 Agent 做成真正的“数字员工”,得解决两个维度的硬伤:
一是持久化状态,让 Agent 在重启或任务切换时,依然记得自己是谁、在干什么;
二是持久化传输,让通信层能像电话会议一样,即便有人掉线、换个设备,连接依然能无缝续上。
有网友提到,目前的行业现状很尴尬:即便有了长任务处理能力,Agent 的上下文管理依然像是在“填鸭”。如果只是机械地把对话历史拼接在一起,上下文窗口很快就会被垃圾信息填满。真正的进化应该是让 Agent 具备“主动管理上下文”的能力,能像人类一样,决定哪些信息该留着,哪些该扔掉。
现在的技术路径似乎在两个极端摆动:要么是把所有东西都塞进一个沉重的数据库里通过轮询来读取;要么是依赖像 WhatsApp 这样现成的聊天工具来充当传输层。
但如果我们在底层协议上,把“会话(Session)”作为一个一等公民,像对待操作系统里的进程一样对待 Agent,情况会不会不一样?
如果 Agent 真的拥有了像 Erlang 演员模型那样的消息传递能力,它们之间、它们与人类之间,就不再是断断续续的对话,而是一种持续的、可随时接入的协作。
只是,当 Agent 变得越来越自主,甚至开始在后台自主决策时,我们该如何定义这种“异步”带来的风险?
zknill.io/posts/all-your-agents-are-going-async/