Skip to content

Skill

是什么

Skill是一种将专业知识、工作流程和最佳实践封装起来的方式

价值在于解决通用智能体面临的不稳定、缺乏私有知识、博而不精三大问题

  1. 针对不稳定,Skill用标准化的流程来约束智能体的行为。
  2. 针对缺乏私有知识,Skill可以把你的专属信息封装进去。
  3. 针对博而不精,Skill让智能体在特定领域做到术业有专攻。

提示词是基础,工具调用扩展能力,MCP统一连接,智能体实现自主,Skill确保专业,五者各司其职,缺一不可。

  1. 如果任务简单、一次性、不追求格式一致,直接用提示词就够了。
  2. 如果任务涉及实时信息获取或外部操作,需要工具调用。
  3. 如果要连接多种外部服务且希望即插即用,考虑MCP。
  4. 如果任务复杂、需要多步骤自主规划,启用智能体。
  5. 如果任务需要专业知识支撑、标准化流程、稳定输出,且会反复执行,则应创建或使用Skill。

4个组成

Skill的核心机制:让智能体能够按需、分层地获取信息

核心文件SKILL.md:告诉AI这个Skill是什么、能做什么、应该怎么做

references目录:Skill的知识库,存放着智能体执行任务时可能需要查阅的各种参考资料,但需要在SKILL.md里告诉它。

scripts目录:存放脚本程序,需要明确的输入才能干活。

assets目录:用来存放模板、素材、样式等静态资源文件

验证工具skills-ref,它可以检查你创建的Skill是否符合标准规范。

SKILL.md

需明确:这个Skill可以和哪些Skill配合,配合时需要注意什么,输出的格式是什么。

references 知识库

RAG知识库的问题:理解有限,不够聪明;丢失结构;该找的没找到,不该找的找来了。

Skill知识库的优势:AI能理解上下文,找得更准;AI能按逻辑顺序查阅;知识的结构完整保留。

知识库设计需要考虑3个核心维度:知识如何组织、知识如何引用、知识的粒度如何把控

明确告诉智能体在什么情况下查阅什么文件。

多级查阅。先查索引或概述,再根据需要深入查阅详情。需要提前在索引文件中提供文件的摘要

3种知识查找模式 Skill引导查阅:这是Skill知识库查找的核心和基础。

本地文本检索:智能体可以主动调用内置的文件搜索工具,在指定的references目录或文件中进行文件级别的关键词搜索。

外部知识融合:当Skill内部的references无法满足需求时,就需要引入外部知识融合机制。

Agent Loop

智能体通过Agent Loop循环执行任务

Agent Loop循环包括规划、执行、观察三个阶段。

Skill对模型的四大核心要求

Agentic能力、上下文窗口与长文本处理能力、工具调用能力、推理与指令遵循能力

Agentic能力指模型主动规划任务、分解步骤、自主决策的能力。

上下文窗口与长文本处理能力。窗口大小决定了能装多少信息,长文本理解能力决定了装多了还能不能用好。

工具调用能力。Skill的执行大部分依赖工具调用,比如读取文件、执行脚本、搜索信息、访问网络。

推理与指令遵循能力。SKILL.md中的指令往往是复杂的、有条件的、需要判断的,比如“如果用户提供了模板文件就使用模板,否则使用默认格式”,或者“当检测到敏感信息时停止处理并提醒用户”。

Skill设计的核心法则和技巧

检查清单:防止遗漏的利器 检查清单是一个让智能体自我追踪的工具。你可以在Skill中要求智能体维护一个清单,每完成一步就打个钩,最后检查是否所有项目都完成了。

提炼Skill步骤

裸跑定需求清单、评估实例

先让智能体不用任何Skill,直接做一遍任务,失败点就是需求清单,

先定义评估用例,评估用例就是一组考题,用来检验Skill的效果。

最小Skill+持续迭代,评估驱动、失败优先的方法,让Skill的开发变成了一个可控的过程

有了需求清单和评估用例,接下来就是写Skill了。

先写一个能解决核心问题的最小版本。

每次迭代都要注意一点:确保不破坏之前已经解决的问题。

节约上下文的设计技巧

智能体指挥脚本去干活,上下文完全隔离,智能体拿到的只是精简后的结论,而不是原始数据。

善用子智能体机制