大模型
系统的大脑,负责理解用户意图、分析当前状态,并规划下一步行动。
这部分先把 Agent 的基本概念说清楚。OpenClaw 可以看成一个实践场景,重点不是记某个平台的名词,而是理解 Agent 为什么能从“回答问题”走向“执行任务”。
Agent 的核心定义是:将大语言模型与工具结合,创建一个能够推理任务、决定使用哪个工具,并迭代寻找解决方案的系统。它不是只回答一句话,而是会根据任务状态持续判断下一步怎么做,直到完成用户指定任务,或达到停止条件。
可以把它拆成三个角色来理解:
大模型
系统的大脑,负责理解用户意图、分析当前状态,并规划下一步行动。
工具
系统的手和感官,负责执行具体动作,比如搜索、计算、读写文件、查询数据库或调用外部 API。
Agent
协调大脑和工具的自动化流程:选择工具、执行工具、观察结果,再继续推理。
传统大模型调用更像“问一次、答一次”,Agent 更像“拿到目标后,自己规划步骤并推动任务完成”。
| 对比维度 | 传统大模型 / AIGC | AI Agent |
|---|---|---|
| 核心能力 | 内容生成 | 任务规划与自主执行 |
| 交互模式 | 被动响应,依赖提示词 | 主动规划,自主决策 |
| 输出结果 | 建议、方案、文本内容,通常还需要人工处理 | 可交付的最终结果,比如已整理的文件、已执行的操作、已生成的报告 |
| 外部交互 | 有限,主要通过文本 | 更强,可通过工具操作外部系统 |
一句话说:传统大模型主要产出内容,Agent 进一步负责把内容变成行动和结果。
Agent 常见的工作模式是 ReAct,也就是 Reasoning + Acting:先推理,再行动;拿到行动结果后继续推理。
用户输入:用户向 Agent 提出问题或任务。
模型推理:大模型分析当前任务、上下文和可用工具,判断下一步该做什么。
工具调用:如果需要外部能力,Agent 让工具执行器调用对应工具。
观察结果:工具返回结果后,结果会进入上下文,作为下一轮推理依据。
继续迭代:模型基于新信息继续判断,可能再次调用工具,也可能认为信息已经足够。
最终输出:当任务完成、达到迭代限制,或触发停止条件时,Agent 返回最终结果。
工具调用容易混淆:模型并不是自己执行工具,而是先生成一个结构化的工具调用意图。
更准确地说,LLM 在推理后会输出类似下面这样的结构化信息,里面包含工具名称和工具参数:
{ "name": "search", "args": { "query": "需要查询的问题" }}这一步可以理解为意图识别后的结果:模型已经判断出“我要调用哪个工具,以及要传什么参数”。随后由 Agent 运行时或 Tool Executor 真正执行工具,工具返回值再以 ToolMessage / Observation 的形式放回消息列表,交给模型继续推理。
| 概念 | 说明 | 关键点 |
|---|---|---|
| Agent | 模型 + 工具的工作流协调器 | 遵循 ReAct 循环,智能调度工具完成任务 |
| 模型 | 大脑,负责理解和推理 | 可以静态配置,也可以根据任务动态选择 |
| 工具 | 手和感官,负责执行动作 | 可以静态定义,也可以基于权限、状态动态过滤或注册 |
| 系统提示 | 角色设定与行为指南 | 可以固定设置,也可以根据上下文动态生成 |
| 状态 + 上下文 | 当前任务的短期记忆 | 包含消息历史,也可以扩展存储自定义信息 |
| 中间件 | 功能扩展插件 | 在执行不同阶段插入自定义逻辑,实现更细的控制 |
| 结构化输出 | 控制最终输出格式 | 让 Agent 的回答符合预定义结构,方便后续程序处理 |
| Skills | 可复用技能包 | 可以渐进式加载,让 Agent 按需加载要用的能力 |
这里要抓住一个重点:Agent 的能力不是只来自模型本身,而是来自 模型、工具、状态、规则和运行时控制 的组合。
Workflow 是更广义的 LLM 编排模式,表示把多个步骤按预设结构组织起来,比如串行、并行、路由、聚合等。ReAct Agent 可以看成一种典型的智能体模式,也可以作为 Workflow 里的一个组件,但 Workflow 不一定都需要 Agent。
当任务是开放式的,执行路径不确定,需要系统自己判断“下一步做什么、调用哪个工具、结果是否足够”时,更适合使用 Agent。
例如:排查线上问题、自动整理多来源资料、根据结果继续追问和搜索、处理需要多轮工具调用的复杂任务。
当任务步骤明确、流程固定,只需要把一系列 LLM 调用自动串起来时,更适合设计 Workflow。
例如:先翻译,再总结,最后润色;先分类,再抽取字段,最后生成结构化结果。
简单来说:Workflow 是流程先定好,Agent 是边做边决定。如果步骤清楚,用 Workflow 更稳定;如果路径不确定,需要探索和判断,就让 Agent 参与。
复杂任务可以拆给多个子 Agent 协作完成。主 Agent 负责理解用户目标、拆解任务、分配子任务、收集结果并生成最终响应;子 Agent 则专注处理某一类任务。
这种结构适合任务跨度比较大的场景。比如一个主 Agent 负责“完成一份项目分析报告”,可以把资料检索、代码阅读、数据整理、内容撰写分别交给不同子 Agent,再统一汇总成最终答案。