智能体知识点
Tool Call原理
大模型返回建议用tool_call工具,为什么客户端就知道要去执行对应的代码呢?
大模型的 tool_call 本质上只是返回一个结构化的“调用建议”,模型本身既不会执行代码,也没有任何系统权限;真正的执行发生在本地的 Agent Runtime 或客户端。因为在请求模型时,本地程序已经注册了可用工具并持续解析模型返回结果,一旦检测到符合约定协议(如 tool_calls 字段)的响应,就会根据工具注册表自动匹配对应函数或 API 并执行,然后再把执行结果回传给模型继续推理。因此,看起来像是“大模型调用了工具”,实际是 模型负责决策,本地运行时负责解析协议并完成执行。
Skills原理
Skill = 带上下文能力的 Tool + Prompt + 执行流程,可以把 Skills看成是Tool Calling的工程化封装。
Skill的原理就是:让大模型先选择“哪种能力模式”,再在该模式内部通过tool_call循环完成真实执行。
Skill构建指南
来自Anthropic官方指南:The Complete Guide to Building Skills for Claude
成功标准定义(Define Success Criteria)
指南指出这些是"aspirational targets"(理想目标),粗略基准而非精确阈值,接受一定程度的vibes-based评估。
定量指标
- 触发准确率:Skill应在90%的相关查询上被触发。测量方式:运行10-20个应触发Skill的测试查询,跟踪自动加载 vs 需手动调用的比率
- 工作流效率:在X次工具调用内完成工作流。测量方式:对比启用/未启用Skill时完成相同任务的工具调用次数和总token消耗
- API零失败:每个工作流中0次失败的API调用。测量方式:在测试运行期间监控MCP服务端日志,跟踪重试率和错误码
定性指标
- 自主性:用户不需要提示Claude下一步操作。评估方式:测试过程中记录需要重新引导或澄清的频率,收集Beta用户反馈
- 免纠正:工作流无需用户手动纠正即可完成。评估方式:对同一请求运行3-5次,比较输出的结构一致性和质量
- 跨会话一致性:不同会话中结果保持一致。评估方式:新用户是否能首次尝试就完成任务,且只需最少指导?
三类测试维度
1. 触发测试(Triggering Tests)
目标:确保Skill在正确时机被加载
- ✅ 在明确任务描述时触发
- ✅ 在改述/换说法请求时触发
- ❌ 在无关话题上不触发
示例:
应触发:
- "help me plan this sprint"
- "I need to create a project in ProjectHub"
- "Initialize a ProjectHub project for Q4 planning"
不应触发:
- "What's the weather in San Francisco?"
- "Help me write Python code"
- "Create a spreadsheet"(除非Skill处理表格)
2. 功能测试(Functional Tests)
目标:验证Skill产生正确输出
- 生成有效输出
- API调用成功
- 错误处理正常工作
- 覆盖边缘情况
3. 性能对比(Performance Comparison)
目标:证明Skill相比基线有提升
未启用Skill:
- 用户每次都要提供指令
- 15轮对话交互
- 3次失败的API调用需要重试
- 消耗12,000 tokens
启用Skill后:
- 自动执行工作流
- 仅2次澄清提问
- 0次失败的API调用
- 消耗6,000 tokens
迭代改进信号
触发不足(Undertriggering)信号
- Skill在应该加载时没有加载
- 用户需手动启用
- 出现"什么时候用这个Skill"的支持问题
解决方案:在description中添加更多细节和关键词
过度触发(Overtriggering)信号
- Skill在不相关查询时加载
- 用户频繁禁用它
- 用途混淆
解决方案:添加负面触发词,描述更具体化
Skill质量检查清单
开发前
- 确定2-3个具体用例
- 识别所需工具(内置或MCP)
- 规划文件夹结构
开发中
- 文件夹使用kebab-case命名
- SKILL.md文件存在(必须精确大写)
- YAML frontmatter有
---分隔符 - name字段:kebab-case,无空格,无大写
- description同时包含做什么和何时使用
- 无XML标签(
<>) - 指令清晰可执行
- 包含错误处理
- 提供示例
- 引用资料清晰链接
上传前
- 测试明确任务是否触发
- 测试改述请求是否触发
- 验证无关话题不触发
- 功能测试通过
- 工具集成正常(如适用)
上传后
- 在真实对话中测试
- 监控触发不足/过度触发
- 收集用户反馈
- 迭代优化description和指令
- 更新metadata中的版本号
「真诚赞赏,手留余香」
真诚赞赏,手留余香
使用微信扫描二维码完成支付