Add label master skill

This commit is contained in:
wuyang6
2026-05-09 17:49:53 +08:00
parent 84b715a293
commit 010dc1a88d
166 changed files with 13099 additions and 3 deletions
@@ -0,0 +1,35 @@
# 输出能力
这里维护“最终 target 怎么写”的知识。它和 `标签/` 目录不同:
- `标签/` 负责判断 query 属于哪个业务能力范围。
- `输出能力/` 负责判断最终监督标签应该写成 object、function program、intent,还是需要用户确认。
## 三类返回类型
| 返回类型 | 含义 | 是否可作为最终 target |
| --- | --- | --- |
| object | 给 function 当参数的对象,例如 `Location``PersonalDate``Resource` | 通常不单独作为最终 target |
| function | 可直接输出的函数调用,例如 `CalendarQA(...)``VisionQA(...)``QA()` | 可以作为最终 target |
| intent | 业务意图名,例如 `地图导航``餐饮服务``商品购买` | 可以作为 intent target,也可以按任务要求再包装为 Agent |
## 使用原则
1. 先判断业务标签,再判断输出能力。
2. 只有 function 需要参数时才抽取 object;不要为所有 function 强行生成 object。
3. function 可以是多行 program,例如先创建 object,再调用 function
```text
x0=Location(country="美国",province="华盛顿",city="西雅图")
CalendarQA(type="TIME",target_time="现在",location=x0)
```
4. `Agent` 字段表示由哪个 Agent 承接,是知识维度,不等于最终 target 一定写 `Agent(tag="xxx")`
5. 如果用户没有说明最终数据使用 function、intent 还是 `Agent(tag="xxx")`,生成数据前必须确认。
## 文件说明
- `对象目录.md`object 类型定义。
- `函数目录.md`function 类型定义和示例。
- `意图目录.md`intent 类型定义、承接 Agent 和示例。
- `输出组合规范.md`:如何把 object、function、intent 和独立判断维度组合为最终 target。
@@ -0,0 +1,329 @@
# 函数目录
function 可以作为最终 target 输出。若 function 参数需要 object,先构造 object,再调用 function。
## CalendarQA
返回类型:`function`
Agent`ToolsAgent`
指令类型:指令操作
功能范围:日历、当前日期、目前时间的查询,也包括指定地点时区查询,以及节日、节气、假期的时间查询。事件时间查询通常属于 `QA()`,例如“阅兵是什么时候”。
参数:
| 参数 | 说明 |
| --- | --- |
| type | 枚举:TIME、DATE、MONTH、YEAR、LUNAR_DATE、WEEKDAY、FESTIVAL、SOLAR_TERM |
| target_time | Optional[str] 时间槽位,不填默认为当前时间 |
| location | Optional[str 或 Location] 目标地点,不填默认为用户所在位置 |
示例:
```text
CalendarQA(type="DATE",target_time="今天")
CalendarQA(type="TIME")
x0=Location(country="美国",province="华盛顿",city="西雅图")
CalendarQA(type="TIME",target_time="现在",location=x0)
```
## TimeDistance
返回类型:`function`
Agent`ToolsAgent`
指令类型:指令问答
功能范围:计算两个时间点的间隔;基于时间间隔推算未来或过去日期;基于某个时间点推算另一个时间点。
参数:
| 参数 | 说明 |
| --- | --- |
| type | 枚举:DEFAULT、YEAR、MONTH、WEEK、DAY、HOUR、MINUTE、SECOND |
| start_time | 起始时间,可为具体时间、相对时间、节日节气、PersonalDate |
| end_time | 结束时间,可为具体时间、相对时间、节日节气、PersonalDate |
示例:
```text
TimeDistance(type="DAY",start_time="现在",end_time="八月十五")
x0=PersonalDate(type="BIRTHDAY",relation=["本人"])
TimeDistance(type="DAY",start_time="现在",end_time=x0)
TimeDistance(type="YEAR",start_time="1980年",end_time="现在")
```
## TimeCalculate
返回类型:`function`
Agent`ToolsAgent`
指令类型:指令问答
功能范围:除 `TimeDistance` 之外的其他时间计算类问题。
参数:无固定参数。
示例:
```text
TimeCalculate()
```
适用 query
- 上午9:18到中午12:18然后下午2点到6点加起来一共多少个小时。
- 早上7点半到晚上7点一共是几个小时中间去掉一个小时。
- 二十五周是多少天。
## VisionQA
返回类型:`function`
Agent`dialogAgent`
指令类型:指令操作
功能范围:图片问答与指代问答。图片来源可以是屏幕、拍照、用户上传、历史视觉信息等。
参数:
| 参数 | 说明 |
| --- | --- |
| imageSource | 枚举:DEFAULT、SCREEN、PHOTO、HISTORY_VISION、UNKNOWN |
| direction | Optional[str] 方位信息,如前、后、左、右、左前、附近等 |
| object | Optional[object] 业务加持对象,如 Vehicle、Food、Icon、Text 等 |
示例:
```text
VisionQA(imageSource="DEFAULT")
x0=Vehicle()
VisionQA(imageSource="DEFAULT",object=x0)
x0=Vehicle(brand="奔驰")
VisionQA(imageSource="PHOTO",direction="前",object=x0)
x0=Text()
VisionQA(imageSource="DEFAULT",object=x0)
```
## Generate
返回类型:`function`
Agent`aicreativeAgent`
指令类型:指令操作
功能范围:视频剪辑、文生图、图生图、文本生成等创作意图。
参数:
| 参数 | 说明 |
| --- | --- |
| object | 枚举对象:Video、Image、Text |
示例:
```text
x0=Video()
Generate(object=x0)
x0=Image()
Generate(object=x0)
x0=Text()
Generate(object=x0)
```
## ImageWebSearch
返回类型:`function`
Agent`aicreativeAgent`
指令类型:指令操作
功能范围:搜索静态图片、动态图片、表情包、地图相关图片、手抄报图片、简笔画图片。
示例:
```text
ImageWebSearch()
```
适用 query
- 奥特曼的图片。
- 搞笑的动态图。
- 中国地图。
- 猫的简笔画。
- 钢铁侠长什么样。
## WeatherQA
返回类型:`function`
Agent`ToolsAgent`
指令类型:指令操作
功能范围:近期天气情况问答,包括天气、温度、湿度、风力、日出日落、空气质量、穿衣指数、洗车指数等。
参数:
| 参数 | 说明 |
| --- | --- |
| Location | List[Location] 位置信息列表 |
| time | List[str] 时间信息列表 |
示例:
```text
WeatherQA()
WeatherQA(time=["春节"])
x0=Location(country="中国",province="北京市",city="北京市")
WeatherQA(Location=[x0])
```
## EarthquakeQA
返回类型:`function`
Agent`ToolsAgent`
指令类型:指令操作
功能范围:地震信息查询。
参数:
| 参数 | 说明 |
| --- | --- |
| Location | List[Location] 位置信息列表 |
| time | List[str] 时间信息列表 |
示例:
```text
EarthquakeQA(time="最近")
x0=Location(country="中国",province="北京市",city="北京市")
EarthquakeQA(Location=[x0])
```
## Summarize
返回类型:`function`
Agent`ToolsAgent`
指令类型:指令操作
功能范围:文档、URL 的总结、分析与问答。如果文档文字以图片形式呈现,仍给文档总结。
参数:
| 参数 | 说明 |
| --- | --- |
| object | Optional[Resource] 待总结资源 |
示例:
```text
x0=Resource(type="DOC")
Summarize(object=x0)
x0=Resource(type="URL")
Summarize(object=x0)
Summarize()
```
## FinanceQA
返回类型:`function`
Agent`dialogAgent`
指令类型:指令操作
功能范围:股票查询、期货查询、黄金价格查询、股票推荐、股票问答。
参数:
| 参数 | 说明 |
| --- | --- |
| type | Optional[str] 股票、金价、期货、default |
| name | Optional[str] 股票名称 |
| code | Optional[str] 股票代码 |
| time | Optional[str] 时间 |
示例:
```text
FinanceQA(type="股票",name="喜临门")
FinanceQA(type="股票",name="北矿科技")
FinanceQA(type="期货")
FinanceQA(type="金价")
FinanceQA(type="default",time="今天")
```
## Chat
返回类型:`function`
Agent`dialogAgent`
指令类型:指令问答、指令操作
功能范围:外语聊天、闲聊、唤醒词、小爱拟人聊天、重复用户内容、特殊语气/音色说话。
参数:
| 参数 | 说明 |
| --- | --- |
| type | Optional[str] 当前包括 wakeup |
| TTSType | Optional[str] 特殊语气、风格、声音、音色 |
| TTSMode | Optional[str] OPEN 或 CLOSE |
示例:
```text
Chat()
Chat(type="wakeup")
Chat(TTSType="悄悄话",TTSMode="OPEN")
Chat(TTSType="石矶娘娘",TTSMode="CLOSE")
```
## QA
返回类型:`function`
Agent`dialogAgent`
指令类型:指令问答
功能范围:通用知识问答和兜底问答,包括人物、医疗、彩票、搜索、百科、星座、民俗、烹饪、角色扮演、通用搜索、代码问答、数学定义、非近期天气、非小米产品知识、交通规则、单实体兜底、数字生成等。
参数:
| 参数 | 说明 |
| --- | --- |
| TTSType | Optional[str] 特殊语气、风格、声音、音色 |
| type | Optional[str] 当前包括 law |
示例:
```text
QA()
QA(TTSType="林黛玉")
QA(type="law")
```
典型 query
- 感觉甲醛对身体有害应该去医院看什么科。
- 六月二十一号是什么星座。
- 什么是巾帼。
- 蛋包饭怎么做。
- 搜索一下牛顿是谁。
- 民用航空法的5大特征。
@@ -0,0 +1,104 @@
# 对象目录
object 用于辅助 function 填参,通常不单独作为最终 target。只有目标 function 的参数需要 object 时才抽取。
## Location
返回类型:`object`
功能范围:获取用户所在或 query 指定的位置信息,包括国家、省份、城市、县/区、乡镇、景点或 POI,用于辅助地点相关查询。
参数:
| 参数 | 说明 |
| --- | --- |
| country | Optional[str] 国家名称 |
| province | Optional[str] 省份名称 |
| city | Optional[str] 城市名称 |
| district | Optional[str] 县/区名称 |
| town | Optional[str] 乡镇名称 |
| poi | Optional[str] 景点或 POI 信息 |
示例:
```text
x0=Location(country="美国",province="华盛顿",city="西雅图")
CalendarQA(type="TIME",target_time="现在",location=x0)
```
## PersonalDate
返回类型:`object`
功能范围:获取用户个人相关的特定时间点,如生日、结婚纪念日,或者亲人、朋友的时间纪念日,用于辅助个人相关时间查询。
参数:
| 参数 | 说明 |
| --- | --- |
| type | 枚举:BIRTHDAY(生日),ANNIVERSARY(结婚纪念日) |
| relation | List[str] 关系人,可以是本人、父母、配偶、子女、朋友姓名等 |
示例:
```text
x0=PersonalDate(type="BIRTHDAY",relation=["本人"])
TimeDistance(type="DAY",start_time="现在",end_time=x0)
```
## Resource
返回类型:`object`
功能范围:资源类信息,包括文档、图片、视频、音频、网页等,用于辅助总结、问答或资源处理。
参数:
| 参数 | 说明 |
| --- | --- |
| type | 枚举:DOC、URL、IMAGE、VIDEO、AUDIO |
示例:
```text
x0=Resource(type="DOC")
Summarize(object=x0)
```
## VisionQA 辅助对象
以下对象常作为 `VisionQA``object` 参数,用于给视觉问答增加业务类型约束:
| 对象 | 说明 |
| --- | --- |
| Vehicle | 车辆信息,可包含 color、brand、type |
| Food | 食物场景 |
| Icon | 图标、按钮、界面元素 |
| Person | 人物场景 |
| Animal | 动物场景 |
| Plant | 植物场景 |
| Text | 文字、题目、阅读场景 |
示例:
```text
x0=Vehicle(brand="奔驰")
VisionQA(imageSource="PHOTO",direction="前",object=x0)
```
## 生成类辅助对象
`Generate` 可使用如下对象:
| 对象 | 说明 |
| --- | --- |
| Video | 视频 |
| Image | 图片 |
| Text | 文本 |
示例:
```text
x0=Image()
Generate(object=x0)
```
@@ -0,0 +1,138 @@
# 意图目录
intent 表示业务意图名。它可以作为 intent target,也可以在用户明确要求 Agent 标签体系时再包装为 `Agent(tag="xxx")``Agent` 字段表示承接方,不等于最终 target 必然包含 Agent 包装。
## 使用方式
当标签卡片或输出形态判断认为目标是 intent 时,读取本目录确认:
- intent 名称。
- 返回类型是否为 `intent`
- 指令类型:指令问答或指令操作。
- 承接 Agent。
- 典型 query。
## 主要 intent 索引
| intent | Agent | 指令类型 | 简要范围 |
| --- | --- | --- | --- |
| 图像编辑 | aicreativeAgent | 指令操作 | 图像/视频基础处理、风格转换、滤镜、水印、扩图、美颜等 |
| 作文 | aicreativeAgent | 指令操作 | 作文搜索,query 中有“作文”模式 |
| 体育赛事问答 | contentAgent | 指令问答 | 体育赛事赛程、比分、排名、历史数据 |
| 媒体资源问答 | contentAgent | 指令问答 | 音乐、电影、电视剧、综艺、有声读物等资源信息 |
| 古诗词问答 | contentAgent | 指令问答 | 古诗词作者、朝代、主题、意境等 |
| 词典 | contentAgent | 指令问答 | 字词拼音、笔顺、部首、字义等 |
| 交通购票 | lifeAgent | 指令操作 | 火车票/车票查询购买、抢票时间、春运时间 |
| 体育赛事播放 | contentAgent | 指令操作 | 体育赛事直播或回放 |
| 体育赛事预约 | contentAgent | 指令操作 | 热门体育赛事预约或取消预约 |
| 信息记忆 | ToolsAgent | 指令操作 | 记忆身份证、地址、物品位置、偏好等 |
| 健康控制 | ToolsAgent | 指令操作 | 运动健康功能打开关闭、运动开始停止、测量 |
| 健康监控 | ToolsAgent | 指令操作 | 查询记录的健康状态 |
| 发短信 | ToolsAgent | 指令操作 | 发送短信 |
| 古诗词播放 | contentAgent | 指令操作 | 播放、展示、背诵古诗词 |
| 商品购买 | lifeAgent | 指令操作 | 购买物品,不含车票、电影票、外卖等 |
| 团购 | lifeAgent | 指令操作 | 查找团购活动 |
| 地图导航 | mapAgent | 指令操作 | 导航、路线、改目的地、改途经点等 |
| 地图控制 | mapAgent | 指令操作 | 地图内部设置、导航打开关闭、缩放等 |
| 地图问答 | mapAgent | 指令操作 | POI、导航问答、当前路线相关问题 |
| 地址设置 | mapAgent | 指令操作 | 设置、修改、删除家/公司/朋友地址 |
| 声纹设置 | productAgent | 指令操作 | 声纹识别、录入、注册 |
| 声音博物馆 | contentAgent | 指令操作 | 方言、自然环境声、非音乐声音内容 |
| 外卖 | lifeAgent | 指令操作 | 点外卖、外卖信息查询 |
| 外语翻译 | ToolsAgent | 指令问答 | 不同语种互译、图片翻译、指代翻译 |
| 外语词典查询 | ToolsAgent | 指令问答 | 外文单词拼写、读音、词性、近反义词 |
| 外语问答 | ToolsAgent | 指令问答 | 外语语法、词汇用法、外语文本创作 |
| 媒体应用播放 | contentAgent | 指令操作 | 调用第三方影音应用播放指定内容 |
| 家庭传声 | productAgent | 指令操作 | 对家庭设备传声播报 |
| 家用设备状态查询 | controlAgent | 指令操作 | 小米 IoT 智能家居状态查询 |
| 小爱帮助 | productAgent | 指令操作 | 小爱功能问答 |
| 小米产品帮助 | productAgent | 指令操作 | 小米产品信息、功能、故障、说明书问答 |
| 应用控制 | controlAgent | 指令操作 | App 打开关闭、页面操作、下载、语音视频通话等 |
| 快递服务 | lifeAgent | 指令操作 | 寄快递、发快递、本人快递查询 |
| 手车互联 | productAgent | 指令操作 | 手机与车机投屏、CarPlay、故障排查 |
| 打电话 | ToolsAgent | 指令操作 | 拨打、回拨、保存并拨打、挂断、接听 |
| 打车 | lifeAgent | 指令操作 | 第三方打车出行 |
| 找同款 | lifeAgent | 指令操作 | 查找同款商品 |
| 提醒 | ToolsAgent | 指令操作 | 提醒、日程、倒数日管理 |
| 搜索\|应用名 | productAgent | 指令操作 | 指定 App 内部搜索 |
| 媒体资源切换 | contentAgent | 指令操作 | 当前播放资源切换 |
| 播放器控制 | contentAgent | 指令操作 | 快进、暂停、上一首、下一集等播放器操作 |
| 播放状态查询 | contentAgent | 指令操作 | 当前播放歌曲、歌手、视频、电台信息 |
| 新闻 | contentAgent | 指令操作 | 播放或查询新闻 |
| 旅游 | lifeAgent | 指令操作 | 景点推荐、门票、攻略、景点问答 |
| 歌单 | contentAgent | 指令操作 | 音乐/电台歌单创建、收藏、播放 |
| 汽车服务 | lifeAgent | 指令操作 | 修车、洗车、保养、4S 店等 |
| 浏览器搜索 | productAgent | 指令操作 | 指定浏览器或通用搜索引擎搜索 |
| 生活缴费 | lifeAgent | 指令操作 | 交电费、水费等 |
| 电台播放 | contentAgent | 指令操作 | 播放播客、有声书、相声、评书、电台等 |
| 电影票购买 | lifeAgent | 指令操作 | 电影票购买、电影票信息查询 |
| 电视频道 | contentAgent | 指令操作 | 打开、切换或查询电视频道 |
| 电话号码查询 | ToolsAgent | 指令操作 | 联系人、电话号码、通话记录 |
| 留言 | toolsAgent | 指令操作 | 小爱音箱语音留言创建、查看、编辑、删除 |
| 相机控制 | controlAgent | 指令操作 | 拍照、录视频、相机设置、打开关闭相机 |
| 简单数学问题 | ToolsAgent | 指令问答 | 计算、单位换算、关系称谓、税收、BMI 等 |
| 系统控制 | controlAgent | 指令操作 | 系统层控制、车载控制、重复朗读、小憩模式等 |
| 系统状态查询 | controlAgent | 指令操作 | 系统动态信息或设置项查询 |
| 翻译控制 | ToolsAgent | 指令操作 | 翻译工具打开关闭、字幕字体调节等 |
| 航班信息查询 | lifeAgent | 指令操作 | 航班到达、延误、航站楼、起飞、机票查询购买 |
| 视频播放 | contentAgent | 指令操作 | 播放视频内容 |
| 讲笑话 | contentAgent | 指令操作 | 输出段子或幽默内容 |
| 设备控制 | productAgent | 指令操作 | IoT 设备控制 |
| 设备查找 | productAgent | 指令操作 | 查找手机、平板、耳机、手环等设备 |
| 话费流量服务 | lifeAgent | 指令操作 | 充值话费、流量、查套餐/余额 |
| 课程表 | ToolsAgent | 指令操作 | 课程查询、添加、启用关闭设置 |
| 负面反馈 | dialogAgent | 指令问答 | 情绪负反馈、辱骂 |
| 购物订单查询 | lifeAgent | 指令操作 | 查询消费订单 |
| 车载设备状态查询 | controlAgent | 指令操作 | 小米汽车特有设置项状态查询 |
| 违章查询 | mapAgent | 指令操作 | 查询用户自己的违章情况 |
| 通讯录 | ToolsAgent | 指令操作 | 同步通讯录、打开通话记录 |
| 酒店 | lifeAgent | 指令操作 | 订酒店、查找酒店、酒店问答 |
| 闹钟计时器 | ToolsAgent | 指令操作 | 闹钟、倒计时、秒表、小憩模式定时 |
| 限行 | mapAgent | 指令问答 | 限行、限号查询 |
| 音乐播放 | contentAgent | 指令操作 | 播放音乐、听歌识曲、唱歌 |
| 餐厅订座排号 | lifeAgent | 指令操作 | 餐厅订座、排号 |
| 个人信息 | toolsAgent | 指令操作 | 个人信息表述但没有明确记忆 |
| 屏幕操作 | controlAgent | 指令操作 | 对屏幕页面内容进行点击、滑动、复制等 |
| 应用窗口控制 | controlAgent | 指令操作 | 应用窗口放大、缩小、全屏等 |
| 汽车手册 | productAgent | 指令问答 | 汽车通用功能、配置、系统、说明书问答 |
| 视频收藏 | toolsAgent | 指令操作 | 收藏当前视频或拍摄视频 |
| 记忆查询 | toolsAgent | 指令操作 | 查询小爱中记住的个人信息 |
| 音色切换 | controlAgent | 指令操作 | 小爱音色、语气切换 |
| nonsense | dialogAgent | 指令问答 | 无意义、误录入或不可理解内容 |
## 典型 intent 示例
### 地图导航
```text
导航去云冈石窟走免费道路
怎么走到骑马俱乐部最近
导航到华兴园--->第三个
```
### 餐饮服务
```text
附近有什么好吃的
推荐一下附近的餐厅
用大众点评推荐一下附近的餐厅
```
### 系统控制
```text
音量大一点
打开空调
打开座椅加热
重复你刚才的话
打开小憩模式
```
### 闹钟计时器
```text
创建早晨6点的闹钟
30分钟后叫醒我
创建倒计时10分钟
暂停所有倒计时
```
@@ -0,0 +1,144 @@
# 输出组合规范
本文件说明如何把业务标签、输出能力和独立判断维度组合为最终 target。
## 基本结构
最终输出通常需要综合四类判断:
```text
业务标签:这句话属于哪个能力范围
输出能力:最终 target 写 function、intent 还是 Agent 包装
结构维度:是否多指令、是否自动任务
复杂度维度:是否 complex / 慢系统
```
## function program
当返回类型是 `function`,输出可以是单行或多行 program。
单行:
```text
QA()
FinanceQA(type="股票",name="喜临门")
Summarize()
```
多行:
```text
x0=Location(country="美国",province="华盛顿",city="西雅图")
CalendarQA(type="TIME",target_time="现在",location=x0)
```
只有 function 参数需要 object 时才生成 object。
## object 不单独输出
`Location``PersonalDate``Resource` 等 object 通常不单独作为最终 target。
错误:
```text
Location(city="西雅图")
```
正确:
```text
x0=Location(country="美国",province="华盛顿",city="西雅图")
CalendarQA(type="TIME",target_time="现在",location=x0)
```
## intent target
当返回类型是 `intent`,可以直接输出 intent 名称,或按当前任务要求映射到 Agent 包装。
intent 形式:
```text
地图导航
餐饮服务
商品购买
```
Agent 包装形式:
```text
Agent(tag="地图导航")
Agent(tag="餐饮服务")
Agent(tag="商品购买")
```
使用哪一种取决于当前训练/评测数据定义。没有明确说明时必须确认。
## Agent 字段
`Agent` 字段表示承接方,例如:
```text
Agent: ToolsAgent
Agent: dialogAgent
Agent: lifeAgent
Agent: mapAgent
```
它是知识字段,不等于最终 target 必须写成 `Agent(tag="ToolsAgent")``Agent(tag="地图导航")`
## 多指令组合
如果 query 被拆成多个子任务,最终结构可以包含多个 subquery,每个 subquery 有自己的 function 或 intent。
示例:
```json
[
{
"condition": null,
"querys": [
{"subquery": "关闭卧室的灯", "intent": "设备控制"},
{"subquery": "定一个明天下午四点的闹钟", "intent": "闹钟计时器"}
]
}
]
```
## 自动任务组合
如果 query 包含条件触发结构,condition 和 querys 组合输出。
示例:
```json
[
{
"condition": "上车时",
"querys": [
{"subquery": "打开空调", "intent": "设备控制"}
]
}
]
```
如果 action 是 function,可以写 function
```json
[
{
"condition": "明天八点",
"querys": [
{"subquery": "提醒我说后天晚上去露营", "intent": "提醒"}
]
}
]
```
## 数据生成前的确认
如果用户要生成训练/评测数据,需要确认:
- target 使用 function program、intent,还是 `Agent(tag="xxx")`
- object 是否需要展开进 function target。
- 多指令和自动任务是否需要输出结构化 JSON。
- complex 是否作为独立字段输出。