这道题其实问的是,怎么把LLM的通用推理能力,拆成一套能自主解决复杂任务的专项能力模块。它跟纯文本生成不一样,不是被动响应,而是目标驱动下的主动决策和环境交互。
我通常会把[[Agent]]的基础能力拆成五个核心要素,但你别把它们看成并列的模块,更像是一个闭环流水线。先说感知,这是Agent理解外部世界的入口,比如解析用户意图、接入实时数据。然后是记忆,它分两个层次:短期工作记忆就是对话上下文,长期知识记忆靠[[向量库]]或者[[知识图谱]]来存经验。这里有个关键点,规划是强依赖记忆的,没有历史经验的规划就是瞎拆任务。规划本身是把目标拆成可执行步骤,我常用[[Chain-of-Thought]]或者树状搜索的思路,但落地时一定要动态replanning,因为现实任务经常变。规划完了就得调工具,这是工具调用,通过[[Function Calling]]跟外部系统交互,比如查API、发指令。最后是行动执行,把决策变成实际输出,比如提交事务或者推消息。执行结果再通过感知反馈回来,形成闭环。
这些能力不是孤立的。规划依赖记忆提供上下文,工具调用反过来约束规划,你只能规划现有工具能做的事。感知和行动必须闭环,不然Agent就瞎了。评估标准我一般看几个量化指标:感知准确性用意图识别F1和关键信息抽取完整率;规划合理性看任务完成率和replanning频次;工具调用成功率看API调用和参数正确率;端到端就看任务完成时间和人工介入率。
举个例子,美团外卖调度Agent。感知模块接入订单、骑手位置和路况的实时数据,记忆模块存历史调度策略的效果,规划模块做派单路径优化,工具调用调用骑手APP推送和地图API,最后行动执行下发派单指令。整个流程分钟级闭环。
不过这里有个常见失败场景,就是感知和记忆如果不同步,规划会基于错误信息做决策。比如路况数据延迟了,规划出来的路径就不准。所以上线我会特别关注感知数据的时效性和记忆的一致性,否则整个闭环都会崩。
说到这,其实还有一个更前沿的方向,[[Multi-Agent]]协作。不同Agent承担不同能力模块,比如一个专门感知,一个专门规划,但协调机制就变成了新挑战。这个点可能值得深入聊。
所以我会把Agent的基础能力看成一套工程化的能力映射,而不是简单的LLM包装。核心是闭环和依赖管理,评估必须量化,落地要警惕数据质量。