AI-Agents-01-初识智能体
本文为个人学习笔记整理,项目来源。
Hello-Agents-第一章初识智能体
本文为个人学习笔记整理,项目来源
@misc{hello_agents2025,
title = {Hello-Agents: Building an AI Agent from Scratch},
author = {Sizhou Chen and Tao Sun and Shufan Jiang and Peilin Huang and Xinmin Zeng and Xinzhong Zhu and all Hello-Agents contributors},
year = {2025},
url = {https://github.com/datawhalechina/Hello-Agents},
note = {GitHub repository}
}
开头:理解 Agent
智能体不是“大模型本身”,也不是“算力很强的程序”。智能体更准确地说,是一个围绕目标运行的闭环系统。
它需要感知环境,基于目标做决策,通过行动影响环境,再根据反馈继续调整。
Observation -> Perception -> Thought/Planning -> Action -> Environment -> Observation
这个闭环,才是 Agent 和普通程序、普通模型之间最关键的区别。
一、什么样的系统才算智能体
判断一个系统是不是智能体,看五个要素:
Environment:它是否处在一个可交互环境中。Sensors:它是否能感知环境状态或输入。Actuators:它是否能采取行动影响环境。Goal / Performance:它是否围绕目标或性能指标行动。Autonomy:它是否具备一定自主决策能力。
所以,高算力不等于智能体。超级计算机本身只是计算资源;运行在它上面的某个系统,如果具备感知、目标、决策和行动闭环,那个系统才可能是智能体。
类似地,LLM 也不天然等于 Agent。LLM 可以作为 Agent 的“大脑”,但只有当它被放进工具调用、环境反馈和任务循环中,才构成 LLM Agent。
二、智能体的三种分类视角
第一种视角是内部决策架构。
Simple Reflex Agent:根据当前输入和固定规则行动。Model-Based Reflex Agent:维护内部世界模型,能处理部分不可见状态。Goal-Based Agent:围绕明确目标规划行动路径。Utility-Based Agent:在多个可行行动或状态中最大化期望效用。Learning Agent:通过环境反馈改进策略。
这里容易混淆的是目标型和效用型。目标型回答“如何达成目标”,效用型回答“多个可行方案中哪个综合更优”。
第二种视角是反应与规划。
Reactive Agent:响应快,规划少,适合实时场景。Deliberative Agent:先推演再行动,适合长期复杂任务。Hybrid Agent:兼顾快速反应和长期规划,现代 LLM Agent 常见。
第三种视角是知识表示。
Symbolic AI:规则清晰、可解释,但覆盖不足时脆弱。Sub-symbolic AI:擅长处理非结构化数据,但可解释性弱。Neuro-Symbolic AI:结合神经网络的感知/生成能力与符号系统的规则/推理能力。
三、用 PEAS 描述一个任务环境
PEAS 是描述智能体任务环境的工具:
Performance:什么结果算好,如何评价。Environment:智能体所在的环境和约束。Actuators:智能体能采取的动作。Sensors:智能体能感知的信息来源。
以智能健身教练为例:
P:训练有效性、动作安全性、目标达成度、用户依从性、饮食建议合理性。E:用户身体状态、健身目标、器械条件、训练场景、饮食习惯、历史记录。A:生成训练计划、调整强度、语音提醒、动作纠正、输出饮食建议。S:可穿戴设备数据、用户输入、摄像头/动作识别、训练反馈、历史数据。
四、Thought-Action-Observation:最小 Agent Loop
第一章的代码实践使用了一个非常典型的交互协议:
Thought: 分析当前状态并规划下一步
Action: 调用工具或 Finish
Observation: 工具执行后的环境反馈
这个协议的价值在于:
- 让 LLM 的推理过程可被外部解析。
- 把自然语言决策转成函数调用。
- 把工具结果反馈给下一轮推理。
没有 Observation,模型就无法知道工具执行结果;没有解析器,模型输出就无法稳定变成函数调用;没有最大循环次数,Agent 可能重复调用工具或一直无法结束。
五、跑通第一个旅行助手
code/chapter1/FirstAgentTest.pycode/chapter1/FirstAgentTest.ipynb
核心组件包括:
AGENT_SYSTEM_PROMPT:定义智能体角色、工具和输出格式。get_weather(city):天气工具。get_attraction(city, weather):景点推荐工具。available_tools:工具注册表。OpenAICompatibleClient:兼容 OpenAI API 的 LLM 客户端。- 主循环:拼接历史、调用 LLM、解析
Action、执行工具、追加Observation。
我最终跑通的链路是:
用户请求
-> Thought: 需要先查北京天气
-> Action: get_weather(city="北京")
-> Observation: 北京天气 Light Rain
-> Thought: 根据天气推荐景点
-> Action: get_attraction(city="北京", weather="Light Rain")
-> Observation: 推荐国家博物馆,备选故宫博物院
-> Thought: 信息足够,可以回答
-> Action: Finish[最终答案]
六、Workflow 和 Agent 的边界
Workflow 是预定义流程,适合规则稳定、合规要求高、步骤明确的任务。它的优点是稳定、可审计、成本可控;缺点是处理复杂例外能力弱。
Agent 是目标导向的自主系统,适合目标开放、上下文复杂、需要动态推理和工具选择的任务。它的优点是灵活;缺点是稳定性、可解释性、成本和安全性更难控制。
实际工程里,二者通常不是非此即彼。更合理的方案是:Workflow 管住边界和关键审批,Agent 处理语义理解、信息提取、风险解释和例外情况。
结尾
第一章不是为了记住一堆 Agent 定义,而是建立一个分析框架。
学完之后,应该能做到:
- 判断一个系统是否是智能体。
- 从不同分类视角分析一个 Agent。
- 用 PEAS 描述任务环境。
- 解释
Thought-Action-Observation循环。 - 跑通并理解一个最小 LLM Agent。
- 区分 Workflow 和 Agent 的工程边界。
更多推荐



所有评论(0)