第1课:AI Agent 核心概念

基础⭐⭐⭐⭐⭐ 必问↔ Hermes 参照

← 返回目录下一章 → 第2课

一、Agent 到底是什么?

一句话定义:Agent = LLM(大脑) + 工具(手脚) + 循环(自主决策)

传统程序 = 你告诉它怎么做(if-else, switch-case)
AI Agent = 你告诉它要什么(目标),它自己决定怎么做

最形象的类比:
传统 API 是自动售货机——你按哪个按钮,它就吐什么。
Agent 是一个员工——你说"帮我搞定下季度的报表",他自己决定:查数据库 → 跑分析 → 做图表 → 发邮件。

二、四层架构

从底向上,一个完整的 Agent 系统有 4 层:

┌─────────────────────────────────────┐ │ Layer 4: 编排层 (Orchestration) │ 多 Agent 协作、任务编排、路由 ├─────────────────────────────────────┤ │ Layer 3: 决策层 (Agent Loop) │ ReAct 循环、规划、反思 ├─────────────────────────────────────┤ │ Layer 2: 能力层 (Tool System) │ Function Calling、MCP、RAG ├─────────────────────────────────────┤ │ Layer 1: 基座层 (LLM + Context) │ 模型、System Prompt、上下文窗口 └─────────────────────────────────────┘

Layer 1:基座层

所有的"智能"来源。核心组件:

和 Hermes 对照:Layer 1 对应你配置中的 provider(模型提供商)和 system_prompt(在 profile 里设)。你在 config.yaml 里写的 model: deepseek-v4-flash 就是 Layer 1 的选择。

Layer 2:能力层

Agent 能"做"什么,取决于这个层:

和 Hermes 对照:你用 hermes tools 看到的就是 Layer 2——terminal, read_file, write_file, web_search 等。每个工具都有自己的 name + description + params。Hermes 的 Tool System 正是 Agent 框架的核心设计。

Layer 3:决策层

这是"智能"的体现——Agent 如何决定下一步做什么:

Layer 4:编排层

当系统不止一个 Agent 时:

三、核心概念:工具调用(Function Calling)

这是 Agent 最重要的机制,一定要理解。流程如下:

User: "帮我查一下上海的天气" Agent → LLM API(带工具列表) ↓ LLM 返回(不是自然语言,而是 JSON): { "function": "get_weather", "arguments": {"city": "上海"} } ↓ Agent 执行 get_weather("上海") → 返回 {"temp": 28, "humidity": 65%} ↓ 第二次调用 LLM API(把工具结果拼回去) ↓ LLM 返回自然语言:"上海现在 28°C,湿度 65%。" ↓ User 收到回复
关键理解:LLM 本身不执行任何代码。LLM 只做一件事——决定调用哪个工具,拼什么参数。实际执行是 Agent 框架做的。这意味着:
→ 工具可以是有副作用的(发邮件、写数据库、下单)
→ LLM 不关心工具的实现——它只根据工具的 name 和 description 决定是否调用

四、打个样:我现在的 Agent 工作流

以 Hermes Agent 为例,你刚刚经历的全部操作就是一个标准的 Agent 循环:

微信消息 → Hermes 服务器 ↓ Layer 1:deepseek-v4-flash 加载你的 system prompt + skill ↓ Layer 2:我选择了 terminal + write_file + skill_manage 等工具 ↓ Layer 3:我决定先建 workspace → 再写 MISSION.md → 再写 GLOSSARY.md ... ↓ Layer 4:目前单 Agent(你只有我一个),所以编排层很简单 ↓ 结果返回微信

每一次我调用一个工具(terminal, write_file),本质就是一次 Reason → Act → Observe 的 ReAct 步。这课本身也是我通过工具调用完成的。

五、面试问答

🎯 面试官问:"什么是 AI Agent?和传统程序有什么区别?"

你的回答框架(30 秒版):

"AI Agent 是一个以 LLM 为推理引擎能自主调用外部工具通过循环决策来完成复杂任务的软件系统。

和传统程序的区别在于:传统程序是确定性的——if-else 和状态机,输入 A 一定输出 B。Agent 是概率性的——它基于 LLM 的推理,每次可能走不同的路径到达同一个目标。

举个例子:传统程序处理"查天气",写死了调用 get_weather 再输出固定模板。Agent 处理"帮我规划明天的出行",它会自己决定查天气 → 查交通 → 查目的地开放时间 → 综合成一个计划。人只需要给一个目标,不需要给步骤。"
🎯 面试官问:"Agent 的核心组成部分是什么?"

你的框架:"3 + 1 组件"
3 个核心: LLM(推理能力)+ Tool System(执行能力)+ Memory(记忆能力)
1 个粘合剂: Agent Loop(循环决策机制,通常是 ReAct)

可以用一层楼比喻:LLM 是楼里的各个部门,Tool System 是各种工具设备,Memory 是楼里的文件存档,Agent Loop 是协调所有这些的总控台。

六、课后行动

  1. ✅ 读取本课的 GLOSSARY.md,确保每个术语你能用自己的话解释
  2. ✅ 打开 Hermes - 观察每一次我调用工具的过程——注意我从"思考"到"调用"到"看结果"切换
  3. ✅ 准备 30 秒和 2 分钟的"什么是 Agent"回答(上面的面试框架)
  4. ⏭ 下节课预告:Agent 循环与 ReAct 深入——我们会写最简单的 Agent Loop 代码

📁 0001-core-concepts.html
📁 相关参考:reference/GLOSSARY.md | MISSION.md | CURRICULUM.md
📝 如有问题随时问,我会在后续课中调整。

← 返回目录下一章 → 第2课