我们总是担心AI不够聪明,但真正让代理无法走向生产的,是它会在你睡着后崩溃,然后忘记自己是谁。

核心观点:AI代理从短期任务向长期自治的进化,其核心瓶颈已从模型能力转向运行时可靠性,这一转变正在重塑整个AI工程化的底层逻辑。

关于AI代理的讨论,在过去一年里几乎被“智能”这个词淹没了。每个人都在争论模型参数、推理能力、思维链的长度,仿佛只要模型足够强,一切问题都会迎刃而解。但如果你真的动手跑过一个需要持续工作数小时甚至数天的代理,你就会发现一个残酷的事实:在AI的世界里,让一个代理“活着”比让它“聪明”要难得多。

Reddit上出现了一个非常关键的提问:“Are people actually running long-lived agents yet?” 这个问题的价值不在于它给出了什么答案,而在于它精准地切中了当前AI工程化中最被忽视的痛点。发帖人观察到,当代理从瞬时的问答或单步工具调用,转变为需要跨会话保持状态、在崩溃后重启、并在数天内持续执行任务的“长跑运动员”时,问题性质就发生了根本性的变化——从“如何让它理解我”变成了“如何让它不忘记自己是谁”。

这是一个微妙的范式转移。在传统的软件工程中,状态持久化、崩溃恢复、资源清理是成熟得不能再成熟的老问题。几十年来,数据库、事务日志、检查点机制早已被写进了每一个后端工程师的肌肉记忆。但当你的“程序”不再是确定性的代码,而是一个充满概率输出的神经网络时,所有那些可靠性工具都开始失效。你不能简单地给一个LLM代理做事务回滚,因为它的“状态”不仅仅是数据库里的一行记录,而是对话上下文中累积的全部语义——那种细碎的、隐性的、不可序列化的“理解”。一旦上下文窗口被清空,它就像患了严重失忆症的病人,不仅忘记了任务,连自己的角色设定都一并丢失。

这才是长期代理工程的核心困境。当前大多数代理框架都默认了“重启即重置”的简化策略,这本质上是在回避问题。它们假设代理的寿命只是单次会话的长度,或者认为只要把关键状态序列化成JSON,下次加载回来就能无缝继续。但这种假设忽略了LLM工作的本质:它不是在执行指令,而是在“理解”上下文。序列化的状态只是一堆事实的集合,而丢失的是那种事实之间的氛围、情绪和隐含的优先级判断——这些东西恰恰是LLM在复杂决策时的关键依据。

所以,我们看到一个反讽的局面:模型在推理能力上日新月异,而代理的运行时环境却停留在“用完即扔”的原始阶段。这就像一个拥有天才大脑的人,却被装在一个随时会断电、连备胎都没有的破旧机器里。工程界对“智能”的迷恋,掩盖了对“生存能力”的长期忽视。

但这并不意味着长期代理是不可能的。相反,这个问题的提出本身,就标志着一场新的工程变革的开始。就像当年分布式系统迫使人们重新思考事务的概念一样,长期代理也在逼迫我们重新定义“状态”。什么是代理的“健康检查”?如果代理“卡”在一个无法推进的逻辑循环里,它的“心跳”还能证明它活着吗?当代理同时管理着多个外部资源(API调用、文件系统、数据库连接)时,如何确保在它重启后,那些外部资源不会变成孤儿?

有人可能会说,我们不需要那么复杂的代理,短任务代理就够用了。这种观点忽略了技术发展的惯性。从脚本到服务,从服务到微服务,每一个阶段的演进都是从“一次性的工具”走向“持久化的资产”。AI代理不会成为例外。一旦企业开始认真地将代理部署到生产环境,它们就必然会要求代理承担更复杂、更长期的职责——例如持续监控、长周期数据整理、跨部门的流程协调。届时,那些只做“单次对话”的代理会因为频繁的上下文浪费成为基础设施的沉重负担。

从另一个角度看,这个困境并非无解,但解法不在模型层,而在架构层。我们需要重新思考代理的运行时设计。也许未来的代理框架会引入类似操作系统的进程管理概念:为每个代理分配一个独立的“内存空间”,通过快照和增量日志来维持长期记忆;崩溃时不是重新加载初始提示词,而是从最近一个“理智检查点”恢复;代理之间通过消息队列而非直接调用解耦。这些听起来像是后端工程的常识,但在当前的AI代理生态中,它们几乎是缺席的。

更激进的可能性是,我们最终会走向“神经计算为主,传统计算为辅”的混合架构。由CPU负责所有确定性逻辑(状态序列化、资源管理、调度),而神经网络仅处理非确定性决策。这正是Andrej Karpathy在最近一次演讲中暗示的方向。这种划分的合理性在于,它承认了LLM的强项和弱项:它在理解模糊、非结构化信息上有压倒性优势,但在精确、可重复、可验证的操作上却是短板。让合适的“硬件”(无论是物理的还是逻辑的)做合适的事,这本身就是工程学最古老的智慧。

当然,这条路不会平坦。反对者会指出,这种架构引入了额外的复杂度和延迟,而且“神经+传统”的边界本身就很难界定。这不是没有道理。但任何重要的范式转移,从来都不是在完美无缺的条件下启动的。今天,已经有工程师在实验用Cloudflare Tunnel这样的网络层工具为代理创造安全的通信环境,有人在尝试用数据库事务日志的思路来管理代理的对话历史,甚至有人开始构思“代理的操作系统”。这些探索看起来粗糙,但它们指向同一个方向:AI代理必须学会“活着”,而不是每次都“重新出生”。

归根结底,我们必须接受一个事实:AI的工程化不是把模型做得更强就完事了。如果代理不能可靠地在生产环境中存活、运行和协作,那么再强的推理能力也只是实验室里的珍品。那个Reddit提问的背后,是行业的集体焦虑:我们花了太多精力在造一个聪明的脑袋,却忘了给它造一个坚实的身体。现在,是时候补上这堂课了。