在 AI 应用开发(尤其是 Agentic Architecture,即智能体架构)中,Knowledge(知识)、Tools(工具)、Skills(技能) 和 Agent(智能体) 共同构成了一个类似“人类职场专家”的生态系统。
如果把 Agent 比作一个“上岗的员工”,那么其他三者就是他的大衣口袋、工作手册和专业能力。
我们可以用一张结构图和直观的类比来理清它们之间的层级与协同关系:
一、 核心概念的定义与类比
为了方便理解,我们用“资深量化交易员”这个岗位来做全景类比:
┌────────────────────────────────────────────────────────┐
│ AGENT (智能体) │
│ 核心(LLM 大脑 / 角色定位 / 规划规划能力 / 记忆机制) │
│ │
│ ┌──────────────────┐ ┌──────────────────┐ │
│ │ KNOWLEDGE (知识) │ │ SKILLS (技能) │ │
│ │ (RAG/本地数据) │ │ (高阶复合业务逻辑)│ │
│ └────────┬─────────┘ └────────┬─────────┘ │
│ │ │ │
│ └──────────────┬──────────────┘ │
│ ▼ │
│ ┌──────────────────────┐ │
│ │ TOOLS (工具) │ │
│ │ (原子化 API / 函数) │ │
│ └──────────────────────┘ │
└────────────────────────────────────────────────────────┘
1. Agent (智能体) —— “员工本人”
Agent 是主体和控制中心。它由大语言模型(LLM)驱动,具备角色设定(System Prompt)、规划能力(Planning,如 ReAct/CoT)、记忆机制(Memory)以及环境感知能力。
- 量化员类比: 这个员工叫“小张”,他的职位是“高频交易专家”,他有短期记忆(当前盯盘的股票)和长期记忆(公司往年的风控红线)。他负责决定“什么时候该做什么”。
2. Tools (工具) —— “办公文具与底层设备”
Tools 是 Agent 能够调用的原子化能力(Atomic Capabilities),通常表现为封装好的 API、代码执行器、数据库连接器或计算器。工具本身是被动的、没有业务逻辑的,只有被调用时才起作用。
- 量化员类比: 鼠标、键盘、Excel 软件、券商开放的
buy()和sell()API 接口、计算器。工具自己不会赚钱,得有人去用它。
3. Skills (技能) —— “专业工作流与业务能力”
Skills 是为了完成某项特定任务,将“提示词(Prompt)+ 流程控制(Workflow)+ 多个 Tools” 组合封装而成的高阶复合能力。Skills 赋予了 Agent 解决复杂特定问题的“套路”。
- 量化员类比: “编写并回测一个均线策略”。这个技能不是敲一下键盘(Tool)就能搞定的,它需要小张先获取历史数据,再写逻辑,再跑模拟,最后出报告。这是一套有步骤、有逻辑的工程闭环。
4. Knowledge (知识) —— “专业资料库与上下文”
Knowledge 是 Agent 在模型自身参数(训练数据)之外,通过 RAG(检索增强生成) 或向量数据库获取的外部信息源。它解决了 AI 无法掌握私有数据和实时数据的问题。
- 量化员类比: 公司的核心交易策略文档、行业白皮书、过去 10 年的股市历史 K 线数据库。小张脑子记不下所有数据,但他随时可以翻书和查阅数据库。
二、 它们之间的四层递进关系
这四者并不是平级的,而是一种包含、调用、与被包含的递进关系:
1. Tools 是 Skills 的基本粒子(Skills 包含 Tools)
- 关系:一个 Skill 往往需要组合调用多个 Tool。
- 示例:
- Tool A: 网页动态抓取 API。
- Tool B: Markdown 格式转换器。
- Skill(网页信息提炼): 先调用 Tool A 抓取网页 $\rightarrow$ 扔给 LLM 过滤广告 $\rightarrow$ 调用 Tool B 转换为干净的文档 $\rightarrow$ 输出摘要。
2. Knowledge 为 Skills 提供原材料(Skills 消费 Knowledge)
- 关系:Skill 在执行过程中,需要去 Knowledge 库中捞取数据来做决策。
- 示例:
- Agent 拥有一个 Skill(诊断代码 Bug)。
- 当它执行这个 Skill 时,会先去 Knowledge(公司的私有 API 架构文档) 中检索,看这个报错是不是因为调用了已废弃的私有接口,然后再生成修复方案。
3. Skills 和 Knowledge 是 Agent 的“左右手”(Agent 拥有它们)
- 关系:Agent 是大 boss,它根据用户的输入,自主决定当前应该激活哪一个 Skill,或者去哪一部分 Knowledge 里查资料。
- 示例:
- 用户说:“帮我分析一下这个季度的财报漏洞。”
- Agent 思考后做出规划:
- 调动自己的 Knowledge 库,阅读该公司的财务背景。
- 激活自己的 Skill(财务审计技能),开始拆解任务、运行多步计算。
4. 关系总结表
| 概念 | 表现形式 | 在架构中的角色 | 关系本质 |
|---|---|---|---|
| Tools | 具体的 Function/API | 被动的执行者 | 被 Skills 调用,或直接被 Agent 调用 |
| Knowledge | 向量数据库 / RAG 文档 | 静态的信息库 | 为 Skills 和 Agent 提供决策依赖的上下文 |
| Skills | 提示词 + 流程图 + 工具链 | 动态的业务闭环 | 组合了 Tools,消费了 Knowledge |
| Agent | LLM 大脑 + 核心配置 | 顶层的决策与规划者 | 统一调度、指挥上述三者完成复杂目标 |
三、 在开发设计中的演进趋势(以 Superpowers 等前沿框架为例)
在当前的 AI 应用开发(特别是 2025-2026 年的现代 Agent 工程)中,这种关系的边界正在变得更加清晰和工业化:
- 从“直接给 Agent 塞工具”到“面向 Skill 编程”: 早期开发中,人们喜欢给 Agent 绑定 50 个 Tool,导致 LLM 在选择 Tool 时经常混乱(Tool Choice 幻觉)。现在,开发者倾向于把 Tool 封装成一个个高内聚的 Skill(比如
debug.md、search_competitor.md),Agent 每次只需要在 3-5 个 Skill 之间做选择,执行效率和准确率暴增。 - Knowledge 的动态化: 知识库不再只是死板的 PDF 检索。现代 Agent 的 Skill 在运行完后,会把沉淀下来的经验(比如“这个 Bug 的底层原因”)逆向写回 Knowledge 中,实现知识的自我进化。