自主代理,正在成为大模型应用的一个核心方向。和以往的严格编程工作流不同,这类系统最关键的差别在于:控制权在谁手里。Anthropic给出的明确界定是,代理是能让模型动态地主导自身流程和工具使用的系统,由模型来决定如何完成任务。简单说,在工作流里,是代码掌控控制流;但在代理里,这个掌控者变成了模型本身。
业界对这个驱动模型的循环机制有一个共同的称谓,即ReAct模式。这一名称源自2022年的一篇研究论文。Google指出,代理系统会不断执行一个思考、行动、观察的迭代循环,直到满足某个预设的退出条件。这个循环,就是赋予模型自主决策能力的核心引擎。
![]()
拆解来看,这个循环并不复杂。Google将ReAct分解为三个核心动作:首先是思考阶段,模型会对任务进行推理,判断当前请求是否已经得到了完整的解答,并决定下一步该做什么。如果任务没完成,就进入行动阶段,模型会选择一组工具并生成查询指令,去外部世界收集信息;如果任务完成了,它就会直接写出最终答案并终止循环。最后是观察阶段,模型会读取工具返回的结果,把有价值的信息存入记忆,以便在后续的步骤中基于过去的发现不断推进,避免无意义的重复。
从另一个角度看,Anthropic在阐释同一概念时,特别强调了一点:在循环的每一步,代理都必须通过环境反馈来获取真实状态,无论是工具运行的结果还是代码执行的输出,以此来校准判断自己的进展。循环要么在完成任务后自然结束,要么在达到设定的最大迭代次数这类停止条件时终止。
那么,现实中这究竟是怎样运作的呢?Anthropic指出,一个代理基本就是一个大语言模型,在不断接收环境反馈的循环中调用工具。成败与工具紧密相关,以至于Anthropic在打造自家的编码代理时,花在优化工具上的时间比优化提示词还要多。微小的调整也能带来显著改善,比如仅是将文件路径从相对路径改为绝对路径,就消除了一整类的错误。Google则补充了一个调试上的好处:模型留下的思考轨迹,等于给了开发者一份清晰可见的推理记录,让人可以直观地看到问题究竟出在哪一步。
这种灵活性并非没有代价。既然是模型掌握控制权,就适合处理那些无法预知步骤数量、因此无法固化成代码路径的开放式问题。代理可能会运行很多个来回,这要求使用者对它的决策抱有一定程度的信任。Anthropic给出的典型场景包括,能横跨众多文件去解决真实GitHub议题的编码代理,以及能操作电脑桌面来完成任务的应用。Google的适用性描述与此一致:专为需要持续规划和动态适应的复杂任务而生。比如,一个机器人在行进中遇到新障碍物,就需要即时重新规划路线。如果任务约束在运行中发生变化,这个循环能让代理即时调整策略。
然而,Anthropic也给出了清晰的红线:如果一个可预测步骤的固定工作流就能解决问题,就不要动用自主代理。相比而言,固定管线的模式成本更低、速度更快,也更易于建立信任。对于高频次、低复杂度的任务,让模型自己掌控并不是一个好主意。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
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.