2026年1月21日 · 播客 · 40min
Harrison Chase:上下文工程与长时域 Agent 的崛起
当今最强大的 AI Agent背后的核心算法简单得令人惊讶:在一个循环中运行 LLM。真正区分那些能正常工作的Agent和不能正常工作的Agent的,不是架构上的巧妙设计或新颖的框架,而是上下文工程,即控制模型在每个步骤中看到的信息的艺术。Harrison Chase 在这个术语出现之前就围绕这个问题构建了 LangChain,他阐述了我们是如何走到今天以及未来的发展方向。
对话内容
Harrison Chase 作为首位嘉宾参与了红杉资本 Sonya Huang 和 Pat Grady 的 Training Data 节目。对话涵盖了从脚手架到Harness的演变,为什么构建Agent从根本上不同于构建软件,以及记忆作为竞争护城河的新兴作用。Chase 一如既往地坦诚自己不知道的事情,而事实证明,他对未来的发展方向有很多不确定性。
Agent架构的三个时代
Chase 认为人们围绕 LLM 构建的方式经历了三个不同的阶段:
第一阶段:链和单一提示。 早期的 LLM 是文本输入,文本输出。没有工具调用,没有内容块,没有推理。人们构建简单的链,因为模型只能支持这些。
第二阶段:自定义认知架构。 模型实验室将工具调用能力训练到模型中。它们在决定任何给定时间点该做什么方面做得还不错,但仍然需要大量的脚手架。开发人员构建了精细的分支逻辑:“我在这里该做什么?”然后是特定的路径。出现了一些循环,但架构仍然主要是开发人员设计的。
第三阶段:Harness。 大约在 2025 年 6 月至 7 月左右,发生了一些变化。Claude Code、深度研究工具和 Manis 都使用了相同的基础方法而取得了成功:LLM 在一个循环中运行,并结合巧妙的上下文工程。子Agent、上下文技能、压缩策略,所有这些都是上下文工程。模型最终变得足够好,以至于简单的算法奏效了。
“Context engineering is such a good term. I wish I came up with that term. It actually really describes everything we’ve done at LangChain without knowing that that term existed.” 上下文工程真是一个好词。我希望是我提出的这个词。它实际上描述了我们在 LangChain 所做的一切,只是我们之前并不知道这个术语。
转折点可能与 Opus 4.5 的发布和寒假相吻合,当时开发人员回家后发现了 Claude Code 变得多么强大。Chase 不确定这种转变具体发生在何时,但在 2025 年末和 2025 年初之间的某个时间,模型跨越了阈值,脚手架变得不必要,而Harness变得足够。
为什么编码Agent领先
对话中最有趣的线索之一是,编码Agent是Agent的一个子类别,还是所有Agent本质上都是编码Agent。Pat Grady 尖锐地指出:Agent的工作是让计算机做有用的事情,而代码是让计算机做有用的事情的一个非常好的方法。
Chase 的立场是细致入微的。他完全相信文件系统是任何长时域 Agent必不可少的基础设施。理由是具体的:压缩策略可以总结对话历史,但将完整消息存储在文件系统中以供以后检索;大型工具调用结果可以写入文件,而不是膨胀上下文窗口。你可以使用由 Postgres 支持的虚拟文件系统来实现这一点,但实际的代码执行开启了虚拟文件系统无法比拟的功能。
然而,他区分了“可以编码的通用Agent”和“今天的编码Agent是通用的”。当前的编码Agent针对编码任务进行了大量优化。它们是否会成为通用的界面是他脑海中最大的悬而未决的问题之一。
“I very, very strongly believe that right now if you’re building a long-horizon agent, you need to give it access to a file system.” 我非常坚信,如果你现在正在构建一个长时域 Agent,你需要让它访问文件系统。
Trace是新的事实来源
对话中最实质性的部分阐述了 Chase 的论点,即为什么构建Agent从根本上不同于构建软件,这不是一句陈词滥调,而是具有具体的、可操作的含义。
在传统的软件中,所有逻辑都存在于代码中。你可以查看代码并知道软件将做什么。在Agent中,逻辑在代码和模型的行为之间分配。你不能只阅读Harness代码并预测Agent在第 14 步会做什么,因为之前的 13 个步骤可能已将任意内容拉入上下文。
这会产生一系列后果:
Trace成为主要的产物。 在软件中,Trace是你在生产环境中怀疑出现错误时才启用的东西。在Agent开发中,人们从第一天就开始使用Trace,即使在本地开发中也是如此。它们会告诉你每个步骤中实际存在于上下文中的内容,这是了解Agent正在做什么的唯一方法。
协作从代码转移到Trace。 当Agent出现问题时,响应不是“给我看代码”,而是“把Trace发给我”。LangChain 自己的开源支持现在默认要求提供 LangSmith Trace,而不是代码片段。
测试需要人为判断。 软件测试依赖于程序化的断言。Agent测试通常需要评估只有人类才能有意义地判断的输出。LangSmith 的注释队列将人类评估者引入到Trace审查过程中。LLM 即评委系统试图代理这种人为判断,但根据实际的人类偏好校准它们至关重要且困难。
在线测试更重要。 Agent的行为只有在遇到真实世界的输入时才会完全显现出来。你可以对Harness进行一些离线单元测试,但重要的测试发生在生产环境中,并使用真实的Trace。
自我改进的Agent循环
Chase 概述了一种新兴模式,即Agent使用自己的Trace来改进自己。LangSmith 现在提供了一个 MCP 服务器和一个 CLI,编码Agent可以使用它们来提取Trace,诊断出了什么问题,然后修改代码库来修复它。
这听起来像是递归的自我改进,而且在某种程度上确实如此,但有一个重要的警告:仍然有人参与其中。Agent提出对提示和指令的更改,人类审查它们。这是一种初稿机制,而不是自主进化。
LangSmith 的 Agent Builder 通过内置记忆进一步实现了这一点。当你与Agent交互并说“你应该做 Y 而不是 X”时,Agent会编辑自己的指令文件。Chase 想要构建的下一步是“睡眠时间计算”,这是一个每晚运行的过程,审查当天的Trace,并更新指令,这个术语他归功于 Letta。
记忆作为竞争护城河
Chase 为记忆作为一种防御机制提出了一个出人意料的有力论据。他讲述了将他的个人电子邮件Agent从自定义设置迁移到 LangSmith 的 Agent Builder 的过程。尽管具有相同的启动提示和相同的工具,但新版本明显更差,因为它缺乏原始版本的累积记忆。他仍然没有完全切换过来。
这说明了一些重要的事情:对于处理重复的、特定于领域的任务的Agent,用户偏好和领域模式的累积知识会产生真正的转换成本。这与 ChatGPT 的记忆功能不同,Chase 说这并没有为他创造任何粘性,因为他对 ChatGPT 的使用都是跨不同主题的一次性查询。
区别在于通用聊天(记忆几乎没有增加价值)和专门构建的工作流Agent(记忆是整个价值主张)。
异步-同步切换和Agent收件箱
长时域 Agent需要异步和同步交互模式。如果一个Agent运行一天,你不会坐在那里观看。你将启动多个Agent,并像在看板上管理任务一样管理它们。
但在某个时候,你需要进入同步模式,审查Agent生成的内容,提供反馈,纠正方向。LangChain 的第一个版本的Agent收件箱仅支持异步模式:Agent会 ping 你,你回复,然后等待下一个 ping。Chase 发现当使用他自己的电子邮件Agent时,这不足以满足需求;当切换到对话时,他想要完全同步的来回,而不是消息和等待。
在收件箱中添加同步聊天模式是一个重要的解锁。纯异步目前还行不通,因为Agent仍然需要太多的纠正。Anthropic Claude Co-work 模型,你可以指定一个目录作为Agent的工作区,这是一个很好的心理模型,可以了解它是如何演变的:人类和Agent都可以查看和修改的共享状态。
关于代码沙箱、浏览器使用和文件系统
Chase 按当前可行性对这些能力进行排名:
文件系统:完全必不可少。即使对于非编码Agent,文件系统也可以通过存储溢出信息(否则会膨胀上下文窗口)来实现上下文工程。
代码执行:大约 90% 确信。对于长尾用例,编写和运行脚本是不可替代的。重复的任务可能需要更少的代码,但文件系统的上下文管理优势仍然存在。
浏览器使用:模型在这方面还不够好。你可以通过为编码Agent提供用于浏览器交互的 CLI 来近似一些浏览器任务,但原生浏览器使用仍然不成熟。
现有软件公司能否实现飞跃?
Pat Grady 提出了从本地部署到云的类比:很少有 incumbents 在这种转型中幸存下来,因为构建云软件从根本上是不同的。那么向Agent的转型呢?
Chase 提供了两部分答案。在人员层面,他一直听到Agent工程团队的年龄偏小,有更多没有关于如何构建软件的先入为主观念的初级开发人员。LangChain 自己的应用 AI 团队的年龄也偏小。但是采用Agent编码的高级开发人员也可以实现转型;这更多的是一种思维方式的转变,而不是年龄问题。
在公司层面,数据是关键资产。如果你是一家拥有有价值的数据和构建良好的 API 的现有软件供应商,你应该能够将这些数据插入到Agent Harness中并提取真正的价值。一位金融领域的联系人告诉 Chase,数据的价值“越来越高”。真正新的部分是指示,即关于如何使用这些数据的知识,这些知识以前由人类处理,从未被编纂成文。
这就是为什么具有深厚领域专业知识的垂直 AI 初创公司做得很好的原因:Agent是由关于如何执行特定模式的特定于领域的知识驱动的,而这些知识需要来自某个地方。
一些想法
一些值得探讨的线索:
-
“Harness,而不是脚手架”的框架不仅仅是语义上的。它捕捉到了智能所在位置的真正转变:从开发人员的架构到模型的判断,开发人员提供约束和上下文,而不是决策树。
-
Chase 承认构建自己的Harness“实际上比构建框架要难得多”值得注意,因为他本人就在销售框架。他预测大多数人不会构建自己的Harness,这本质上是对Agent基础设施层整合的押注。
-
Trace即事实来源的论点有一个挑衅性的推论:如果你无法通过阅读Agent的代码来理解它,那么代码审查(软件工程的基石实践)就变得不足了。我们需要新的实践来应对行为是涌现的世界。
-
记忆即护城河的洞察力值得更多关注。如果Agent通过使用积累了不可替代的上下文,那么转换成本就不是传统意义上的功能或数据锁定。而是失去了一个知道你如何工作的训练有素的协作者。
-
也许最诚实的时刻是:“我期待着将来再次参加节目,并发现我今天所说的一切都是完全错误的。”在一个每个人都表现出确定性的领域,承认未来确实是不可预测的令人耳目一新。