![]()
175万美元融资、20亿美元估值,Cognition的Devin还没公开发布就已经让硅谷疯狂。GitHub Copilot的Agent模式能跨文件重构代码,Cursor的Composer能重写整个项目——这些不是聊天机器人,是能思考、规划、执行任务的AI Agent。它们的架构设计,正在成为AI工程领域最热门的话题。
传统大语言模型应用是"提问-回答"的单次循环。但订机票、调试代码、研究竞品这些真实任务,需要多步骤决策、工具调用和迭代优化。AI Agent的突破在于:它们运行在"观察-思考-执行"的循环里,而非一次性响应。
规划模块:把模糊目标切成可执行的碎片
当你让Agent"调研竞品定价并生成对比报告",它不会直接瞎编。规划模块会把这个目标拆解为:识别竞品→找到定价页面→提取数据→整理成表→撰写分析。
常见的规划策略包括思维链推理(逐步思考)、任务分解(拆分子目标)、计划-执行模式(先定计划再执行)。没有规划能力的Agent,就像让实习生直接"做个市场分析"却不给任何指导——结果大概率是灾难。
Devin的演示视频里有个细节:接到任务后它会先列出待办清单(To-do List),每完成一项就打勾。这个看似简单的交互,背后是任务分解算法的具象化。Cognition团队没公开技术细节,但这种"人类可读的规划过程"本身就是产品设计的一部分。
规划模块的设计陷阱在于过度乐观。工程师常假设AI能一次性生成完美计划,但真实场景需要动态调整。GitHub Copilot的Agent模式采用"计划-执行-反思"的三段式,每执行一步都会评估是否需要回溯。这种保守策略牺牲了速度,换取了复杂任务的成功率。
记忆系统:从"金鱼"到"有经验的老手"
没有记忆的Agent会重复犯错、丢失上下文。一个设计良好的记忆系统有两层架构:
短期记忆存储当前任务的上下文窗口——正在改哪行代码、刚才查到了什么数据、用户的最新指令。长期记忆则是持久化的知识库,记录用户偏好、项目规范、历史决策。
原文给了一段简洁的Python伪代码:AgentMemory类用列表存短期记忆,用字典存长期记忆,每个条目带时间戳。这看起来朴素,但工程实现远比示例复杂。
短期记忆的挑战在于上下文窗口限制。当Agent处理大型代码库时,如何筛选相关信息塞进有限的Token?Cursor的做法是维护一个"工作集"(Working Set)——只保留当前关注的文件和符号,而非整个项目。这类似于程序员自己在IDE里打开的标签页。
![]()
长期记忆的核心难题是检索。向量数据库(Vector Database)是主流方案,但"语义相似≠任务相关"的问题始终存在。一个经典踩坑案例:Agent记得"用户喜欢用React",但在Next.js项目里这个偏好应该被覆盖——如何设计记忆的优先级和失效机制,没有标准答案。
记忆的本质是把无状态的函数调用,变成随时间进化的系统。这也是为什么同样基座模型,加上记忆层后用户体验天差地别。
工具层:Agent的"手"和"脚"
没有工具,Agent只能生成文本。有了工具,它能调用API、执行代码、搜索网页、操作文件系统。工具层被设计为插件系统:每个工具有名称、描述、输入输出Schema,Agent通过自然语言理解何时调用哪个。
工具调用的可靠性是工程噩梦。大语言模型生成JSON格式的工具调用参数,但幻觉可能导致字段缺失、类型错误、甚至编造不存在的工具。OpenAI的Function Calling模式通过强制Schema验证缓解这个问题,但边界情况依然层出不穷。
Devin的工具集包括:代码编辑器、浏览器、Shell命令行。它的演示视频里有个惊艳场景:遇到报错后自动搜索Stack Overflow,找到解决方案后尝试修复。这个流程对人类程序员稀松平常,但对AI Agent来说需要协调三个工具的状态——浏览器获取的信息如何影响代码编辑器的决策?
GitHub Copilot的Agent模式选择更保守的工具策略。它主要操作代码文件,浏览器和命令行权限受限。这种"戴着镣铐跳舞"的设计,降低了风险,也限制了能力边界。Cursor则走中间路线:Composer可以跨文件编辑,但关键操作需要用户确认。
工具层的设计哲学是信任梯度。读文件最可控,写文件次之,执行命令风险最高,调用外部API则完全不可预测。不同产品在这个光谱上的选择,定义了它们的性格。
推理引擎:ReAct模式的流行与争议
当前主流的推理架构是ReAct(Reason + Act):观察环境→思考下一步→执行动作→循环。这个模式把"思考过程"显式化,让Agent的行为可解释、可调试。
ReAct的论文发表于2022年,原本用于增强语言模型的推理能力。但在Agent架构里,它变成了控制循环的核心协议。每个迭代周期,Agent输出一段"内心独白"(Thought),然后选择工具执行(Action),最后观察结果(Observation)。
这种设计有个副作用:Token消耗爆炸。一个复杂任务可能需要几十轮迭代,每轮都要把历史记录塞进上下文。Devin能处理数小时的任务,背后必然是激进的上下文压缩策略——但Cognition没有公开具体方案。
![]()
替代方案正在涌现。Anthropic的Claude 3.5采用"计算机使用"(Computer Use)模式,直接输出鼠标键盘操作,跳过显式思考步骤。这种端到端训练减少了中间环节的Token浪费,但黑箱程度更高,调试更困难。
推理架构的选择,本质是透明度与效率的权衡。ReAct像详细的日志,适合复杂任务的可追溯;端到端模式像直觉反应,适合高频简单操作。
guardrails:被忽视的架构支柱
原文TL;DR里埋了个关键建议:始终设置防护栏(Guardrails)、预算上限、人工介入检查点。这三点在Demo视频里看不到,却是生产环境的生死线。
人工介入检查点的设计更微妙。完全自动的Agent是科幻,半自动的Agent是产品。Cursor的Composer在修改关键文件前会高亮提示,GitHub Copilot的Agent模式在跨目录操作时要求确认。这些"摩擦点"不是技术限制,是刻意为之的安全设计。
最隐蔽的风险是权限隔离。Devin的演示里它有自己的代码仓库和云环境,与用户的生产环境物理隔离。如果直接让Agent操作真实系统,一个幻觉导致的`rm -rf /`就是灾难。SandBox(沙盒)技术在这里是标配,但配置和维护成本常被低估。
防护栏不是锦上添花,是Agent架构的第四根支柱。没有它,前面三个模块设计得再精巧,也只是实验室玩具。
Devin的20亿美元估值引发过争议:没发布的产品凭什么这么贵?一种解释是,Cognition押注的不是某个功能,而是"AI软件工程师"这个品类的定义权。就像早期的iPhone定义了智能手机的交互范式,Devin的架构选择可能成为行业模板。
但定义权之争远未结束。GitHub背靠微软的代码数据,Cursor吃透了开发者的交互细节,Anthropic有最强的模型能力。每家对"Agent该怎么做"有不同的答案:规划要多细、记忆要多长、工具要多开放、人工介入要多频繁。
这些选择没有标准答案,只有场景适配。企业级代码生成需要保守的权限策略,个人自动化脚本可以激进一些。研究型Agent需要详细的推理日志,客服Agent需要快速响应。
一个值得玩味的细节:Devin的官网至今没有开放注册,只有预约演示。Cognition在等什么?可能是模型能力的跃升,可能是安全性的打磨,也可能是在观察竞争对手的踩坑——毕竟,第一个发布的不一定是赢家,第一个稳定运行的才是。
如果你正在设计或评估AI Agent系统,哪个模块的取舍最让你纠结——是规划的灵活性、记忆的准确性、工具的权限边界,还是人工介入的时机?
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.