5.4 Skill 调用原理解析
通过本文你将全面了解Skill 调用原理解析的核心概念、实际应用方法和最佳实践。
概述
一、整体流程图
用户发消息
↓
1. AI 理解消息意图
↓
2. 搜索匹配的 Skills
↓
3. 找到匹配的 Skill
↓
4. 读取 SKILL.md 内容
↓
5. 按照说明执行操作
↓
6. 返回结果给用户
二、第一步:AI 理解意图
当用户发消息时,AI 会分析:
用户:请帮我画一张海边日落的图AI 分析:
- 用户想生成一张图片
- 主题:海边日落
- 关键词:画图、生成图片
三、第二步:搜索匹配的 Skills
AI 会在 skills/ 目录中搜索所有 SKILL.md 文件:
skills/
├── weather/SKILL.md → 天气相关
├── calculator/SKILL.md → 计算相关
├── image-gen/SKILL.md → 图片生成 ✅ 匹配!
└── ...
匹配方式: 1. 关键词匹配 — 检查触发条件中的关键词 2. 语义理解 — AI 理解意图后匹配
四、第三步:读取 Skill 内容
找到匹配的 Skill 后,AI 读取 SKILL.md 内容:
```markdown # 图片生成技能
触发条件
当用户说"画图"、"生成图片"时触发
基础信息
- API 地址:https://api.minimaxi.com/v1/image_generation
- 认证方式:Bearer Token
调用示例
... ```
五、第四步:按说明执行
根据 Skill 说明,AI 执行操作:
1. 从用户消息提取描述:"海边日落"
2. 构造 API 请求:
POST https://api.minimaxi.com/v1/image_generation
Headers: Authorization: Bearer
Body: {
"model": "image-01",
"prompt": "海边日落,壮观的日落景象",
"aspect_ratio": "16:9"
}
3. 发送请求
4. 等待响应
六、第五步:解析返回结果
Skill 说明中包含返回格式:
```markdown
{
"status": "success",
"url": "https://图片URL"
}
```AI 按说明解析:
- 检查 status = success
- 提取 url
- 将图片发送给用户
七、多 Skill 匹配情况
有时候一条消息可能匹配多个 Skills:
用户:帮我查一下北京天气,然后画一张北京风景图
可能的匹配:
- weather Skill ✅
- image-gen Skill ✅
AI 怎么处理:
- 按顺序执行(先查天气,再画图)
- 或者同时执行(并发调用)
八、Skill 没有匹配到怎么办
如果没有任何 Skill 匹配:
用户:你好
↓
AI 理解:只是打招呼
↓
没有匹配的 Skill
↓
AI 用默认方式回复:"你好,有什么可以帮你?"
九、Skill 优先级
当多个 Skill 都匹配时,优先级规则:
| 优先级 | 类型 | 说明 |
|---|---|---|
| 1 | 用户显式指定 | "用XX技能做..." |
| 2 | 精准匹配 | 触发词完全匹配 |
| 3 | 模糊匹配 | 语义相近 |
| 4 | 默认 | 没有匹配时 |
十、下一步学什么
- 5.5 进阶 Skill:带参数的 Skill → 编写能处理复杂参数的 Skill
- 5.6 常见 Skill 模板 → 直接套用的模板
理解原理后,写 Skill 更有针对性!
常见问题
Q: Skill 调用失败怎么排查?
A: 查看 Gateway 日志,检查参数格式和网络连通性。