1. 项目概述:当“运行时”开始自我坍缩
你有没有试过让一个AI代理连续工作四十分钟?不是那种点一下就出答案的问答,而是真正干活——查文档、调API、写代码、改配置、再验证结果,一环扣一环地往下走。我去年就带着团队跑过这样一个销售线索清洗+客户画像生成+邮件草稿初稿的三段式代理流程。前38分钟一切顺利,第39分钟,它突然开始胡说八道:把上周五的会议纪要当成最新财报数据引用,把某个已归档客户的邮箱地址填进新合同模板,还自信满满地生成了“已发送确认”的日志。我们翻遍上下文,发现最开头的工具调用返回结果——那个关键的CRM查询原始JSON——早就被模型“悄悄挤掉”了。没有报错,没有警告,只有静默的、昂贵的失效。这不是模型能力问题,是架构设计的硬伤: 把状态塞进上下文窗口,等于把整本操作手册塞进一张便签纸,还指望它永远不丢页码。
Anthropic在2026年4月8日发布的Claude Managed Agents,表面看是一套托管代理运行服务,但它的核心价值,恰恰就藏在这个“静默失效”的反面——它把“会丢页码的便签纸”彻底废掉了。它没去卷模型多大、推理多快,而是干了一件更基础、更关键的事: 把代理的“记忆”和“身份”从模型的呼吸里剥离出来,变成独立、持久、可审计的实体。 这就是标题里那句“Layer That’s Already Going to Zero”所指的层: 代理运行时(Agent Runtime)层。 它不是被Anthropic发明出来的,而是被Anthropic、AWS、Google、Microsoft这些巨头共同加速推向商品化的。它正在变得像电力、像网络带宽一样,成为一种基础设施级别的“默认存在”,其本身的价值正被快速压缩至趋近于零。而真正开始发热、开始产生利润、开始决定谁能活下来的,是紧贴在这层之上的三块新大陆:可观测性(Trace)、治理策略(Governance)、垂直场景(Vertical)。这篇文章,就是我以一个亲手踩过所有坑、也搭过所有轮子的工程实践者身份,带你一层层拆开这个正在坍缩的“运行时”层,看清它为什么必然如此,以及,你该把力气花在哪。
2. 架构解构:为什么“会话即事件日志”是唯一正确的起点
2.1 旧世界的崩塌:上下文即牢笼
在Managed Agents出现之前,绝大多数自研或基于开源框架(如LangChain、LlamaIndex)构建的长周期代理,都遵循一个朴素但危险的范式: 状态即上下文(State-as-Context)。 每一次工具调用的输入、输出、中间思考过程,都被原封不动地拼接成一段长长的文本,塞进模型下一次调用的 system_prompt 或 messages 数组里。这就像给一个健忘的天才助手,每做一步,就往他手里塞一张新的、写满前因后果的纸条,让他自己记住所有事。
提示:这种模式在单次、短链路任务中完全可行,甚至很优雅。但一旦任务链条超过5-7步,或涉及大量结构化数据(如JSON、CSV),它就会从“优雅”滑向“灾难”。
我亲身经历的那个失败案例,其技术细节非常典型。我们使用的模型是Claude 3 Opus,上下文窗口为200K tokens。整个代理流程设计为:
- Step 1 (CRM Query): 调用Salesforce API,获取100条线索数据(约15K tokens JSON)。
- Step 2 (Enrichment): 调用Clearbit API,为每条线索补充公司信息(100次调用,每次返回约2K tokens,总计200K tokens)。
- Step 3 (Analysis & Drafting): 基于前两步结果,分析行业分布、生成个性化邮件草稿。
问题出在Step 2。100次调用的返回结果,哪怕只保留最关键的字段,累积起来也轻松突破180K tokens。当模型开始处理Step 3时,它能“看到”的,只剩下最近几次调用的碎片化信息。那些最初从CRM拉取的、定义了整个任务边界的100条线索ID,早已被挤出窗口。模型失去了任务锚点,开始基于残缺的“记忆”进行幻觉式推理。它不是“坏了”,而是“饿了”——饿得只能靠猜。
这个设计的根本缺陷,在于它混淆了两个截然不同的概念: 计算状态(Computational State) 和 语义上下文(Semantic Context) 。前者是代理执行逻辑所必需的、精确的、结构化的数据(如 current_step=3 , lead_ids=[...] , enrichment_results={...} );后者是模型理解人类语言指令所需的、模糊的、冗余的背景信息。把前者硬塞进后者,无异于用Excel表格的格式去存一份Word文档——格式错配,效率低下,且极易损坏。
2.2 新范式的基石:“会话即事件日志”
Anthropic Managed Agents的核心创新,正是对这一根本矛盾的精准外科手术。它将“会话(Session)”重新定义为一个 独立于模型之外的、持久化的、结构化的事件日志(Event Log) 。这个日志不存储在模型的内存里,而是由Anthropic的后端服务管理,存储在高可用、强一致的分布式数据库中。
这个转变带来了三个颠覆性的工程优势:
第一,状态与模型彻底解耦。 代理的“大脑”(模型)只负责一件事:根据当前的 system_prompt 、用户输入 user_message ,以及一个精简的、由系统动态注入的 context_summary (例如:“你正在处理第3步,已成功获取并丰富了100条线索,下一步是生成邮件草稿”),生成下一个动作(Action)。这个 context_summary 是由系统从完整的事件日志中实时提炼的摘要,它只包含模型此刻决策所必需的、最小化的信息。模型不再需要“背诵”整个历史,它只需要“理解”当前任务状态。这从根本上杜绝了因上下文溢出导致的静默失效。
第二,故障恢复成为常态而非奇迹。 在旧模式下,一次崩溃意味着整个会话的终结。而在Managed Agents中,“Harness”(即执行器)是一个无状态的、轻量级的组件。它只负责接收指令( execute(tool_name, input) )、调用沙箱、等待结果、并将结果连同时间戳、元数据一起写入事件日志。如果Harness因为网络抖动或资源争抢而崩溃,系统只需根据 sessionId 重新唤醒一个全新的Harness实例,它会自动从事件日志中读取到上一次成功的状态,并无缝继续执行。这就像一个永不关机的录音机,即使播放器坏了,换一台新的,也能从断点继续播放。
第三,可观测性与调试能力跃升一个数量级。 事件日志是一个完整的、不可篡改的操作流水账。它记录了每一次工具调用的精确时间、输入参数、原始返回值、执行耗时、是否成功、错误堆栈(如果失败)。当代理行为异常时,你不再需要在数千行的聊天记录里大海捞针,而是可以直接在后台查询 SELECT * FROM events WHERE session_id = 'xxx' ORDER BY timestamp ,瞬间定位到是哪一次API调用返回了异常数据,或是哪一次模型的 <
312




被折叠的 条评论
为什么被折叠?



