简介:本文系统讲解 AI Skill(智能体技能)的本质:一类可复用、可组合、按需加载的“专业知识包”。文章对比 Skill 与传统提示词、RAG、工具接入协议在定位、Token 消耗、输出一致性与维护成本上的差异,并给出从目录结构、触发描述编写、渐进式披露设计到结果验证的完整上手步骤与常见问题排查思路,帮助开发者快速把个人经验沉淀为可复用技能。
近一年,“AI Skill(智能体技能)”成为大模型应用圈的热词:有人说它是“提示词工程的下一代形态”,也有人说“传统 Prompt 已经过时”。抛开概念炒作,本教程要帮你踏踏实实完成三件事:
适合读者:高频使用大模型的开发者、运维与测试人员、技术负责人,以及希望把团队经验沉淀为标准工作流的企业用户。阅读前只需了解大模型对话的基本用法和“上下文窗口”概念,不要求算法背景。
传统做法是把系统提示词、少样本示例、风格要求、注意事项一次性塞进上下文。它在单次简单任务上成本低、上手快,但有四个典型痛点:
RAG 的思路是在模型回答前,先从外部知识库(文档库、数据库、向量库等)检索相关内容,注入上下文让模型基于事实作答。它解决的是知识新鲜度与私有知识问题——训练截止日期之后的信息、企业内部文档,都可以通过检索获得。
但 RAG 本质上是“给模型喂资料”,它不规定模型按什么流程、什么标准、什么风格完成任务。资料再全,输出的结构与质量依然不稳定。
以“模型上下文协议”为代表的一类工具接入方案,目标是把外部工具与数据源以标准协议形式接入大模型,让模型能查询数据库、调用接口、操作文件。它扩展的是模型的“行动能力”。但落地中常见三类成本:
Skill 是可复用、可组合、按需加载的“专业知识包”。它把某类任务的完整方法论——目标、流程、规范、示例、模板甚至辅助脚本——组织成一个文件夹,由模型在需要时自动发现并加载。其核心机制是渐进式披露(Progressive Disclosure):
这就把“每次全量塞入”变成了“按需取用”。不少实践者反馈,把长提示词迁移为 Skill 后 Token 消耗明显下降(有经验称可节省 60%~80%),同一任务多次执行的输出高度一致,如同“克隆了自己”。
| 维度 | 传统 Prompt | RAG | 工具协议 | Skill |
|---|---|---|---|---|
| 本质 | 一次性文本指令 | 检索外部知识注入上下文 | 标准化的外部工具/数据接入协议 | 可复用、可组合、按需加载的知识包 |
| 解决的问题 | 单次任务指令 | 知识新鲜度/私有知识 | 模型的外部行动能力 | 方法论沉淀与复用 |
| Token 消耗 | 高(全量塞入) | 中高(召回内容入上下文) | 高(工具描述常驻) | 低(渐进式加载) |
| 输出一致性 | 差,易漂移 | 中 | 中,依赖工具稳定性 | 高 |
| 配置复杂度 | 低 | 中高(需搭建检索链路) | 高(服务端+协议+认证) | 极低(一个文件夹) |
| 复用与分享 | 差,手动复制 | 中 | 中,需分享服务代码 | 强,仓库化即可分享 |
四者是互补而非替代关系:RAG 管事实来源,工具协议管外部动作,Skill 管做事的方法与标准,Prompt 管单次临时指令。例如让模型产出“周度服务巡检报告”:通过工具协议拉取监控数据,通过 RAG 检索历史故障案例,通过 Skill 保证报告结构、分析框架与输出规范每次一致。
以“代码评审助手”为例。
做什么:明确技能负责什么、不负责什么,写出一句话描述。为什么:描述是渐进式披露的第一层,模型完全依赖它判断是否加载本技能;写得过泛会误触发,过窄会导致该用时没触发。注意:描述中要包含任务场景关键词,如“代码评审”“规范检查”“评审报告”。
按“一个文件夹即一个技能”的原则创建目录,业界通行的组织形态如下(文件命名以所用平台规范为准):
code-review-skill/├── skill.md # 主说明文件:元信息 + 核心指令├── references/ # 按需加载的详细参考│ ├── review-checklist.md # 评审检查清单│ └── severity-guide.md # 问题等级判定标准├── templates/│ └── report-template.md # 评审报告输出模板└── scripts/ # 可选:确定性辅助脚本└── count_issues.py
为什么:主文件保持精炼、细节外置,是控制 Token 消耗的关键。注意:不要一开始就把所有资料塞进主文件。
主文件由两部分组成。其一是元信息(通常为 YAML 风格键值对):
---name: code-review-helperdescription: 当用户要求进行代码评审、检查代码规范、输出评审报告时使用。覆盖评审流程、问题分级标准与报告模板。---
其二是核心指令正文,建议按如下骨架组织:
# 目标说明该技能要达成的最终结果。# 工作流程1. 第一步做什么,输入、动作、输出分别是什么;2. 第二步……(逐步展开)# 硬性规范- 必须做什么(如:逐条列出问题并标注严重等级);- 禁止做什么(如:禁止修改业务逻辑,只输出评审意见)。# 输出格式引用 templates/report-template.md 中的模板。# 参考资料加载规则- 需要判定问题等级时,读取 references/severity-guide.md;- 需要完整检查项时,读取 references/review-checklist.md。
为什么:模型对“流程 + 硬约束 + 示例”的组合遵循度最高,直接决定输出一致性。注意:指令用祈使句,避免模糊措辞;“必须/禁止”清单越明确,漂移越小。
做什么:把主文件控制在“核心流程 + 规范”的量级,低频细节(完整清单、长案例、数据字典)拆到 references 目录,并在主文件中写明“什么情况下读取哪个文件”。为什么:这是 Skill 省 Token 的机制核心——描述层常驻、指令层按需、资料层再按需,形成三级加载。注意:拆分粒度以“单次任务实际会用到的内容”为单位,避免一次任务被迫加载全部资料。
做什么:把确定性强的步骤(统计数量、格式校验、指标计算)写成普通脚本,把固定输出结构做成模板。为什么:能算的不让模型猜、能模板化的不让模型自由发挥,这是压低随机性的关键。注意:脚本使用通用运行时即可,不要依赖特定厂商的私有工具;处理敏感数据时注意脱敏。
做什么:将技能目录放入所用框架/平台指定的技能位置或按其方式注册,然后在对话中给出与描述匹配的任务(如“帮我评审这段代码并输出报告”)。为什么:加载机制会先扫描所有技能的元信息,匹配后自动加载主文件。注意:若平台要求刷新技能列表或开启新会话,按其文档操作;调用时无需再手动粘贴长提示词。
从四个维度验证:
一句话收束四者定位:Prompt 是一次性交代“怎么做”,RAG 解决“知识从哪来”,工具协议解决“能力从哪来”,Skill 则教模型“成为某个领域的专家”——以文件夹为载体、以渐进式披露为机制,实现可复用、可组合、按需加载。落地路径可概括为:选定高频任务 → 写清触发描述 → 搭建目录 → 编写主指令 → 拆分参考资料 → 验证触发与一致性 → 持续迭代。建议从你手头最重复的那件事开始做出第一个 Skill,再逐步把团队经验沉淀为可共享的技能库。