From 010dc1a88df6f9f480aa102444c8e570f33c7968 Mon Sep 17 00:00:00 2001 From: wuyang6 Date: Sat, 9 May 2026 17:49:53 +0800 Subject: [PATCH] Add label master skill --- README.md | 168 +- skills/label-master/README.md | 276 ++ skills/label-master/SKILL.md | 143 + skills/label-master/knowledge/决策流程.md | 200 ++ .../label-master/knowledge/判断维度/README.md | 17 + .../knowledge/判断维度/复杂度判断.md | 21 + .../knowledge/判断维度/多指令判断.md | 116 + .../knowledge/判断维度/标注输出形态.md | 73 + .../knowledge/判断维度/自动任务判断.md | 266 ++ skills/label-master/knowledge/复杂度判断.md | 23 + .../knowledge/标签/AI创作/代码创作.md | 46 + .../knowledge/标签/AI创作/作文.md | 46 + .../knowledge/标签/AI创作/图像创作.md | 46 + .../knowledge/标签/AI创作/图像编辑.md | 46 + .../knowledge/标签/AI创作/图片搜索-图片.md | 46 + .../knowledge/标签/AI创作/文本创作.md | 46 + .../knowledge/标签/AI创作/视频创作.md | 46 + .../标签/内容和媒体播放/体育赛事播放.md | 46 + .../标签/内容和媒体播放/体育赛事问答.md | 46 + .../标签/内容和媒体播放/体育赛事预约.md | 46 + .../knowledge/标签/内容和媒体播放/古诗播放.md | 46 + .../标签/内容和媒体播放/古诗词问答.md | 46 + .../knowledge/标签/内容和媒体播放/听歌识曲.md | 46 + .../标签/内容和媒体播放/声音博物馆.md | 46 + .../标签/内容和媒体播放/媒体应用播放.md | 46 + .../内容和媒体播放/媒体资源切换(内容控制).md | 46 + .../内容和媒体播放/播放器控制(系统控制).md | 46 + .../标签/内容和媒体播放/播放状态查询.md | 46 + .../knowledge/标签/内容和媒体播放/新闻.md | 46 + .../knowledge/标签/内容和媒体播放/歌单.md | 46 + .../knowledge/标签/内容和媒体播放/电台播放.md | 46 + .../knowledge/标签/内容和媒体播放/电台问答.md | 46 + .../knowledge/标签/内容和媒体播放/电视频道.md | 46 + .../knowledge/标签/内容和媒体播放/视频播放.md | 46 + .../knowledge/标签/内容和媒体播放/视频问答.md | 46 + .../knowledge/标签/内容和媒体播放/讲笑话.md | 46 + .../knowledge/标签/内容和媒体播放/音乐播放.md | 46 + .../knowledge/标签/内容和媒体播放/音乐问答.md | 46 + .../knowledge/标签/地图导航/地图导航.md | 46 + .../knowledge/标签/地图导航/地图设置.md | 46 + .../knowledge/标签/地图导航/地图问答.md | 46 + .../knowledge/标签/地图导航/地址设置.md | 46 + .../knowledge/标签/地图导航/走哪问哪.md | 46 + .../knowledge/标签/地图导航/违章查询.md | 46 + .../knowledge/标签/地图导航/限号查询.md | 46 + .../小米产品问答/家用设备状态查询(IoT).md | 46 + .../knowledge/标签/小米产品问答/小爱帮助.md | 46 + .../标签/小米产品问答/小米产品帮助.md | 46 + .../knowledge/标签/小米产品问答/手车互联.md | 46 + .../标签/小米产品问答/系统状态查询.md | 46 + .../标签/小米产品问答/车载设备状态查询.md | 46 + .../knowledge/标签/工具类/Kinship.md | 46 + .../knowledge/标签/工具类/主动记忆.md | 46 + .../knowledge/标签/工具类/倒数日.md | 46 + .../knowledge/标签/工具类/倒计时.md | 46 + .../knowledge/标签/工具类/健康控制.md | 46 + .../knowledge/标签/工具类/单位换算.md | 46 + .../knowledge/标签/工具类/发短信.md | 46 + .../knowledge/标签/工具类/地震.md | 46 + .../knowledge/标签/工具类/外语翻译.md | 46 + .../knowledge/标签/工具类/外语词典查询.md | 46 + .../knowledge/标签/工具类/外语造句.md | 46 + .../knowledge/标签/工具类/外语问答.md | 46 + .../knowledge/标签/工具类/天气.md | 46 + .../knowledge/标签/工具类/实数性质与计算.md | 46 + .../knowledge/标签/工具类/小学数学应用题.md | 46 + .../knowledge/标签/工具类/工资税收计算.md | 46 + .../knowledge/标签/工具类/打电话.md | 46 + .../knowledge/标签/工具类/提醒.md | 46 + .../knowledge/标签/工具类/数学计算.md | 46 + .../knowledge/标签/工具类/文档总结.md | 46 + .../knowledge/标签/工具类/时间.md | 46 + .../knowledge/标签/工具类/时间距离计算.md | 46 + .../标签/工具类/标准身高计算标准体重计算.md | 46 + .../knowledge/标签/工具类/留言.md | 46 + .../knowledge/标签/工具类/竖式计算.md | 46 + .../knowledge/标签/工具类/简单数学问题.md | 46 + .../knowledge/标签/工具类/翻译功能操作.md | 46 + .../knowledge/标签/工具类/课程表.md | 46 + .../knowledge/标签/工具类/通讯录.md | 46 + .../knowledge/标签/工具类/闹钟.md | 46 + .../标签/应用控制和搜索/应用定时控制.md | 46 + .../knowledge/标签/应用控制和搜索/应用控制.md | 46 + .../标签/应用控制和搜索/搜索-应用名-QQ音乐.md | 46 + .../标签/应用控制和搜索/浏览器搜索.md | 46 + .../knowledge/标签/生活服务/交通购票.md | 46 + .../knowledge/标签/生活服务/商品信息对比.md | 46 + .../knowledge/标签/生活服务/商品推荐.md | 46 + .../knowledge/标签/生活服务/商品购买.md | 46 + .../标签/生活服务/商品购买、应用名.md | 46 + .../knowledge/标签/生活服务/团购.md | 46 + .../knowledge/标签/生活服务/外卖.md | 46 + .../标签/生活服务/平台比价-、商品比价.md | 46 + .../knowledge/标签/生活服务/快递服务.md | 46 + .../knowledge/标签/生活服务/打车.md | 46 + .../knowledge/标签/生活服务/找同款.md | 46 + .../knowledge/标签/生活服务/旅游.md | 46 + .../knowledge/标签/生活服务/汽车服务.md | 46 + .../knowledge/标签/生活服务/生活服务.md | 46 + .../knowledge/标签/生活服务/生活缴费.md | 46 + .../knowledge/标签/生活服务/电影票购买.md | 46 + .../knowledge/标签/生活服务/航班信息查询.md | 46 + .../knowledge/标签/生活服务/话费流量服务.md | 46 + .../knowledge/标签/生活服务/购物.md | 46 + .../knowledge/标签/生活服务/酒店.md | 46 + .../knowledge/标签/生活服务/餐厅订座排号.md | 46 + .../knowledge/标签/生活服务/餐饮服务.md | 46 + .../标签/系统控制和IOT设备控制/声纹.md | 46 + .../标签/系统控制和IOT设备控制/家庭传声.md | 46 + .../标签/系统控制和IOT设备控制/相机.md | 46 + .../系统控制和IOT设备控制/系统定时控制.md | 46 + .../标签/系统控制和IOT设备控制/系统控制.md | 46 + .../标签/系统控制和IOT设备控制/自动任务.md | 46 + .../系统控制和IOT设备控制/设备定时控制.md | 46 + .../标签/系统控制和IOT设备控制/设备控制.md | 46 + .../标签/系统控制和IOT设备控制/设备查找.md | 46 + .../标签/系统控制和IOT设备控制/车载控制.md | 46 + .../knowledge/标签/通用问答/人物问答.md | 46 + .../knowledge/标签/通用问答/体育赛事问答.md | 46 + .../knowledge/标签/通用问答/医疗问答.md | 46 + .../knowledge/标签/通用问答/图片问答.md | 46 + .../knowledge/标签/通用问答/彩票.md | 46 + .../knowledge/标签/通用问答/搜索.md | 46 + .../knowledge/标签/通用问答/星座.md | 46 + .../knowledge/标签/通用问答/民俗.md | 46 + .../knowledge/标签/通用问答/烹饪指南.md | 46 + .../knowledge/标签/通用问答/百科.md | 46 + .../knowledge/标签/通用问答/美食问答.md | 46 + .../knowledge/标签/通用问答/股票查询.md | 46 + .../knowledge/标签/通用问答/角色扮演.md | 46 + .../knowledge/标签/通用问答/词典.md | 46 + .../knowledge/标签/通用问答/负面反馈.md | 46 + .../knowledge/标签/通用问答/重说.md | 46 + .../knowledge/标签/通用问答/问答.md | 46 + .../knowledge/标签/通用问答/闲聊.md | 46 + skills/label-master/knowledge/标签总览.md | 41 + skills/label-master/knowledge/标签迁移索引.md | 153 + .../knowledge/索引/label_manifest.json | 2807 +++++++++++++++++ .../knowledge/索引/候选召回索引.md | 38 + .../label-master/knowledge/索引/标签索引.md | 131 + .../label-master/knowledge/索引/维度索引.md | 17 + .../label-master/knowledge/输出能力/README.md | 35 + .../knowledge/输出能力/函数目录.md | 329 ++ .../knowledge/输出能力/对象目录.md | 104 + .../knowledge/输出能力/意图目录.md | 138 + .../knowledge/输出能力/输出组合规范.md | 144 + skills/label-master/knowledge/边界/README.md | 37 + .../label-master/knowledge/边界/边界索引.md | 35 + .../knowledge/边界/领域概览/AI创作边界.md | 51 + .../边界/领域概览/内容和媒体播放边界.md | 109 + .../knowledge/边界/领域概览/地图导航边界.md | 43 + .../边界/领域概览/小米产品问答边界.md | 17 + .../knowledge/边界/领域概览/工具类边界.md | 185 ++ .../边界/领域概览/应用控制和搜索边界.md | 17 + .../knowledge/边界/领域概览/生活服务边界.md | 159 + .../领域概览/系统控制和IOT设备控制边界.md | 61 + .../knowledge/边界/领域概览/通用问答边界.md | 55 + .../高频混淆/内容播放-播放器控制-播放状态.md | 68 + .../边界/高频混淆/地图导航-餐饮服务.md | 56 + .../边界/高频混淆/地图问答-餐饮服务-旅游.md | 65 + .../高频混淆/系统控制-设备控制-车载控制.md | 67 + .../高频混淆/通用问答-文档总结-Summarize.md | 59 + skills/label-master/knowledge/迁移记录.md | 21 + .../scripts/build_label_manifest.py | 331 ++ .../scripts/validate_label_output.py | 336 ++ .../label-master/scripts/迁移_docx标签表.py | 340 ++ 166 files changed, 13099 insertions(+), 3 deletions(-) create mode 100644 skills/label-master/README.md create mode 100644 skills/label-master/SKILL.md create mode 100644 skills/label-master/knowledge/决策流程.md create mode 100644 skills/label-master/knowledge/判断维度/README.md create mode 100644 skills/label-master/knowledge/判断维度/复杂度判断.md create mode 100644 skills/label-master/knowledge/判断维度/多指令判断.md create mode 100644 skills/label-master/knowledge/判断维度/标注输出形态.md create mode 100644 skills/label-master/knowledge/判断维度/自动任务判断.md create mode 100644 skills/label-master/knowledge/复杂度判断.md create mode 100644 skills/label-master/knowledge/标签/AI创作/代码创作.md create mode 100644 skills/label-master/knowledge/标签/AI创作/作文.md create mode 100644 skills/label-master/knowledge/标签/AI创作/图像创作.md create mode 100644 skills/label-master/knowledge/标签/AI创作/图像编辑.md create mode 100644 skills/label-master/knowledge/标签/AI创作/图片搜索-图片.md create mode 100644 skills/label-master/knowledge/标签/AI创作/文本创作.md create mode 100644 skills/label-master/knowledge/标签/AI创作/视频创作.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/体育赛事播放.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/体育赛事问答.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/体育赛事预约.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/古诗播放.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/古诗词问答.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/听歌识曲.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/声音博物馆.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/媒体应用播放.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/媒体资源切换(内容控制).md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/播放器控制(系统控制).md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/播放状态查询.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/新闻.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/歌单.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/电台播放.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/电台问答.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/电视频道.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/视频播放.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/视频问答.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/讲笑话.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/音乐播放.md create mode 100644 skills/label-master/knowledge/标签/内容和媒体播放/音乐问答.md create mode 100644 skills/label-master/knowledge/标签/地图导航/地图导航.md create mode 100644 skills/label-master/knowledge/标签/地图导航/地图设置.md create mode 100644 skills/label-master/knowledge/标签/地图导航/地图问答.md create mode 100644 skills/label-master/knowledge/标签/地图导航/地址设置.md create mode 100644 skills/label-master/knowledge/标签/地图导航/走哪问哪.md create mode 100644 skills/label-master/knowledge/标签/地图导航/违章查询.md create mode 100644 skills/label-master/knowledge/标签/地图导航/限号查询.md create mode 100644 skills/label-master/knowledge/标签/小米产品问答/家用设备状态查询(IoT).md create mode 100644 skills/label-master/knowledge/标签/小米产品问答/小爱帮助.md create mode 100644 skills/label-master/knowledge/标签/小米产品问答/小米产品帮助.md create mode 100644 skills/label-master/knowledge/标签/小米产品问答/手车互联.md create mode 100644 skills/label-master/knowledge/标签/小米产品问答/系统状态查询.md create mode 100644 skills/label-master/knowledge/标签/小米产品问答/车载设备状态查询.md create mode 100644 skills/label-master/knowledge/标签/工具类/Kinship.md create mode 100644 skills/label-master/knowledge/标签/工具类/主动记忆.md create mode 100644 skills/label-master/knowledge/标签/工具类/倒数日.md create mode 100644 skills/label-master/knowledge/标签/工具类/倒计时.md create mode 100644 skills/label-master/knowledge/标签/工具类/健康控制.md create mode 100644 skills/label-master/knowledge/标签/工具类/单位换算.md create mode 100644 skills/label-master/knowledge/标签/工具类/发短信.md create mode 100644 skills/label-master/knowledge/标签/工具类/地震.md create mode 100644 skills/label-master/knowledge/标签/工具类/外语翻译.md create mode 100644 skills/label-master/knowledge/标签/工具类/外语词典查询.md create mode 100644 skills/label-master/knowledge/标签/工具类/外语造句.md create mode 100644 skills/label-master/knowledge/标签/工具类/外语问答.md create mode 100644 skills/label-master/knowledge/标签/工具类/天气.md create mode 100644 skills/label-master/knowledge/标签/工具类/实数性质与计算.md create mode 100644 skills/label-master/knowledge/标签/工具类/小学数学应用题.md create mode 100644 skills/label-master/knowledge/标签/工具类/工资税收计算.md create mode 100644 skills/label-master/knowledge/标签/工具类/打电话.md create mode 100644 skills/label-master/knowledge/标签/工具类/提醒.md create mode 100644 skills/label-master/knowledge/标签/工具类/数学计算.md create mode 100644 skills/label-master/knowledge/标签/工具类/文档总结.md create mode 100644 skills/label-master/knowledge/标签/工具类/时间.md create mode 100644 skills/label-master/knowledge/标签/工具类/时间距离计算.md create mode 100644 skills/label-master/knowledge/标签/工具类/标准身高计算标准体重计算.md create mode 100644 skills/label-master/knowledge/标签/工具类/留言.md create mode 100644 skills/label-master/knowledge/标签/工具类/竖式计算.md create mode 100644 skills/label-master/knowledge/标签/工具类/简单数学问题.md create mode 100644 skills/label-master/knowledge/标签/工具类/翻译功能操作.md create mode 100644 skills/label-master/knowledge/标签/工具类/课程表.md create mode 100644 skills/label-master/knowledge/标签/工具类/通讯录.md create mode 100644 skills/label-master/knowledge/标签/工具类/闹钟.md create mode 100644 skills/label-master/knowledge/标签/应用控制和搜索/应用定时控制.md create mode 100644 skills/label-master/knowledge/标签/应用控制和搜索/应用控制.md create mode 100644 skills/label-master/knowledge/标签/应用控制和搜索/搜索-应用名-QQ音乐.md create mode 100644 skills/label-master/knowledge/标签/应用控制和搜索/浏览器搜索.md create mode 100644 skills/label-master/knowledge/标签/生活服务/交通购票.md create mode 100644 skills/label-master/knowledge/标签/生活服务/商品信息对比.md create mode 100644 skills/label-master/knowledge/标签/生活服务/商品推荐.md create mode 100644 skills/label-master/knowledge/标签/生活服务/商品购买.md create mode 100644 skills/label-master/knowledge/标签/生活服务/商品购买、应用名.md create mode 100644 skills/label-master/knowledge/标签/生活服务/团购.md create mode 100644 skills/label-master/knowledge/标签/生活服务/外卖.md create mode 100644 skills/label-master/knowledge/标签/生活服务/平台比价-、商品比价.md create mode 100644 skills/label-master/knowledge/标签/生活服务/快递服务.md create mode 100644 skills/label-master/knowledge/标签/生活服务/打车.md create mode 100644 skills/label-master/knowledge/标签/生活服务/找同款.md create mode 100644 skills/label-master/knowledge/标签/生活服务/旅游.md create mode 100644 skills/label-master/knowledge/标签/生活服务/汽车服务.md create mode 100644 skills/label-master/knowledge/标签/生活服务/生活服务.md create mode 100644 skills/label-master/knowledge/标签/生活服务/生活缴费.md create mode 100644 skills/label-master/knowledge/标签/生活服务/电影票购买.md create mode 100644 skills/label-master/knowledge/标签/生活服务/航班信息查询.md create mode 100644 skills/label-master/knowledge/标签/生活服务/话费流量服务.md create mode 100644 skills/label-master/knowledge/标签/生活服务/购物.md create mode 100644 skills/label-master/knowledge/标签/生活服务/酒店.md create mode 100644 skills/label-master/knowledge/标签/生活服务/餐厅订座排号.md create mode 100644 skills/label-master/knowledge/标签/生活服务/餐饮服务.md create mode 100644 skills/label-master/knowledge/标签/系统控制和IOT设备控制/声纹.md create mode 100644 skills/label-master/knowledge/标签/系统控制和IOT设备控制/家庭传声.md create mode 100644 skills/label-master/knowledge/标签/系统控制和IOT设备控制/相机.md create mode 100644 skills/label-master/knowledge/标签/系统控制和IOT设备控制/系统定时控制.md create mode 100644 skills/label-master/knowledge/标签/系统控制和IOT设备控制/系统控制.md create mode 100644 skills/label-master/knowledge/标签/系统控制和IOT设备控制/自动任务.md create mode 100644 skills/label-master/knowledge/标签/系统控制和IOT设备控制/设备定时控制.md create mode 100644 skills/label-master/knowledge/标签/系统控制和IOT设备控制/设备控制.md create mode 100644 skills/label-master/knowledge/标签/系统控制和IOT设备控制/设备查找.md create mode 100644 skills/label-master/knowledge/标签/系统控制和IOT设备控制/车载控制.md create mode 100644 skills/label-master/knowledge/标签/通用问答/人物问答.md create mode 100644 skills/label-master/knowledge/标签/通用问答/体育赛事问答.md create mode 100644 skills/label-master/knowledge/标签/通用问答/医疗问答.md create mode 100644 skills/label-master/knowledge/标签/通用问答/图片问答.md create mode 100644 skills/label-master/knowledge/标签/通用问答/彩票.md create mode 100644 skills/label-master/knowledge/标签/通用问答/搜索.md create mode 100644 skills/label-master/knowledge/标签/通用问答/星座.md create mode 100644 skills/label-master/knowledge/标签/通用问答/民俗.md create mode 100644 skills/label-master/knowledge/标签/通用问答/烹饪指南.md create mode 100644 skills/label-master/knowledge/标签/通用问答/百科.md create mode 100644 skills/label-master/knowledge/标签/通用问答/美食问答.md create mode 100644 skills/label-master/knowledge/标签/通用问答/股票查询.md create mode 100644 skills/label-master/knowledge/标签/通用问答/角色扮演.md create mode 100644 skills/label-master/knowledge/标签/通用问答/词典.md create mode 100644 skills/label-master/knowledge/标签/通用问答/负面反馈.md create mode 100644 skills/label-master/knowledge/标签/通用问答/重说.md create mode 100644 skills/label-master/knowledge/标签/通用问答/问答.md create mode 100644 skills/label-master/knowledge/标签/通用问答/闲聊.md create mode 100644 skills/label-master/knowledge/标签总览.md create mode 100644 skills/label-master/knowledge/标签迁移索引.md create mode 100644 skills/label-master/knowledge/索引/label_manifest.json create mode 100644 skills/label-master/knowledge/索引/候选召回索引.md create mode 100644 skills/label-master/knowledge/索引/标签索引.md create mode 100644 skills/label-master/knowledge/索引/维度索引.md create mode 100644 skills/label-master/knowledge/输出能力/README.md create mode 100644 skills/label-master/knowledge/输出能力/函数目录.md create mode 100644 skills/label-master/knowledge/输出能力/对象目录.md create mode 100644 skills/label-master/knowledge/输出能力/意图目录.md create mode 100644 skills/label-master/knowledge/输出能力/输出组合规范.md create mode 100644 skills/label-master/knowledge/边界/README.md create mode 100644 skills/label-master/knowledge/边界/边界索引.md create mode 100644 skills/label-master/knowledge/边界/领域概览/AI创作边界.md create mode 100644 skills/label-master/knowledge/边界/领域概览/内容和媒体播放边界.md create mode 100644 skills/label-master/knowledge/边界/领域概览/地图导航边界.md create mode 100644 skills/label-master/knowledge/边界/领域概览/小米产品问答边界.md create mode 100644 skills/label-master/knowledge/边界/领域概览/工具类边界.md create mode 100644 skills/label-master/knowledge/边界/领域概览/应用控制和搜索边界.md create mode 100644 skills/label-master/knowledge/边界/领域概览/生活服务边界.md create mode 100644 skills/label-master/knowledge/边界/领域概览/系统控制和IOT设备控制边界.md create mode 100644 skills/label-master/knowledge/边界/领域概览/通用问答边界.md create mode 100644 skills/label-master/knowledge/边界/高频混淆/内容播放-播放器控制-播放状态.md create mode 100644 skills/label-master/knowledge/边界/高频混淆/地图导航-餐饮服务.md create mode 100644 skills/label-master/knowledge/边界/高频混淆/地图问答-餐饮服务-旅游.md create mode 100644 skills/label-master/knowledge/边界/高频混淆/系统控制-设备控制-车载控制.md create mode 100644 skills/label-master/knowledge/边界/高频混淆/通用问答-文档总结-Summarize.md create mode 100644 skills/label-master/knowledge/迁移记录.md create mode 100755 skills/label-master/scripts/build_label_manifest.py create mode 100755 skills/label-master/scripts/validate_label_output.py create mode 100644 skills/label-master/scripts/迁移_docx标签表.py diff --git a/README.md b/README.md index 7113e0c..84244fd 100644 --- a/README.md +++ b/README.md @@ -271,18 +271,76 @@ output/ 最终交付文件 skills//SKILL.md ``` +Skill 是可以独立维护、独立安装、被 Agent 读取和执行的能力包。它不只是 prompt,也不只是脚本,而是某类任务的“能力入口”:可以包含流程、知识、脚本、配置和模板,但必须清楚说明边界。 + +#### 适合做成 Skill 的内容 + +当前项目里的 Skill 大致分为四类: + +| 类型 | 代表 | 适合承载 | +|------|------|----------| +| 流程编排型 | `product-data`、`online-mining`、`eval-repair` | 分阶段流程、review 门禁、工具调用顺序、产物规范 | +| 工具封装型 | `elk-fetch`、`data-factory-sql` | 外部系统调用脚本、CLI 参数、依赖说明、返回格式 | +| 知识增强型 | `model-iteration/knowledge/*`,后续标签知识 Skill | 标签定义、边界规则、案例、决策依据 | +| 混合工程型 | `model-iteration` | 复杂工程闭环:流程 + 知识 + 脚本 + 配置 | + +判断一件事放在哪里: + +- **Skill**:告诉 Agent 怎么做、什么时候停、读哪些知识、如何组织流程。 +- **Knowledge / references**:放大段业务知识、规则、案例和字段说明。 +- **Scripts**:放可重复、确定性、容易写错的执行逻辑。 +- **Tools**:放平台级、强约束、需要长期稳定维护的能力,例如 records 转换、校验、线上 parquet 检索。 + +#### 推荐目录结构 + +```text +skills// + SKILL.md 必须,Agent 触发和执行该能力的入口 + README.md 可选,给维护者看的说明 + scripts/ 可选,确定性脚本或 CLI + knowledge/ 可选,业务知识、标签规则、案例 + references/ 可选,长文档、字段说明、API 说明 + assets/ 可选,模板、静态资源 + config.yaml 可选,默认参数 +``` + +不建议提交: + +- `__pycache__/` +- `.venv/` +- 临时运行结果 +- 用户私有 token、key、cookie +- 大体积产物或线上原始数据 + +#### SKILL.md frontmatter + `SKILL.md` frontmatter 至少包含: ```yaml --- -name: product-data -description: 简短说明这个 skill 做什么。 -when_to_use: 说明什么场景应该触发。 +name: skill-name +description: 简短说明这个 skill 做什么,尽量覆盖触发关键词。 +when_to_use: 说明什么场景应该触发,包含用户常见说法。 aliases: optional-alias allowed_tools: read_file, write_file, python_exec --- ``` +字段约定: + +- `name`:短横线命名,稳定、可读,例如 `online-mining`、`data-factory-sql`。 +- `description`:面向模型召回,说明能力范围和典型触发词。 +- `when_to_use`:面向模型决策,说明什么场景应该使用。 +- `aliases`:兼容旧名字、团队口头叫法。 +- `allowed_tools`:列出该 Skill 合理使用的工具,避免能力越界。 + +命名建议: + +- 用“能力名”而不是项目临时代号,例如 `model-iteration` 优于 `zk-model`。 +- 工具封装型可以用系统名,例如 `elk-fetch`、`data-factory-sql`。 +- 知识型可以用知识域名,例如 `label-master`。 +- 不要用过泛的名字,例如 `helper`、`tools`、`data`。 + 维护规则: - 用中文写主要流程说明,方便团队后续维护。 @@ -291,6 +349,110 @@ allowed_tools: read_file, write_file, python_exec - Skill 如果依赖脚本,脚本放在该 Skill 目录下,并通过 `python_exec` 调用。 - 新增业务 Skill 后,可以在 Web UI Skill 列表中按会话启用或关闭。 +#### SKILL.md 内容结构 + +推荐顺序: + +```text +1. 这个 Skill 解决什么问题 +2. 输入假设 +3. 必要工作流 +4. 需要用户 review 的门禁 +5. 输出目录和产物约束 +6. 可用脚本或知识文件 +7. 常见错误和禁止事项 +``` + +如果 `SKILL.md` 超过几百行,优先拆分: + +- 长业务规则放 `knowledge/` +- 长 API/字段说明放 `references/` +- 可执行逻辑放 `scripts/` +- `SKILL.md` 只保留导航、流程和关键门禁 + +#### 脚本型 Skill 约定 + +脚本型 Skill 典型如 `elk-fetch`、`data-factory-sql`、`model-iteration`。 + +约定: + +- Python 脚本优先放在 `scripts/`,少量历史 Skill 可保留根目录脚本,但新 Skill 优先使用 `scripts/`。 +- Agent 调用脚本优先使用 `python_exec`,不要让模型直接 `bash python xxx.py`。 +- 依赖缺失时使用 `python_package` 安装到账号级 Python 环境。 +- 脚本参数要稳定,输出尽量给 JSON 或结构化摘要,方便 Agent 继续分析。 +- 不要在脚本里硬编码 API key、token、个人路径。优先读取环境变量或用户 home 下配置。 +- 长耗时脚本必须考虑超时、分页、采样或断点,不要默认全量扫描。 + +脚本调用示例: + +```json +{ + "script_path": "skills/example/scripts/run_task.py", + "args": ["--input", "xxx"], + "timeout_seconds": 120, + "max_output_chars": 20000 +} +``` + +#### 知识型 Skill 约定 + +知识型 Skill 适合承载标签体系、业务规则、字段定义、案例库。 + +约定: + +- `SKILL.md` 只写“什么时候读哪些知识文件”。 +- `knowledge/` 下按主题拆文件,文件名语义化。 +- 每个知识文件开头写清楚适用范围。 +- 不要把所有知识一次性塞进 `SKILL.md`。 +- 面向标签、路由、复杂度等判断时,鼓励输出“候选、依据、排除项、不确定点”,不要过早封装成黑盒单步分类。 + +例如后续中控标签知识可以先设计为: + +```text +skills/label-master/ + SKILL.md + knowledge/ + agents.md + functions.md + complex_rules.md + boundary_cases.md + examples.md + scripts/ + build_index.py +``` + +#### 外部 Skill 仓库安装约定 + +允许同事把能力打包为独立 git 仓库维护,再安装到本项目: + +```text +skills// +``` + +安装或迁移时需要检查: + +- 是否有合法 `SKILL.md` frontmatter。 +- skill 名是否符合项目命名风格。 +- 是否包含不该提交的缓存、运行产物、私钥、token。 +- 脚本是否能通过 `python_exec` 调用。 +- 依赖是否写清楚,缺包时能通过 `python_package` 安装。 +- 输出目录是否遵守当前会话 `output/` / `scratchpad/` 公约。 +- 高风险动作是否有用户确认门禁。 + +外部仓库可以保留自己的 README,但真正影响 Agent 行为的是 `SKILL.md`。 + +#### 高风险动作门禁 + +Skill 中只要涉及下面动作,必须先展示计划并等待用户确认: + +- 批量修改训练数据或标签定义。 +- 提交训练、部署模型、启动 CML job。 +- 写入外部路径或覆盖已有产物。 +- 推送 git、改远端配置。 +- 导出包含敏感线上字段的数据。 + +用户明确说“开始评测”“查一下”“分析一下”时,可以执行只读分析;不要自动升级成训练、部署或批量改数据。 + ### Tool 公约 工具是稳定执行边界。 diff --git a/skills/label-master/README.md b/skills/label-master/README.md new file mode 100644 index 0000000..17d3054 --- /dev/null +++ b/skills/label-master/README.md @@ -0,0 +1,276 @@ +# label-master(标签大师) + +`label-master` 是中控标签知识库 skill,中文名“标签大师”。它用于帮助 Agent 理解标签体系、比较标签边界、校验数据生成目标,并把旧标签文档逐步沉淀成可维护、可检索、可校验的 Markdown 知识。 + +这个目录不是一个黑盒分类器。它的目标是让 Agent 像人工标注同学一样,按步骤阅读知识、收敛候选、解释依据,并在不确定时向人确认。 + +## 什么时候使用 + +适合使用这个 skill 的场景: + +- 判断一个 query 应该归属哪个标签。 +- 解释两个标签之间的边界。 +- 校验数据集里的 `target` 是否是合法标签、function、intent 或 Agent 包装。 +- 为数据生成任务确认标签定义和输出形式。 +- 分析线上 badcase 为什么容易混淆。 +- 维护中控标签知识、补充边界经验。 + +不适合使用这个 skill 的场景: + +- 直接生成训练集或评测集记录。 +- 导出 jsonl、csv、prompt 表格等数据格式。 +- 直接查询线上数据。 +- 替代人工确认尚未共识的标签迁移方案。 + +这些能力应由 `product-data`、`online-mining` 或其他数据开发 skill 承接。 + +## 核心判断流程 + +标签判断不要直接从关键词跳到最终标签。推荐流程是: + +```text +输入理解 + -> 结构维度预判:complex / 多指令 / 自动任务 + -> 候选召回:按动作、对象、资源、设备缩小候选 + -> 业务标签判断:读取标签卡片和高频边界 + -> 输出能力判断:function / intent / object / Agent 包装 + -> 组合最终 target + -> 不确定则向用户确认 +``` + +运行时入口: + +- [SKILL.md](SKILL.md):给 Agent 注入的使用协议。 +- [knowledge/决策流程.md](knowledge/决策流程.md):完整判断顺序。 +- [knowledge/索引/候选召回索引.md](knowledge/索引/候选召回索引.md):第一步缩小候选范围。 +- [knowledge/边界/边界索引.md](knowledge/边界/边界索引.md):高频边界入口。 + +## 目录结构 + +```text +label-master/ + SKILL.md + README.md + knowledge/ + 决策流程.md + 标签总览.md + 迁移记录.md + 标签迁移索引.md + 索引/ + 候选召回索引.md + 标签索引.md + 维度索引.md + label_manifest.json + 标签/ + ... + 边界/ + README.md + 边界索引.md + 高频混淆/ + 领域概览/ + 判断维度/ + 复杂度判断.md + 多指令判断.md + 自动任务判断.md + 标注输出形态.md + 输出能力/ + README.md + 函数目录.md + 对象目录.md + 意图目录.md + 输出组合规范.md + scripts/ + build_label_manifest.py + validate_label_output.py + 迁移_docx标签表.py +``` + +## 知识分层 + +### `判断维度/` + +维护独立于业务标签的判断维度: + +- `复杂度判断.md`:快慢系统、complex 维度。 +- `多指令判断.md`:是否需要拆成多个 subquery。 +- `自动任务判断.md`:条件触发、condition 作用域、自动化任务。 +- `标注输出形态.md`:最终输出应该是 function、intent、Agent 包装,还是需要确认。 + +这些维度不要写进每个标签卡片里。 + +### `标签/` + +维护业务标签卡片。每个标签卡片描述: + +- 标注输出候选。 +- 适用范围。 +- 典型 query。 +- Function / Agent 说明。 +- 满足边界问题。 +- 易混淆标签。 +- 划分原则。 + +标签卡片是业务能力知识,不直接决定最终输出格式。 + +### `输出能力/` + +维护最终可消费 target 的能力定义: + +- `函数目录.md`:function 类型和参数。 +- `对象目录.md`:Location、Resource、PersonalDate 等 object。 +- `意图目录.md`:intent 名、承接 Agent 和范围。 +- `输出组合规范.md`:如何组合 object + function、多指令 JSON、自动任务 JSON。 + +注意:object 只用于 function 填参,通常不单独作为最终 target。 + +### `边界/` + +维护跨标签混淆经验: + +- `高频混淆/`:人工维护的高频边界卡,运行时优先读取。 +- `领域概览/`:从旧标签资料自动迁移出来的领域边界概览,只作为背景补充。 + +不要直接全量读取 `边界/`。先读 `边界索引.md`,再读命中的高频边界卡。 + +## 维护规则 + +### 修改标签定义 + +优先修改: + +```text +knowledge/标签/<领域>/<标签名>.md +``` + +适合改这里的内容: + +- 标签适用范围。 +- 典型 query。 +- Function / Agent 说明。 +- 易混淆标签。 +- 划分原则。 + +### 修改高频边界 + +优先修改: + +```text +knowledge/边界/高频混淆/*.md +``` + +如果某类 badcase 或数据生成任务反复出现同一类混淆,应新增一张高频边界卡。 + +边界卡建议包含: + +- 适用场景。 +- 候选集合。 +- 决策顺序。 +- 正例。 +- 反例。 +- 输出建议。 +- 仍需确认的问题。 + +### 修改输出格式 + +优先修改: + +```text +knowledge/判断维度/标注输出形态.md +knowledge/输出能力/ +``` + +不要在单个标签卡片里散落维护 function、intent、object 的全局规则。 + +### 修改索引 + +人工可维护: + +- `knowledge/索引/候选召回索引.md` +- `knowledge/边界/边界索引.md` + +脚本生成,不要手改: + +- `knowledge/索引/label_manifest.json` + +## 脚本 + +### 生成 manifest + +修改 Markdown 知识后,运行: + +```bash +python skills/label-master/scripts/build_label_manifest.py +``` + +检查 manifest 是否最新: + +```bash +python skills/label-master/scripts/build_label_manifest.py --check +``` + +### 校验 target + +校验 Agent 标签: + +```bash +python skills/label-master/scripts/validate_label_output.py --target 'Agent(tag="地图导航")' +``` + +校验 function program: + +```bash +python skills/label-master/scripts/validate_label_output.py --target $'x0=Resource(type="DOC")\nSummarize(object=x0)' +``` + +校验多指令或自动任务 JSON: + +```bash +python skills/label-master/scripts/validate_label_output.py --target '[{"condition": null, "querys": [{"subquery": "附近有什么好吃的", "intent": "餐饮服务"}]}]' +``` + +批量校验 records 文件: + +```bash +python skills/label-master/scripts/validate_label_output.py --file output/records.jsonl --field target +``` + +校验脚本只检查格式、存在性和引用关系,不负责判断 query 语义是否正确。 + +## 旧文件迁移状态 + +主体标签知识来自 `标签定义/Label定义-*.docx`,已经迁移为 Markdown 标签卡片。 + +暂不作为核心知识迁移: + +- `标签定义/Agent技术方案汇总.docx`:主要是旧 Agent 方案、context 和统计信息,不是标签定义表。 +- `标签定义/重构数据标签梳理.xlsx`:当前只有一个单元格 `老标签`,没有有效迁移内容。 + +旧文档只作为迁移输入和历史参考。后续维护以 `knowledge/` 下的 Markdown 为准。 + +## 推荐工作流 + +### 判断一个 query 的标签 + +1. 读 `knowledge/决策流程.md`。 +2. 判断是否涉及 complex、多指令、自动任务。 +3. 读 `knowledge/索引/候选召回索引.md`。 +4. 读候选标签卡片。 +5. 如命中混淆,读 `knowledge/边界/边界索引.md` 和对应高频边界卡。 +6. 如需最终 target,读 `knowledge/判断维度/标注输出形态.md` 和 `knowledge/输出能力/`。 +7. 输出推荐标签、候选标签、依据、排除项、输出形态和不确定点。 + +### 维护一次标签知识 + +1. 修改标签卡片或高频边界卡。 +2. 如新增高频边界,更新 `knowledge/边界/边界索引.md`。 +3. 如新增召回信号,更新 `knowledge/索引/候选召回索引.md`。 +4. 运行 `build_label_manifest.py`。 +5. 用 `validate_label_output.py` 校验关键 target。 + +## 注意事项 + +- 不要把所有规则都塞进 `SKILL.md`。`SKILL.md` 只写 Agent 如何使用知识。 +- 不要把 complex、多指令、自动任务写进每个标签卡片。 +- 不要默认所有标签都输出 `Agent(tag="xxx")`。 +- 不要手动修改 `label_manifest.json`。 +- 不要长期依赖旧 docx/xlsx,知识确认后应沉淀到 Markdown。 diff --git a/skills/label-master/SKILL.md b/skills/label-master/SKILL.md new file mode 100644 index 0000000..515385a --- /dev/null +++ b/skills/label-master/SKILL.md @@ -0,0 +1,143 @@ +--- +name: label-master +description: 标签大师:读取和使用中控标签知识库,辅助标签边界理解、候选标签比较、数据生成目标校验和标签知识问答。 +when_to_use: 当用户要求判断 query 应该归属哪个标签、解释标签边界、校验数据生成目标中的 target、整理标签知识或分析标签混淆时使用。 +aliases: label-knowledge, 标签大师, 标签知识, label, 标签体系 +allowed_tools: read_file, write_file, edit_file, grep_search, glob_search, ask_user_question, python_exec, bash +--- + +使用这个 skill 作为“标签知识理解和标签边界分析”的入口。它不直接把标签判断收敛成一个黑盒分类工具,而是指导 Agent 逐步阅读知识、比较候选、解释依据,并在不确定时向用户确认。 + +## 知识入口 + +长期维护入口在本 skill 的 `knowledge/` 目录: + +- `knowledge/标签总览.md`:标签体系总览、领域索引和推荐阅读路径。 +- `knowledge/决策流程.md`:完整判断顺序,覆盖结构维度、业务标签、输出能力和最终组合。 +- `knowledge/索引/候选召回索引.md`:根据 query 的动作、对象、资源和设备快速缩小候选范围。 +- `knowledge/索引/标签索引.md`:Agent 第一阶段使用的轻量索引,包含领域、标签、旧 tag、Agent 候选、Function 候选和知识卡片路径。 +- `knowledge/索引/维度索引.md`:Agent 第一阶段判断是否需要加载标注输出、complex、多指令、自动任务等维度知识。 +- `knowledge/输出能力/`:维护 object、function、intent 和最终 target 组合规范。 +- `knowledge/判断维度/`:独立维护标注输出形态、complex、多指令、自动任务等非业务标签维度。 +- `knowledge/标签/`:按标签维护的知识卡片,文件名使用中文。 +- `knowledge/边界/边界索引.md`:高频混淆边界入口。 +- `knowledge/边界/高频混淆/`:人工维护的高频边界卡,运行时优先读取。 +- `knowledge/边界/领域概览/`:旧资料自动迁移出的领域边界概览,只作为补充背景。 +- `knowledge/迁移记录.md`:仅记录从旧文档迁移到 Markdown 知识库的过程,不作为运行时主要依据。 + +如果用户问单个标签,优先读 `knowledge/索引/标签索引.md` 定位对应卡片,再读 `knowledge/标签/*.md`。如果用户问边界、分类或最终 target,先读 `knowledge/决策流程.md`,再按流程读取 `候选召回索引.md`、候选标签、`边界索引.md`、高频混淆卡、判断维度和输出能力文件。 + +## 决策流程 + +处理标签判断、边界解释、目标校验或数据 target 确认时,按下面流程工作: + +1. 提取用户 query、上下文、设备、已有候选标签、用户给出的标签假设。 +2. 读取 `knowledge/决策流程.md`,按“结构维度 -> 业务标签 -> 输出能力 -> 组合结果”的顺序推进。 +3. 先判断是否涉及自动任务、多指令或 complex;必要时读取 `knowledge/索引/维度索引.md` 和 `knowledge/判断维度/`。 +4. 再读取 `knowledge/索引/候选召回索引.md`、`knowledge/标签总览.md`、`knowledge/索引/标签索引.md`,找出 2-5 个候选领域或候选标签。 +5. 如果命中高频混淆,读取 `knowledge/边界/边界索引.md` 和 `knowledge/边界/高频混淆/` 下对应文件。 +6. 读取候选标签卡片,重点看“标注输出”“适用范围”“不适用范围”“易混淆标签”“划分原则”。 +7. 如果仍然不清楚,再读取 `knowledge/边界/领域概览/` 下对应领域文件作为补充。 +8. 如任务涉及最终 target 输出,读取 `knowledge/判断维度/标注输出形态.md` 和 `knowledge/输出能力/` 下对应文件。 +9. 输出判断时必须包含: + - 推荐标签 + - 候选标签 + - 判断依据 + - 排除哪些标签以及原因 + - 输出形式判断:function program、intent、Agent 包装,或需要用户确认 + - complex 判断(如任务需要) + - 不确定点或需要用户确认的问题 + +不要只给一个标签名。标签判断应该可解释、可 review。不要一开始读取整个 `标签/`、`边界/` 或 `输出能力/` 目录;先读索引,再读候选文件。 + +## 输出形式约束 + +旧标签资料中同时存在 `tag标签`、`Function及参数定义`、object、function、intent 和承接 Agent。不要默认把所有标签都写成 `Agent(tag="...")`。需要判断输出格式时,先读取 `knowledge/判断维度/标注输出形态.md` 和 `knowledge/输出能力/输出组合规范.md`。 + +阅读标签卡片时,必须区分: + +- `旧 tag 标签`:旧表里的标签名。 +- `Agent 形式候选`:如果当前任务仍使用 tag 体系,可能写成 `Agent(tag="xxx")`。 +- `Function 形式候选`:如果当前任务使用 function 体系,需要参考卡片中的函数、参数或满足方式。 +- `object`:只在 function 需要参数时抽取,例如 `Location`、`PersonalDate`、`Resource`。 +- `intent`:业务意图输出,可以直接作为 intent target,也可以按任务要求包装为 Agent。 +- `当前最终输出`:没有明确迁移状态时,一律视为待确认。 + +当用户要生成训练/评测数据,且没有明确说明使用 function program、intent 还是 Agent 包装时,必须先确认 target 输出格式,不要自行选择。 + +## 脚本化能力 + +本 skill 提供两个确定性脚本。脚本只负责知识索引、格式检查和合法性校验,不负责替代 Agent 做 query 语义判断。 + +### 生成知识索引 + +当标签知识 Markdown 被新增或修改后,调用: + +```bash +python skills/label-master/scripts/build_label_manifest.py +``` + +脚本会读取 `knowledge/标签/`、`knowledge/输出能力/`、`knowledge/判断维度/` 和 `knowledge/边界/`,生成: + +```text +skills/label-master/knowledge/索引/label_manifest.json +``` + +这个 manifest 是 Agent 和校验脚本使用的机器索引。人工维护仍以 Markdown 为准,不要直接手改 manifest。需要检查 manifest 是否同步时,调用: + +```bash +python skills/label-master/scripts/build_label_manifest.py --check +``` + +### 校验标签输出 + +当 Agent 已经给出 target、function program、intent、Agent 包装、多指令 JSON 或自动任务 JSON 后,在写入数据集前调用: + +```bash +python skills/label-master/scripts/validate_label_output.py --target 'Agent(tag="地图导航")' +``` + +常见示例: + +```bash +python skills/label-master/scripts/validate_label_output.py --target 'Agent(tag="餐饮服务")' +python skills/label-master/scripts/validate_label_output.py --target $'x0=Resource(type="DOC")\nSummarize(object=x0)' +python skills/label-master/scripts/validate_label_output.py --target '[{"condition": null, "querys": [{"subquery": "附近有什么好吃的", "intent": "餐饮服务"}]}]' +``` + +批量校验 JSON/JSONL 文件中的 target 字段: + +```bash +python skills/label-master/scripts/validate_label_output.py --file output/records.jsonl --field target +``` + +校验结果会输出 JSON: + +```json +{ + "valid": true, + "detected_type": "agent", + "normalized_output": "Agent(tag=\"地图导航\")", + "errors": [], + "warnings": [], + "references": [] +} +``` + +如果 `valid=false`,必须先根据 `errors` 修正输出,再继续生成、落盘或导出数据。 + +## 和数据开发 skill 的关系 + +`product-data`、`online-mining` 等数据开发 skill 在需要确认 target、比较标签边界、生成边界样本或分析 badcase 时,可以读取本 skill 的知识文件。 + +本 skill 只负责标签知识、边界判断和 target 合法性校验,不负责生成 dataset draft,不负责导出 canonical records。需要生成数据时,继续使用数据开发 skill 的 review 和 records 工具链。 + +## 维护规则 + +- 新增或修改标签知识时,优先修改 `knowledge/标签/*.md` 和 `knowledge/边界/高频混淆/*.md`。 +- 不要要求 Agent 长期回读旧 docx。旧 docx 只作为迁移输入。 +- complex、多指令、自动任务等维度只写在 `knowledge/判断维度/`,不要写进每个标签卡片。 +- object、function、intent 和 Agent 承接关系写在 `knowledge/输出能力/`,不要散落到标签卡片里重复维护。 +- 标签卡片文件名使用中文,便于人工维护。 +- 标签输出表达必须保留完整形式。Agent 形式例如 `Agent(tag="地图导航")`;Function 形式必须按已确认的 function 格式写,不要只写标签名。 +- 修改标签、function、intent、object 或边界知识后,运行 `scripts/build_label_manifest.py` 更新 manifest。 diff --git a/skills/label-master/knowledge/决策流程.md b/skills/label-master/knowledge/决策流程.md new file mode 100644 index 0000000..fc927ce --- /dev/null +++ b/skills/label-master/knowledge/决策流程.md @@ -0,0 +1,200 @@ +# 决策流程 + +本文件定义 Agent 使用 `label-master`(标签大师)时的推荐判断顺序。目标是让 Agent 像人工标注同学一样,先判断结构维度,再判断业务标签,最后确定输出格式。 + +## 总体顺序 + +```text +输入理解 + -> 结构维度预判:自动任务 / 多指令 / complex + -> 业务标签候选:候选召回、领域、标签、高频边界 + -> 输出能力判断:function program / intent / Agent 包装 + -> 组合最终结果 + -> 不确定则向用户确认 +``` + +不要把所有知识一次性读入。每一步只读取当前需要的索引和候选文件。 + +## 1. 输入理解 + +先提取: + +- 当前 query。 +- 上下文、前轮对话、设备、端侧信息。 +- 用户是否明确要求某种输出格式。 +- 用户是在做标签判断、数据生成、badcase 分析,还是标签知识问答。 + +如果是训练/评测数据生成,额外确认: + +- 是否需要 function program。 +- 是否需要 intent。 +- 是否需要 `Agent(tag="xxx")` 包装。 +- 是否需要 complex、多指令、自动任务字段。 + +## 2. 结构维度预判 + +结构维度不是业务标签,不要混进 `Agent(tag="xxx")`。 + +### 自动任务 + +如果 query 包含条件触发结构,例如“当/如果/时候/之后/到达/每/一...就”,或者涉及超级任务、自动化、提醒,则读取: + +- `索引/维度索引.md` +- `判断维度/自动任务判断.md` + +自动任务判断会给出 `condition`,并影响后续 subquery 的组织。 + +### 多指令 + +如果 query 包含多个动作、多个设备、并列连接、多个方向调整,或者可能需要拆成多个子任务,则读取: + +- `索引/维度索引.md` +- `判断维度/多指令判断.md` + +多指令判断会给出多个 `subquery`。后续业务标签判断应对每个 subquery 分别进行。 + +### complex + +complex 是快慢系统判断,独立于业务标签。它可以先粗判,但建议在业务标签和输出形态判断后再最终确认。 + +读取: + +- `判断维度/复杂度判断.md` + +## 3. 业务标签候选 + +对原 query 或拆分后的每个 subquery,按下面路径读取知识: + +1. 读取 `索引/候选召回索引.md`,根据 query 的动作、对象、资源、设备快速缩小候选范围。 +2. 读取 `标签总览.md`,确认候选领域。 +3. 读取 `索引/标签索引.md`,找到 2-5 个候选标签。 +4. 如果候选命中高频混淆,读取 `边界/边界索引.md` 和 `边界/高频混淆/` 下对应文件。 +5. 读取候选标签卡片,例如 `标签/地图导航/地图导航.md`。 +6. 如果仍然不清楚,再读取 `边界/领域概览/` 下对应领域文件作为背景补充。 + +输出业务标签判断时必须说明: + +- 推荐标签。 +- 候选标签。 +- 为什么推荐。 +- 为什么排除其他候选。 +- 哪些信息还不确定。 + +注意:`边界/领域概览/` 多数来自自动迁移,适合补背景,不适合作为第一判断入口。人工维护的 `边界/高频混淆/` 优先级更高。 + +## 4. 输出能力判断 + +业务标签不等于最终 target。判断最终输出格式时读取: + +- `判断维度/标注输出形态.md` +- `输出能力/README.md` +- `输出能力/输出组合规范.md` + +如果是 function,再读取: + +- `输出能力/函数目录.md` +- 必要时读取 `输出能力/对象目录.md` + +如果是 intent,再读取: + +- `输出能力/意图目录.md` + +判断重点: + +- 这个类别是否已经 function 化。 +- function 是否需要参数。 +- 参数是否需要先构造 object。 +- 这个类别是否只是 intent。 +- 当前任务是否要求 `Agent(tag="xxx")` 包装。 +- Agent 字段是否只是承接知识,而不是最终 target。 + +## 5. 组合最终结果 + +### 单 query + function + +```text +CalendarQA(type="DATE",target_time="今天") +``` + +### 单 query + object + function + +```text +x0=Location(country="美国",province="华盛顿",city="西雅图") +CalendarQA(type="TIME",target_time="现在",location=x0) +``` + +### 单 query + intent + +```text +地图导航 +``` + +### 单 query + Agent 包装 + +```text +Agent(tag="地图导航") +``` + +### 多指令 + +```json +[ + { + "condition": null, + "querys": [ + {"subquery": "关闭卧室的灯", "intent": "设备控制"}, + {"subquery": "定一个明天下午四点的闹钟", "intent": "闹钟计时器"} + ] + } +] +``` + +### 自动任务 + +```json +[ + { + "condition": "上车时", + "querys": [ + {"subquery": "打开空调", "intent": "设备控制"} + ] + } +] +``` + +## 6. 需要用户确认的情况 + +以下情况不要硬猜: + +- 用户要生成数据,但没说明 target 使用 function program、intent 还是 Agent 包装。 +- function 和 intent 都可能满足。 +- 旧标签资料里只有 tag,但输出能力目录里没有对应 function 或 intent。 +- 多指令和单意图之间存在明显歧义。 +- 自动任务和普通定时/延时控制存在冲突。 +- complex 维度需要作为数据字段输出,但用户没有定义格式。 + +推荐提问方式: + +```text +我能判断业务标签大概率是“地图导航”,但这批数据的最终 target 还需要确认: +你希望写成 Agent(tag="地图导航"),还是写成具体 function / intent 形式? +``` + +## 7. 推荐输出模板 + +```text +结构判断: +- 自动任务:否 +- 多指令:否 +- complex:待确认/false/true + +业务标签: +- 推荐:地图导航 +- 候选:地图导航、餐饮服务、通用问答 +- 排除:餐饮服务,因为 query 明确要求导航动作 + +输出形态: +- 推荐:Agent 包装 / intent / function program / 待确认 +- 候选:Agent(tag="地图导航");地图导航 intent +- 需要确认:当前任务是否要求 Agent 包装 +``` diff --git a/skills/label-master/knowledge/判断维度/README.md b/skills/label-master/knowledge/判断维度/README.md new file mode 100644 index 0000000..2acb8d1 --- /dev/null +++ b/skills/label-master/knowledge/判断维度/README.md @@ -0,0 +1,17 @@ +# 判断维度 + +这里维护和业务标签树并列的判断维度。它们不是 `Agent(tag="xxx")` 的子标签,也不应该混入具体标签卡片。 + +当前维度: + +- `标注输出形态.md`:判断最终监督标签应该使用 Agent 包装、Function 形式,还是需要用户确认。 +- `复杂度判断.md`:判断是否是 complex / 慢系统任务。 +- `多指令判断.md`:判断 query 是否需要拆成多个子任务,以及如何切分和改写。 +- `自动任务判断.md`:判断 query 是否是条件触发任务,以及 condition 和 action 的作用域。 + +推荐顺序: + +1. 先做结构维度预判:自动任务、多指令、complex。 +2. 再做业务标签候选。 +3. 再判断标注输出形态。 +4. 最后组合为当前任务所需的数据格式。 diff --git a/skills/label-master/knowledge/判断维度/复杂度判断.md b/skills/label-master/knowledge/判断维度/复杂度判断.md new file mode 100644 index 0000000..57eba15 --- /dev/null +++ b/skills/label-master/knowledge/判断维度/复杂度判断.md @@ -0,0 +1,21 @@ +# 复杂度判断 + +complex / 快慢系统是独立维度,不属于业务标签本身。业务标签负责判断“是什么能力”,复杂度负责判断“是否需要规划、推理或多步骤处理”。 + +## 当前临时定义 + +- `complex=false`:原子化、短链路、可直接执行或直接回答的请求。 +- `complex=true`:需要规划、分析、推理、组合多个步骤、跨信息源综合,或需要长上下文处理的请求。 + +## 判断原则 + +- 不要因为某个标签天然复杂就直接设为 complex,需要看本次 query 的任务形态。 +- 明确的一步控制、一步查询、一步导航通常是 `complex=false`。 +- 需要制定计划、比较多方案、总结长文本、生成复杂内容、连续推理通常是 `complex=true`。 +- 当复杂度边界和业务标签边界同时存在歧义时,先分别判断,再说明组合结果。 + +## 待维护问题 + +- 哪些标签默认偏快系统。 +- 哪些标签在特定参数或上下文下转为慢系统。 +- complex 输出格式和最终标签表达如何组合。 diff --git a/skills/label-master/knowledge/判断维度/多指令判断.md b/skills/label-master/knowledge/判断维度/多指令判断.md new file mode 100644 index 0000000..6e0caea --- /dev/null +++ b/skills/label-master/knowledge/判断维度/多指令判断.md @@ -0,0 +1,116 @@ +# 多指令判断 + +多指令是独立维度,不属于业务标签树。它用于判断一个 query 是否需要拆成多个可独立执行的子任务,以及每个子任务对应的业务标签或 intent。 + +## 输出目标 + +推荐结构: + +```json +[ + { + "condition": null, + "querys": [ + {"subquery": "关闭卧室的灯", "intent": "设备控制"}, + {"subquery": "定一个明天下午四点的闹钟", "intent": "闹钟"} + ] + } +] +``` + +其中 `condition` 由自动任务维度负责判断;没有条件时为 `null`。 + +## 单意图 + +以下情况通常不要拆分: + +- 简单单意图:只有一个核心动作或询问目标。 +- 子句存在强执行依赖:拆分会导致参数丢失、顺序错误或重复执行。 +- 同品类单操作:同一动作作用于同一功能品类的多个位置或实例。 +- 多查询:多个查询类目标可以作为一个查询意图处理。 +- 内容播放 + 播放控制:播放具体内容并设置上一首、下一首、循环等,通常视为单个播放意图。 +- 顺序执行操作:多个连续步骤共同完成单一任务,例如打开应用、搜索内容、点击结果。 +- 改口重复:口误、重复词或重说只保留一次核心意图。 +- 相反操作:同一设备或功能连续相反动作,通常视为单意图或口语修正。 + +## 需要切分 + +以下情况通常需要拆成多个子任务: + +- 并列连词:和、并、然后、再、顺便、同时、并且。 +- 明显语义独立的动作或查询目标。 +- 同属一个意图类别但语义完整且可独立执行的子句。 +- 同一设备或部件存在多个不同方向调整,例如“后视镜往里往前调”。 + +## 切分原则 + +- 每个子句必须能独立构成一个完整意图。 +- 不可过度细分,导致子句无法理解。 +- 拆分后需要继承必要动作、位置或设备信息。 + +## 改写规则 + +### 动作继承 + +“打开空调和电视”应改写为: + +```json +[ + { + "condition": null, + "querys": [ + {"subquery": "打开空调", "intent": "设备控制"}, + {"subquery": "打开电视", "intent": "设备控制"} + ] + } +] +``` + +### 无 trigger 的位置继承 + +“打开客厅电视和吸顶灯”应改写为: + +```json +[ + { + "condition": null, + "querys": [ + {"subquery": "打开客厅电视", "intent": "设备控制"}, + {"subquery": "打开客厅吸顶灯", "intent": "设备控制"} + ] + } +] +``` + +### 设备继承 + +“客厅吸顶灯调到最亮色温调到最大”应改写为: + +```json +[ + { + "condition": null, + "querys": [ + {"subquery": "客厅吸顶灯调到最亮", "intent": "设备控制"}, + {"subquery": "客厅吸顶灯色温调到最大", "intent": "设备控制"} + ] + } +] +``` + +## 典型单意图例子 + +- 打开空调调到二十六度。 +- 扫地机设置为又扫又拖清理一下客厅。 +- 打开网易云音乐播放青花瓷。 +- 关闭主驾和后排车窗。 +- 明天武汉和北京的天气。 +- 播放张杰的天下并调成单曲循环模式。 + +## 典型多指令例子 + +- 关闭所有的座椅加热然后声音放到十三。 +- 将能量回收调到柔和并打开氛围灯。 +- 关闭卧室的灯定一个明天下午四点的闹钟。 +- 关闭 QQ 音乐打开网易云音乐。 +- HUD 角度往左往上偏一点。 diff --git a/skills/label-master/knowledge/判断维度/标注输出形态.md b/skills/label-master/knowledge/判断维度/标注输出形态.md new file mode 100644 index 0000000..e7b1aef --- /dev/null +++ b/skills/label-master/knowledge/判断维度/标注输出形态.md @@ -0,0 +1,73 @@ +# 标注输出形态 + +这个维度用于判断最终监督标签应该写成 function program、intent,还是 `Agent(tag="xxx")` 包装。详细 object、function、intent 定义见 `../输出能力/`。 + +它和业务标签不同: + +- 业务标签回答“query 属于哪个能力范围”。 +- 输出形态回答“训练/评测数据里的 target 应该怎么写”。 + +## 输出能力目录 + +需要详细判断时,读取: + +- `../输出能力/对象目录.md` +- `../输出能力/函数目录.md` +- `../输出能力/意图目录.md` +- `../输出能力/输出组合规范.md` + +## 基本原则 + +1. 不要默认把所有旧 `tag标签` 包装成 `Agent(tag="xxx")`。 +2. object 只作为 function 参数,不单独作为最终 target。 +3. function 可以是多行 program,允许先构造 object 再调用 function。 +4. intent 可以直接作为 target,也可以按任务要求包装成 `Agent(tag="xxx")`。 +5. Agent 字段表示承接方,是知识维度,不等于最终 target。 +6. 如果当前数据任务没有明确要求 function、intent 还是 Agent 包装,必须向用户确认,不要自行决定。 +7. 对 QA 子类尤其要保守:`医疗问答`、`百科`、`美食问答` 等可能只是知识分类,最终输出可能是 `QA()`,不一定是 `Agent(tag="医疗问答")`。 + +## 常见 Function 形态 + +| 形态 | 例子 | 说明 | +| --- | --- | --- | +| 通用问答 | `QA()` / `QA()` | 多个通用问答子类可能最终不区分子类,统一输出 QA。 | +| 图片问答 | `VisionQA` | 图片、拍照、屏幕问答等视觉理解类能力。 | +| 金融问答 | `FinanceQA()` | 股票、黄金、期货等金融查询。 | +| 时间问答 | `CalendarQA` / `timeDistance` | 日历、节假日、时间距离等时间工具能力。 | +| 文档总结 | `Summarize()` | 文档、URL 总结和问答。 | +| 天气问答 | `WeatherQA()` | 近期天气、温度、湿度、空气质量等。 | +| 翻译 | `Translate` / `TranslateQA` | 外语翻译、翻译问答、词典类能力。 | +| 垂域动作 | `SearchAction` / `ActivateAction` / `OpenAction` | 旧三级语义或 function 定义里经常出现,不等同于最终数据 target,但需要保留为候选。 | + +## Agent 包装形态 + +当任务明确是规划模型的 Agent 标签数据,或者用户明确给出 `Agent(tag="xxx")`,可以使用 Agent 包装形态。 + +例子: + +```text +Agent(tag="地图导航") +Agent(tag="餐饮服务") +Agent(tag="设备控制") +``` + +如果用户只说“地图导航标签”但没有说明输出格式,标签知识可以推荐业务标签,但生成数据前仍要确认最终 target。 + +## 推荐输出 + +做标签判断时建议输出: + +```text +业务标签:地图导航 +输出形态候选: +- Agent:Agent(tag="地图导航") +- Function:SearchRoute / Navigation / 其他地图 function 候选 +推荐:待用户确认,当前需求未说明使用 Agent 还是 Function +``` + +做数据生成时,如果 target 不明确,必须先问: + +```text +这批数据最终 target 是使用 function program、intent, +还是使用 Agent 包装,例如 Agent(tag="地图导航")? +``` diff --git a/skills/label-master/knowledge/判断维度/自动任务判断.md b/skills/label-master/knowledge/判断维度/自动任务判断.md new file mode 100644 index 0000000..a15315e --- /dev/null +++ b/skills/label-master/knowledge/判断维度/自动任务判断.md @@ -0,0 +1,266 @@ +# 自动任务判断 + +自动任务是独立维度,不属于业务标签树。它用于判断 query 是否包含“条件触发 + 动作”的结构,以及如何抽取 condition 和 action。 + +## 输出目标 + +推荐结构: + +```json +[ + { + "condition": "上车时", + "querys": [ + {"subquery": "打开空调", "intent": "设备控制"} + ] + } +] +``` + +`condition` 可以是: + +- 具体条件文本,例如 `上车时`、`电量低于20%时`。 +- `default`:无条件管理超级任务或无条件创建/修改/查询/删除备忘录类信息。 +- `null`:普通无条件单意图或非 default 的无条件动作。 + +## 条件定义 + +常见触发事件: + +- `……时候` +- `当……时` +- `如果……就` +- `把……就` +- `在……之后` +- `到达……时` +- `一……就` +- `每……` + +常见时间条件: + +- 时间段,例如“上午”。 +- 时间点,例如“14点”。 +- 持续或延迟时间,例如“开十分钟”“二十分钟后”。 + +## 复合条件完整性 + +`就` 作为动作分隔标记时,`就` 之前的所有内容整体构成 condition,禁止截断。 + +`且` 连接的多个状态全部是 condition 的组成部分,不可将其中任意部分误识别为 action。 + +例子: + +```text +晚饭前20分钟后转向灯关闭就风量调高 +condition = 晚饭前20分钟后转向灯关闭 +action = 风量调高 +``` + +```text +关闭后排空调且副驾座椅加热开启时打开副驾座椅通风 +condition = 关闭后排空调且副驾座椅加热开启时 +action = 打开副驾座椅通风 +``` + +## 条件作用域 + +### 默认向右绑定 + +条件默认只作用于其后最近的动作序列,直到出现新的条件或语义结束。 + +### 不向左回溯 + +条件不影响其前面的动作。 + +```text +播放音乐上车时打开空调 +``` + +应解析为: + +```json +[ + {"condition": null, "querys": [{"subquery": "播放音乐", "intent": "音乐播放"}]}, + {"condition": "上车时", "querys": [{"subquery": "打开空调", "intent": "设备控制"}]} +] +``` + +### 多个条件各自作用域 + +```text +上车时打开空调下车时关闭空调 +``` + +应解析为: + +```json +[ + {"condition": "上车时", "querys": [{"subquery": "打开空调", "intent": "设备控制"}]}, + {"condition": "下车时", "querys": [{"subquery": "关闭空调", "intent": "设备控制"}]} +] +``` + +### `或` 连接多个触发条件 + +`或` 连接多个触发条件时,视为同一自动任务的多触发项,整体保留为单一 condition,不拆成多个 group,不重复输出动作。 + +```text +主驾有人上车时或车内温度低于10度时或主驾系上安全带时打开空调 +``` + +应解析为: + +```json +[ + { + "condition": "主驾有人上车时或车内温度低于10度时或主驾系上安全带时", + "querys": [{"subquery": "打开主驾空调", "intent": "车载控制"}] + } +] +``` + +## default 场景 + +`default` 表示无条件自动任务管理或无条件备忘录类信息管理,不等同于 `null`。 + +适用: + +- 无条件打开、关闭、创建、删除、修改、查询、编辑超级任务。 +- 超级任务别称包括:自定义习惯、智能习惯、智能场景、自动化、小米任务等。 +- 无条件创建、修改、查询、删除备忘录类信息,包括日程、提醒、备忘录、便签、安排、事项等。 + +例子: + +```json +[ + {"condition": "default", "querys": [{"subquery": "删除自定义习惯", "intent": "系统控制"}]} +] +``` + +```json +[ + {"condition": "default", "querys": [{"subquery": "提醒我去买菜", "intent": "提醒"}]} +] +``` + +反例: + +- `打开提醒`:这是普通无条件单意图,`condition=null`,intent 为提醒,不属于 default。 +- `创建长途驾驶前检查水和食物的提醒`:包含明确触发条件,condition 应为 `长途驾驶前`,不属于 default。 + +## 改写规则 + +### 持续时间 + +符合条件抽取的持续时间统一改写为 `持续+时间`。若同时存在触发事件,则改写为 `触发条件+持续+时间`。 + +例子: + +```text +座椅加热十分钟 +``` + +```json +[ + {"condition": "持续十分钟", "querys": [{"subquery": "打开座椅加热", "intent": "车载控制"}]} +] +``` + +### 提醒改写 + +条件不为空时,播报、提示、叫我、喊我、通知我、告诉我、报告、念一下等表述统一改写为 `提醒我`。 + +例子: + +```text +电量低于20%时通知我立刻充电 +``` + +```json +[ + {"condition": "电量低于20%时", "querys": [{"subquery": "提醒我立刻充电", "intent": "提醒"}]} +] +``` + +### 超级任务 + +当用户 query 明确包含超级任务相关关键词,或明确修改/删除/取消某个已命名习惯或规则时,需要新增对应管理动作子句,intent 为 `系统控制`。 + +关键词包括: + +- HyperTask +- HyperMind +- 超级任务 +- 小米任务 +- 小米任务大师 +- 智能任务 +- 任务大师 +- 自动化 +- 自动化任务 +- 自动化场景 +- 智能场景 +- 自定义场景 +- 自定义习惯 +- 智能习惯 + +反例:如果只是直接描述条件触发控制,例如“学校放学时段开启警示灯”,且没有超级任务关键词,不添加管理 Agent。 + +### 带 trigger 的位置继承 + +当 condition 中包含位置,如主驾、副驾、后排,后续无明确位置的动作子句需要继承 condition 中的位置。 + +继承模式: + +- 继承 trigger 全部位置:动作语义上作用于所有位置时拆分。 +- 就近继承:动作更适合绑定最近位置时只继承最近位置。 +- 不继承:动作本身已有位置、提醒类动作、或动作语义不区分位置。 + +### 提醒我说 + +条件不为空且用户子句语义为提醒时,如果提醒内容中还包含时间词,不把提醒内容里的时间额外抽为 condition,而是改写为 `提醒我说...`。 + +例子: + +```text +明天八点提醒我后天晚上去露营 +``` + +```json +[ + {"condition": "明天八点", "querys": [{"subquery": "提醒我说后天晚上去露营", "intent": "提醒"}]} +] +``` + +### 执行一次 + +当用户子句中包含“执行一次 / 只执行一次 / 仅一次 / 单次执行”等限定词时,将其拼接到条件中,格式为 `执行一次+原始条件`。 + +### 纯条件句 + +如果 input 仅包含触发条件,没有具体动作,则输出条件和空 `querys`,禁止凭空生成动作。 + +```json +[ + {"condition": "停车超过90分钟时", "querys": []} +] +``` + +## 条件负例 + +以下表达虽然包含“时”等触发词,但更像车辆/系统内置功能、状态描述或固定安全能力,不一定应当当作用户创建自动任务: + +- 走远时车门上锁 +- 锁车时关闭车窗 +- 车辆解锁时鸣笛 +- 倒车时后视镜自动下翻 +- 停车时后视镜自动折叠 +- 离车时打开哨兵模式 +- 车辆超速时提醒我 +- 并线时打开后向来车辅助 +- 低速行驶时提示我 +- 红绿灯时提醒我 +- 车道偏离时打开辅助 +- 上车时打开冰箱 +- 雨天时打开雾灯建议 +- 安全带未系时提醒我 +- 超速时打开告警限速 diff --git a/skills/label-master/knowledge/复杂度判断.md b/skills/label-master/knowledge/复杂度判断.md new file mode 100644 index 0000000..bb3e80d --- /dev/null +++ b/skills/label-master/knowledge/复杂度判断.md @@ -0,0 +1,23 @@ +# 复杂度判断 + +> 本文件保留在根目录用于兼容早期入口。后续优先维护 `判断维度/复杂度判断.md`。 + +complex / 快慢系统是独立维度,不属于业务标签本身。业务标签负责判断“是什么能力”,复杂度负责判断“是否需要规划、推理或多步骤处理”。 + +## 当前临时定义 + +- `complex=false`:原子化、短链路、可直接执行或直接回答的请求。 +- `complex=true`:需要规划、分析、推理、组合多个步骤、跨信息源综合,或需要长上下文处理的请求。 + +## 判断原则 + +- 不要因为某个标签天然复杂就直接设为 complex,需要看本次 query 的任务形态。 +- 明确的一步控制、一步查询、一步导航通常是 `complex=false`。 +- 需要制定计划、比较多方案、总结长文本、生成复杂内容、连续推理通常是 `complex=true`。 +- 当复杂度边界和业务标签边界同时存在歧义时,先分别判断,再说明组合结果。 + +## 待维护问题 + +- 哪些标签默认偏快系统。 +- 哪些标签在特定参数或上下文下转为慢系统。 +- complex 输出格式和最终标签表达如何组合。 diff --git a/skills/label-master/knowledge/标签/AI创作/代码创作.md b/skills/label-master/knowledge/标签/AI创作/代码创作.md new file mode 100644 index 0000000..6564ae1 --- /dev/null +++ b/skills/label-master/knowledge/标签/AI创作/代码创作.md @@ -0,0 +1,46 @@ +# 代码创作 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:代码创作 +- Agent 包装候选(不代表最终):Agent(tag="代码创作") +- Function 输出候选:Object = Code and Function = Create用python写一段快排的代码code:满足:@aicreative-agent 对于该语义构造 largemodelParamsllmSkill 收到对应 domain 派发给代码生成大模型 +- 推荐输出形态:待确认。 + +## 功能抽象 + +代码创作 + +## 适用范围 + +生成代码代码问答 + +## 典型 Query + +用python写一个关于音频格式转化的代码 + +## 三级语义功能点 + +生成代码(ActivateAction) + +## Function / Agent 说明 + +Object = Code and Function = Create用python写一段快排的代码code:满足:@aicreative-agent 对于该语义构造 largemodelParamsllmSkill 收到对应 domain 派发给代码生成大模型 + +## 满足边界问题 + +代码生成和代码问答之间的边界:用python写一段快排代码 : 代码生成下面这段快排代码有什么问题: 代码问答“写一个快排代码,并解释原理”:同时有生成和问答建议后续代码生成和代码问答通用由代码创作来承接,不做区分 + +## 易混淆标签 + +QA + +## 划分原则 + +代码生成代码相关问答(研发/产品评估可以满足)长线计划:代码所有需求迁移到dialog agent + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/AI创作/作文.md b/skills/label-master/knowledge/标签/AI创作/作文.md new file mode 100644 index 0000000..6237f22 --- /dev/null +++ b/skills/label-master/knowledge/标签/AI创作/作文.md @@ -0,0 +1,46 @@ +# 作文 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:应该属于文本创作 +- Agent 包装候选(不代表最终):Agent(tag="文本创作") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +作文 + +## 适用范围 + +中小学作文 + +## 典型 Query + +待补充。 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +暂无 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/AI创作/图像创作.md b/skills/label-master/knowledge/标签/AI创作/图像创作.md new file mode 100644 index 0000000..32aa898 --- /dev/null +++ b/skills/label-master/knowledge/标签/AI创作/图像创作.md @@ -0,0 +1,46 @@ +# 图像创作 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:图像创作 +- Agent 包装候选(不代表最终):Agent(tag="图像创作") +- Function 输出候选:文生图:query:画一个钢铁侠code:满足:@aicreative-agent 对于该语义构造 largemodelParamsllmSkill 收到对应 domain 派发给生图大模型 +- 推荐输出形态:待确认。 + +## 功能抽象 + +图像创作 + +## 适用范围 + +文生图图片风格转换扩图 + +## 典型 Query + +生成图片:秋天的早晨,在一片被秋林包围的草地上把图片换为冬天扩图两倍大小 + +## 三级语义功能点 + +文生图:[文生图]生成图片(ActivateAction)唤醒文生图功能(ActivateAction)重新生成图片(ActivateAction) + +## Function / Agent 说明 + +文生图:query:画一个钢铁侠code:满足:@aicreative-agent 对于该语义构造 largemodelParamsllmSkill 收到对应 domain 派发给生图大模型 + +## 满足边界问题 + +在已实现功能中,风格转换会和图片编辑中的风格转换语义上混淆:“把我的照片改成漫画风”:既是风格迁移(创作)又像滤镜(编辑)——图片编辑“给人像加温暖怀旧滤镜”:和换风格很像,但只是滤镜覆盖——图片编辑 + +## 易混淆标签 + +图像编辑 + +## 划分原则 + +文生图——图片创作风格转换——图像编辑扩图——图像编辑原则1:文字出图片是文生图,基于图片输入的修改都是图片编辑不是生成 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/AI创作/图像编辑.md b/skills/label-master/knowledge/标签/AI创作/图像编辑.md new file mode 100644 index 0000000..cce96f5 --- /dev/null +++ b/skills/label-master/knowledge/标签/AI创作/图像编辑.md @@ -0,0 +1,46 @@ +# 图像编辑 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:图像编辑 +- Agent 包装候选(不代表最终):Agent(tag="图像编辑") +- Function 输出候选:Object = Image and (Function = Adjust or Add or Remove or Expand or Edit)... +- 推荐输出形态:待确认。 + +## 功能抽象 + +图像编辑 + +## 适用范围 + +基础处理(图像 / 视频)风格转换:人像风格可转为卡通、虚拟形象、水墨画、漫画等。滤镜应用:支持自然、单色、黑红、温暖怀旧等滤镜,覆盖图像和视频。水印添加:包括普通水印、透明水印、防盗图水印、日期水印。色彩与光影调整饱和度:支持整体自然饱和度调节;可针对特定颜色(橙、红、蓝等)单独调整饱和度。高光 / 阴影:可针对特定颜色(橙、红、蓝等)调整高光或阴影的强度、数值。降噪与清晰度:支持明度降噪、色彩降噪;可调整清晰度(数值设定)。颗粒与晕影:添加颗粒感(数值控制);调整晕影强度(数值控制)。人像美化基础美颜:自动美颜、亮眼、匀肤、磨皮(支持开关及数值 / 百分比调节)。肤色调整:美白(百分比控制)、气色提升(百分比控制)。瑕疵修复:祛黑眼圈、祛斑祛痘、祛皱(支持开关及数值调节)。五官优化:眉毛:增强、粗细调节;眼睛:大小、眼距调节;鼻子:胖瘦、鼻尖、长短调节;嘴巴:大小、微笑嘴角调节。脸型调整:胖瘦、大小、宽度、V 脸效果;太阳穴、颧骨、发际线调节;蓬蓬发效果。画质提升:超清人像、超清处理。表情调整:支持表情优化(未指定具体类型,默认基础表情调节)。 + +## 典型 Query + +将这张人像照片转换成卡通风格给这段视频添加 “温暖怀旧” 滤镜给这张图片加上今天日期的水印提高这张照片中红色的饱和度增强这张人像照片里橙色高光的强度把这张图片的颗粒感调到 50 数值将这张人像的磨皮强度设为 10%把这个人像脸型的胖瘦程度调整到 20%将这张照片中蓝色阴影的数值设为 20%开启 “超清人像” 功能优化这张图片 + +## 三级语义功能点 + +【AIcreativeagent】图片编辑一期&二期&三期&四期功能必过集图片风格转换:图片AI换季节(ActivateAction)图像路人消除(ActivateAction)AI换图片风格(ActivateAction)扩图:AI扩图(ActivateAction) + +## Function / Agent 说明 + +Object = Image and (Function = Adjust or Add or Remove or Expand or Edit)... + +## 满足边界问题 + +图像创作的风格转换--图片编辑的风格转换语义上混淆:“把我的照片改成漫画风”:既是风格迁移(创作)又像滤镜(编辑)——图片编辑“给人像加温暖怀旧滤镜”:和换风格很像,但只是滤镜覆盖——图片编辑甚至"瘦脸/美颜"等图片编辑功能,后续是不是也可以由图片创作承接——图片编辑图片编辑和相机设置项之间的边界问题:“让照片更亮一点” :可能是拍前(相机曝光补偿)或拍后(编辑调亮)“人像要更清晰”: 可能是相机分辨率设置,也可能是后期锐化“拍出来像漫画”:可用相机滤镜拍,也可后期风格转换 + +## 易混淆标签 + +相机图片创作 + +## 划分原则 + +语义范围为:图片基础处理、色彩与光影调整、人像美化问题1:图像创作的风格转换--图片编辑的风格转换:图片编辑:修改RGB参数,修改色彩,亮度,某些图片中的特征值图片创作:1、全新生成一张图片2、根据已知图片,生成另一张图片(不是编辑图片的参数)问题2:图片编辑和相机设置项根据系统上下文判断在照相机界面——相机设置,控制类相册界面——图片编辑其他界面——图片编辑 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/AI创作/图片搜索-图片.md b/skills/label-master/knowledge/标签/AI创作/图片搜索-图片.md new file mode 100644 index 0000000..f0e4647 --- /dev/null +++ b/skills/label-master/knowledge/标签/AI创作/图片搜索-图片.md @@ -0,0 +1,46 @@ +# 图片搜索(图片) + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:图片搜索(图片) +- Agent 包装候选(不代表最终):Agent(tag="图片搜索(图片)") +- Function 输出候选:#query1:搜一下钢铁侠的图片、钢铁侠长什么样(歧义)code:满足:@aicreative-agent 对于该语义构造 图搜 params调用图搜 服务,获取图片手机通过非流式指令返回,车载通过流式指令返回#query2:搜一下蜡笔小新的海报code:满足:@aicreative-agent 对于该语义构造 图搜 params调用图搜 服务,获取图片手机通过非流式指令返回,车载通过流式指令返回#query3:搜一张奥特曼的动图code:满足:@aicreative-agent 对于该语义构造 图搜 params调用图搜 服务,获取图片手机通过非流式指令返回,车载通过流式指令返回 +- 推荐输出形态:待确认。 + +## 功能抽象 + +图片搜索(图片) + +## 适用范围 + +搜索静态图片搜索动态图片搜索表情包搜索地图相关图片搜索手抄报图片搜索简笔画图片 + +## 典型 Query + +奥特曼的图片搞笑的动态图搞笑的表情包中国地图来一个劳动节的手抄报猫的简笔画 + +## 三级语义功能点 + +搜索静态图片(SearchAction)搜索动态图片(SearchAction)搜索表情包(SearchAction)搜索地图相关图片(SearchAction)搜索手抄报图片(SearchAction)搜索简笔画图片(SearchAction) + +## Function / Agent 说明 + +#query1:搜一下钢铁侠的图片、钢铁侠长什么样(歧义)code:满足:@aicreative-agent 对于该语义构造 图搜 params调用图搜 服务,获取图片手机通过非流式指令返回,车载通过流式指令返回#query2:搜一下蜡笔小新的海报code:满足:@aicreative-agent 对于该语义构造 图搜 params调用图搜 服务,获取图片手机通过非流式指令返回,车载通过流式指令返回#query3:搜一张奥特曼的动图code:满足:@aicreative-agent 对于该语义构造 图搜 params调用图搜 服务,获取图片手机通过非流式指令返回,车载通过流式指令返回 + +## 满足边界问题 + +1 图片搜索和在APP中搜索图片目前没有做区分小红书搜索风景壁纸——APP控制搜索好看风景壁纸——图片搜索2 QA边界: 钢铁侠长什么样——图片搜索搜索一下钢铁侠长什么样——图片搜索怎么画猫的简笔画——QA3 浏览器搜索百度一下西二旗地图——浏览器搜索(APP)搜索西二旗地图——图片搜索4 地图导航类中国地图——图片搜索北京地图——图片搜索海淀区地图——图片搜索搜索海淀地图——图片搜索西二旗地图——图片搜索 + +## 易混淆标签 + +APP搜索QA地图导航浏览器搜索 + +## 划分原则 + +图片(静态/动态)、表情包、地图、手抄报、简笔画搜索原则1:xxx长什么样等——图片搜索怎么画xxx——出视频教程--QA + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/AI创作/文本创作.md b/skills/label-master/knowledge/标签/AI创作/文本创作.md new file mode 100644 index 0000000..3a4b0e9 --- /dev/null +++ b/skills/label-master/knowledge/标签/AI创作/文本创作.md @@ -0,0 +1,46 @@ +# 文本创作 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:文本创作 +- Agent 包装候选(不代表最终):Agent(tag="文本创作") +- Function 输出候选:写一个都市剧剧本code:满足:@aicreative-agent 对于该语义构造 largemodelParamsllmSkill 收到对应 domain 派发给文本生成大模型 +- 推荐输出形态:待确认。 + +## 功能抽象 + +文本创作 + +## 适用范围 + +文生文(创作类) + +## 典型 Query + +生成一个表格写一首春天的诗歌将不要轻信你自己的猜测这句话改得稍微婉转一些 + +## 三级语义功能点 + +生成表格(ActivateAction[object@Table](mailto:object@Table))写作(ActivateAction[object@Writing](mailto:object@Writing))润色文章语句(ActivateAction[object@Polish](mailto:object@Polish)) + +## Function / Agent 说明 + +写一个都市剧剧本code:满足:@aicreative-agent 对于该语义构造 largemodelParamsllmSkill 收到对应 domain 派发给文本生成大模型 + +## 满足边界问题 + +文本创作和通用问答存在意图划分的灰区:和QA存在边界冲突,如果一个写作需求,需要依赖大量事实/时新知识的查询,给到通用问答更加合适:推荐北京旅游攻略 ——生活服务“写一个北京旅游攻略,包含2025年最新开放时间和票价” → 二段式(通用查 → 创作写)“北京旅游有哪些必去景点?” → 通用边界1:其他精品垂域>文本生成边界2:文本生成--QA旅游攻略——生活服务菜谱——QA健康报告计划指定某种格式的文书某种文体边界3:根据这张图片创作一篇作文边界4:总结类根据这篇文章(文件/截屏/图片问答)的内容生成一段评论(文档总结-生成)边界5:外语创作是否支持用英语描写青岛栈桥美丽风景——文本创作 + +## 易混淆标签 + +QA生活服务 + +## 划分原则 + +明确的创作或改写指令用户提供的主题、体裁、风格、格式要求等约束条件生成原创性、结构化文本内容长线计划:文本生成所有需求迁移到dialog agent短线:输入图片的走图片问答,其他未定义的文本生成先给文本创作,外语写作需求也是文本创作 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/AI创作/视频创作.md b/skills/label-master/knowledge/标签/AI创作/视频创作.md new file mode 100644 index 0000000..1bd0c96 --- /dev/null +++ b/skills/label-master/knowledge/标签/AI创作/视频创作.md @@ -0,0 +1,46 @@ +# 视频创作 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:视频创作 +- Agent 包装候选(不代表最终):Agent(tag="视频创作") +- Function 输出候选:视频生成:code:满足:@暂不支持该功能视频剪辑/智能成片:剪辑视频泛意图:编辑素材泛意图:将素材剪辑成视频:导出视频 +- 推荐输出形态:待确认。 + +## 功能抽象 + +视频创作 + +## 适用范围 + +剪辑视频泛意图编辑素材泛意图将素材剪辑成视频导出视频 + +## 典型 Query + +把我钓鱼的视频剪辑一下用生日派对照片智能成片帮我找去年的照片剪成一段视频帮我生成一个搞笑视频 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +视频生成:code:满足:@暂不支持该功能视频剪辑/智能成片:剪辑视频泛意图:编辑素材泛意图:将素材剪辑成视频:导出视频 + +## 满足边界问题 + +目前边界只局限在剪辑视频和导出视频,后续的视频创作也应该归入到这个意图中帮我生成一个搞笑视频 给视频创作 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +视频的剪辑和导出:剪辑视频泛意图、编辑素材泛意图、将素材剪辑成视频、导出视频视频生成:生成各类风格的视频,当前未支持 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/体育赛事播放.md b/skills/label-master/knowledge/标签/内容和媒体播放/体育赛事播放.md new file mode 100644 index 0000000..def380e --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/体育赛事播放.md @@ -0,0 +1,46 @@ +# 体育赛事播放 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:体育赛事播放 +- Agent 包装候选(不代表最终):Agent(tag="体育赛事播放") +- Function 输出候选:Query: 播放英超直播 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +播放体育赛事直播或回放(电视流或网络流) + +## 典型 Query + +播放今晚英超直播看昨天的 NBA 比赛回放打开奥运会开幕式重播 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +Query: 播放英超直播 + +## 满足边界问题 + +语义范围:赛事预约、赛事播放、赛事问答是从sports中拆出来的3个标签,均指官方体育比赛,一般而言不涵盖民间自己组织的比赛,不在收录范围之内。设备范围:目前仅电视端生效。赛事播放:即在电视端点播体育赛事,会切换频道或者节目。满足形式:满足形式:各场景:频道页、赛程表、赛事详情页、预约管理 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/体育赛事问答.md b/skills/label-master/knowledge/标签/内容和媒体播放/体育赛事问答.md new file mode 100644 index 0000000..95c6284 --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/体育赛事问答.md @@ -0,0 +1,46 @@ +# 体育赛事问答 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:体育赛事问答 +- Agent 包装候选(不代表最终):Agent(tag="体育赛事问答") +- Function 输出候选:Query: 湖人现在排名第几? +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +查询体育赛程、比分、排名、历史数据等 + +## 典型 Query + +待补充。 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +Query: 湖人现在排名第几? + +## 满足边界问题 + +和QA的满足边界,运动问答由QA满足,和QA没有边界。和个人运动监控的边界,体育赛事侧重于官方比赛,个人运动监控侧重于个人进行的运动,围绕智能手表、手机、跳绳、跑步机等智能设备监控各类运动时心率、热量消耗等功能,边界很清晰QA的边界:赛后:比分、排名、得分数据、技术统计运动项目:覆盖哪些?端午节划龙舟个人运动健康,学校的比赛个人运动身体健康湖人现在排名第几?上届世界杯冠军是谁?今天中超有什么比赛? + +## 易混淆标签 + +QA + +## 划分原则 + +查询体育赛程、比分、排名、历史数据等 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/体育赛事预约.md b/skills/label-master/knowledge/标签/内容和媒体播放/体育赛事预约.md new file mode 100644 index 0000000..a822a0e --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/体育赛事预约.md @@ -0,0 +1,46 @@ +# 体育赛事预约 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:体育赛事预约 +- Agent 包装候选(不代表最终):Agent(tag="体育赛事预约") +- Function 输出候选:Query: 提醒我今晚 8 点看国足比赛 +- 推荐输出形态:待确认。 + +## 功能抽象 + +赛事预约 + +## 适用范围 + +用户在对热门、大型的体育赛事,进行赛前的比赛预约的需求用户在对热门、大型的体育赛事,进行赛前的比赛取消预约的需求 + +## 典型 Query + +query:小爱同学,帮我预约最近的一场NBA比赛query:小爱同学,帮我取消欧冠和亚特拉大的比赛预约 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +Query: 提醒我今晚 8 点看国足比赛 + +## 满足边界问题 + +生效设备:目前仅在电视端生效,后续可能迁移到其他端满足形式:各场景:频道页、赛程表、赛事详情页、预约管理提醒类边界问题:q=提醒我今晚 8 点看国足比赛,给备忘录q=预约今晚8点国足比赛,给赛事预约 + +## 易混淆标签 + +备忘录 + +## 划分原则 + +如下query都给赛事预约我想取消比赛预约取消预约中超比赛我想取消预约山东泰山的比赛请帮我取消预约NBA比赛我想取消预约勇士队的比赛我想取消预约詹姆斯的比赛把我预约的乒乓球比赛取消之前预约了UFC比赛,帮我取消取消预约明晚辽宁队比赛取消预约后天的CBA比赛“帮我取消明天篮球比赛的预约。”“我要取消后天下午足球比赛的预约。”“请帮我取消本周日羽毛球赛事的预约。”“取消下周六乒乓球比赛的预约。”“帮我取消明晚电竞比赛的预约。”“我想取消本月 20 号网球比赛的预约。”“请帮我取消下周五田径比赛的预约。”“取消后天上午游泳比赛的预约。”“帮我取消之前预约的排球比赛。”“我要取消最近预约的射箭比赛。” + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/古诗播放.md b/skills/label-master/knowledge/标签/内容和媒体播放/古诗播放.md new file mode 100644 index 0000000..029a77a --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/古诗播放.md @@ -0,0 +1,46 @@ +# 古诗播放 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:古诗播放 +- Agent 包装候选(不代表最终):Agent(tag="古诗播放") +- Function 输出候选:按诗歌名搜索#query1: 播放静夜思按诗句、诗人搜索#query2: 李白写的白发三千尺按题材推荐#query3: 播放唐朝的诗句 #query4: 形容天气的诗句 泛推荐 #query5: 背诵一首古诗结果满足:优先走精品卡,朗读对应古诗内容(精品卡底部有大模型回复链接可点击)如果无对应精品卡但存在TTS文本,走卡片展示和TTS生成如资源库无资源,采用大模型卡片兜底 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +当用户要求播放/展示某首古诗词(通常包含:诗词正文、作者/朝代、名句、题材标签等,并可伴随朗读音频/赏析音频),且能用“诗名/诗句/诗人/类型/标签/朝代”等限定时,触发此功能。 + +## 典型 Query + +静夜思播放李白的诗背诵《春江花月夜》 + +## 三级语义功能点 + +搜索/推荐诗歌Content.AncientPoetry.SearchActione.g.木兰辞,播放静夜思搜索/推荐诗句Content.AncientPoetry.SearchActione.g.床前明月光,播放不识庐山真面目 + +## Function / Agent 说明 + +按诗歌名搜索#query1: 播放静夜思按诗句、诗人搜索#query2: 李白写的白发三千尺按题材推荐#query3: 播放唐朝的诗句 #query4: 形容天气的诗句 泛推荐 #query5: 背诵一首古诗结果满足:优先走精品卡,朗读对应古诗内容(精品卡底部有大模型回复链接可点击)如果无对应精品卡但存在TTS文本,走卡片展示和TTS生成如资源库无资源,采用大模型卡片兜底 + +## 满足边界问题 + +古诗、QA意图边界:按诗歌名搜索、按诗句、诗人搜索、按题材推荐、泛推荐优先给古诗播放而非QA;举头望明月是什么意思--QA举头望明月翻译成白话文--QA举头望明月表达了什么--QA古诗播放满足形式:优先走精品卡,朗读对应古诗内容(精品卡底部有大模型回复链接可点击)如果无对应精品卡但存在TTS文本,走卡片展示和TTS生成如资源库无资源,采用大模型卡片兜底 边界1:容易和古诗问答冲突列query诗人问答古诗词含义、赏析、字词问答 + +## 易混淆标签 + +QA + +## 划分原则 + +古诗词搜索检索相关,是出古诗,包括按照诗句、诗人、题材等搜索。如果是古诗词问答,给QA诗歌名:将进酒(古诗词播放--单实体)诗句定位:会当凌绝顶(古诗词播放/QA都可以)以诗人/朝代/体裁/标签筛选后播放:唐代边塞诗 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/古诗词问答.md b/skills/label-master/knowledge/标签/内容和媒体播放/古诗词问答.md new file mode 100644 index 0000000..eabc150 --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/古诗词问答.md @@ -0,0 +1,46 @@ +# 古诗词问答 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:古诗词问答 +- Agent 包装候选(不代表最终):Agent(tag="古诗词问答") +- Function 输出候选:#query1: 床前明月光出自哪首诗/遥想公瑾当年是谁写的/一夫当关万夫莫开的意思code:结果满足(同老垂域):全设备直接调用豆包大模型进行回复满足(prompt同通用QA,无需定制prompt优化)后续工作直接识别为通用QA函数即可 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +待补充。 + +## 典型 Query + +白露为霜的诗名叫什么,床前明月光出自哪首诗死去元知万事空的元是什么意思 + +## 三级语义功能点 + +查询诗句的题目Content.AncientPoetry.SearchAction白露为霜的诗名叫什么,床前明月光出自哪首诗查询诗句中字词/诗句/全文的释义Content.AncientPoetry.SearchAction死去元知万事空的元是什么意思Content.AncientPoetry.SearchAction千里之行始于足下是什么意思Content.AncientPoetry.SearchAction古诗春望的意思是什么查询诗歌/诗句的作者Content.AncientPoetry.SearchAction不拘一格降人才的作者是Content.AncientPoetry.SearchAction是谁写的小儿垂钓查询诗句的上句/下句Content.AncientPoetry.SearchAction稻花香里说丰年前面是什么Content.AncientPoetry.SearchAction春蚕到死丝方尽后面是什么, 床前明月光然后呢查询诗歌的朝代Content.AncientPoetry.SearchAction不识庐山真面目这句诗出自什么朝代查询诗歌的赏析信息Content.AncientPoetry.SearchAction观沧海的赏析,赏析黄鹤楼送孟浩然之广陵 + +## Function / Agent 说明 + +#query1: 床前明月光出自哪首诗/遥想公瑾当年是谁写的/一夫当关万夫莫开的意思code:结果满足(同老垂域):全设备直接调用豆包大模型进行回复满足(prompt同通用QA,无需定制prompt优化)后续工作直接识别为通用QA函数即可 + +## 满足边界问题 + +古诗词问答直接由QA满足 + +## 易混淆标签 + +容易和古诗播放冲突容易和通用问答冲突 + +## 划分原则 + +诗词类问答给QA诗词类音频点播给PlayPoem + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/听歌识曲.md b/skills/label-master/knowledge/标签/内容和媒体播放/听歌识曲.md new file mode 100644 index 0000000..9fc9e9f --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/听歌识曲.md @@ -0,0 +1,46 @@ +# 听歌识曲 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:听歌识曲 +- Agent 包装候选(不代表最终):Agent(tag="听歌识曲") +- Function 输出候选:#query: 现在放的是什么歌(后台没有音乐播放)#query: 听歌识曲/识别一下这首歌code:结果满足:手机: 走听歌识曲功能,调起小米音乐听歌识曲API进行识别车载及其他设备:直接出兜底不支持回复话术(或调用UIAgent对应能力) +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +听歌识曲,非本机播放内容的查询 + +## 典型 Query + +现在放的是什么歌(后台没有音乐播放)听歌识曲/识别一下这首歌 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +#query: 现在放的是什么歌(后台没有音乐播放)#query: 听歌识曲/识别一下这首歌code:结果满足:手机: 走听歌识曲功能,调起小米音乐听歌识曲API进行识别车载及其他设备:直接出兜底不支持回复话术(或调用UIAgent对应能力) + +## 满足边界问题 + +给到播放状态查询后的,满足方式ContentAgentSkill通用注入当前音频播放信息及session信息调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表边界和QA的边界:侧重于当前播放内容的信息问答,偏动态类内容问答,应该给内容播放状态查询;如果是静态类内容查询,不需要指代消解,那么就给QA和听歌识曲的边界,依赖context注入:本机当前是否在播放歌曲,如果在播放歌曲,优先播放状态查询;否则听歌识曲。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/声音博物馆.md b/skills/label-master/knowledge/标签/内容和媒体播放/声音博物馆.md new file mode 100644 index 0000000..ac96e2a --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/声音博物馆.md @@ -0,0 +1,46 @@ +# 声音博物馆 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:声音博物馆 +- Agent 包装候选(不代表最终):Agent(tag="声音博物馆") +- Function 输出候选:Query: 播放老北京叫卖录音 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +播放非音乐类音频典藏:历史录音、方言样本、自然环境声等长期归档内容 + +## 典型 Query + +播放老北京叫卖录音我想听海豚的声音打开昆曲片段 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +Query: 播放老北京叫卖录音 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +音乐播放 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/媒体应用播放.md b/skills/label-master/knowledge/标签/内容和媒体播放/媒体应用播放.md new file mode 100644 index 0000000..26a6ef5 --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/媒体应用播放.md @@ -0,0 +1,46 @@ +# 媒体应用播放 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:媒体应用播放 +- Agent 包装候选(不代表最终):Agent(tag="媒体应用播放") +- Function 输出候选:Query: 用爱奇艺播放《狂飙》 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +调用第三方影音应用并开始播放指定内容或继续上次播放,如“用爱奇艺播放《狂飙》”“在Spotify放周杰伦”。 + +## 典型 Query + +用 Bilibili 播放《三体》动画在 Spotify 继续播放我的列表打开优酷看最新《奔跑吧》” + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +Query: 用爱奇艺播放《狂飙》 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/媒体资源切换(内容控制).md b/skills/label-master/knowledge/标签/内容和媒体播放/媒体资源切换(内容控制).md new file mode 100644 index 0000000..a2ba2fc --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/媒体资源切换(内容控制).md @@ -0,0 +1,46 @@ +# 媒体资源切换(内容控制) + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:媒体资源切换(内容控制) +- Agent 包装候选(不代表最终):Agent(tag="媒体资源切换(内容控制)") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +媒体控制 + +## 适用范围 + +需要走搜索推荐策略的媒体播放需求 + +## 典型 Query + +换一首歌曲 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/播放器控制(系统控制).md b/skills/label-master/knowledge/标签/内容和媒体播放/播放器控制(系统控制).md new file mode 100644 index 0000000..43b6f13 --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/播放器控制(系统控制).md @@ -0,0 +1,46 @@ +# 播放器控制(系统控制) + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:播放器控制(系统控制) +- Agent 包装候选(不代表最终):Agent(tag="播放器控制(系统控制)") +- Function 输出候选:Query: 下一首 +- 推荐输出形态:待确认。 + +## 功能抽象 + +控制 + +## 适用范围 + +不依赖搜索推荐的,媒体播放器操作类,输出系统控制的分支在同一媒体资源集合中切换条目:上一曲/下一曲、切换剧集、切换音轨等,如“下一首”“跳到第三集”。 + +## 典型 Query + +快进10秒钟跳到第十分钟下一首(多标签等同:媒体资源切换)上一集(多标签等同:媒体资源切换) + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +Query: 下一首 + +## 满足边界问题 + +原来的内容控制属于媒体资源切换,需要走一次搜索推荐策略。新增的播放器控制是纯系统控制拆分的分支。和系统控制的边界,多轮对话中内容资源版本的切换,如下给内容控制(媒体资源切换)播放晴天->换个版本播放xxx新闻->换个版本'换一首'---等于下一首,播放器控制;换一首歌曲---媒体资源切换和系统控制的边界,如下功能给系统控制(播放器控制),播放器控制为新建标签。下一个(播放器控制)['下一首', '下一集', '下一曲']播放(播放器控制)['播放', '继续播放', '继续', '放', '请播放']选项选择/可见即可说(播放器控制)['第一个', '第二个', '播放第一个', '确定', '第三个']播放第三首歌,如果屏幕未显示,可见即可说没上报,给内容控制上一个 (播放器控制)['上一首', '播放上一首', '上一曲', '上一集', '播放上一首歌']从头重新播放(播放器控制)['重新播放', '重播', '再来一遍', '从头播放', '再唱一遍']连接-连接蓝牙['连接蓝牙播放音乐(多指令)', '蓝牙连接', '连蓝牙', '连接手机蓝牙', '连接我的蓝牙']设置系统控制项参数值-单曲循环(播放器控制)['设为单曲循环模式', '设为单曲循环', '开启单曲循环模式', '循环模式', '单曲重复']播放器倍速前进 (播放器控制)['快进', '快进两分钟', '快进三分钟', '快进一分钟', '快进五分钟']['切换两倍速播放',"xx"]播放器跳到指定位置播放 (播放器控制)['快进到十分钟', '播放二十二秒', '快进到两分钟', '十分钟', '播放十分钟']播放器倍速后退 (播放器控制)['后退', '退回', '后退一分钟', '后退两分钟', '后退五分钟']和应用控制的边界,知名音乐app的top页面由应用控制满足,如下query给应用控制,详情:车载APP控制 - APP页面词表数据整理每日三十首——音乐播放热歌榜——音乐播放打开每日三十首——APP控制播放每日三十首——音乐播放打开热歌榜——APP控制播放热歌榜——音乐播放歌词——APP控制还是内容问答? + +## 易混淆标签 + +待补充。 + +## 划分原则 + +需要重新走搜索推荐的,如换一个版本,给内容控制;完全不依赖搜索推荐,播放器控制直接满足的给系统控制 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/播放状态查询.md b/skills/label-master/knowledge/标签/内容和媒体播放/播放状态查询.md new file mode 100644 index 0000000..813f534 --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/播放状态查询.md @@ -0,0 +1,46 @@ +# 播放状态查询 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:播放状态查询 +- Agent 包装候选(不代表最终):Agent(tag="播放状态查询") +- Function 输出候选:#query: 现在放的是什么歌(后台有音乐播放)code:结果满足:ContentAgentSkill通用注入当前音频播放信息及session信息调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +当前播放歌曲/歌手/视频信息查询,本机播放内容的查询 + +## 典型 Query + +这首歌是谁唱的/介绍一下这个歌手现在放的是什么歌(后台有音乐播放) + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +#query: 现在放的是什么歌(后台有音乐播放)code:结果满足:ContentAgentSkill通用注入当前音频播放信息及session信息调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表 + +## 满足边界问题 + +给到播放状态查询后的,满足方式ContentAgentSkill通用注入当前音频播放信息及session信息调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表边界和QA的边界:侧重于当前播放内容的信息问答,偏动态类内容问答,应该给内容播放状态查询;如果是静态类内容查询,不需要指代消解,那么就给QA和听歌识曲的边界,依赖context注入:本机当前是否在播放歌曲,如果在播放歌曲,优先播放状态查询;否则听歌识曲。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/新闻.md b/skills/label-master/knowledge/标签/内容和媒体播放/新闻.md new file mode 100644 index 0000000..98809d4 --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/新闻.md @@ -0,0 +1,46 @@ +# 新闻 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:新闻 +- Agent 包装候选(不代表最终):Agent(tag="新闻") +- Function 输出候选:Query: 播放最新财经新闻 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +播放或查询新闻内容:整点新闻、专题报道、实时头条等 + +## 典型 Query + +播放最新科技新闻给我五分钟财经新闻今天有哪些头条新闻? + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +Query: 播放最新财经新闻 + +## 满足边界问题 + +整体原则:只要是新闻需求,优先给新闻。可能会有音乐、视频、歌手、歌曲、体育赛事相关的新闻问答续期,统一给新闻。 + +## 易混淆标签 + +音乐播放:播放xxxQA + +## 划分原则 + +播放或查询新闻内容:整点新闻、专题报道、实时头条等 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/歌单.md b/skills/label-master/knowledge/标签/内容和媒体播放/歌单.md new file mode 100644 index 0000000..e99d859 --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/歌单.md @@ -0,0 +1,46 @@ +# 歌单 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:歌单 +- Agent 包装候选(不代表最终):Agent(tag="歌单") +- Function 输出候选:Query: 播放我的晨跑歌单 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +创建、管理或播放音乐歌单/播放列表,包括私人歌单和推荐歌单 + +## 典型 Query + +播放我的晨跑歌单把这首歌加到睡前歌单创建一个叫‘驾车’的新歌单”收藏这首歌 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +Query: 播放我的晨跑歌单 + +## 满足边界问题 + +歌单仅指音乐、电台增删改查,涉及音乐、电台列表的添加、删除、创建、播放的优先给歌单满足。视频收藏给smartApp + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/电台播放.md b/skills/label-master/knowledge/标签/内容和媒体播放/电台播放.md new file mode 100644 index 0000000..0192aa1 --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/电台播放.md @@ -0,0 +1,46 @@ +# 电台播放 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:电台播放 +- Agent 包装候选(不代表最终):Agent(tag="电台播放") +- Function 输出候选:单实体(非明确播放意图)#query1: 默读、完美世界(非明确播放意图)#query2: 米小圈上学记(明确播放意图)满足方式:语义通过多轮session、知识库热度及用户反馈信息进行意图划分,针对单实体非明确播放意图下发内容问答富文本卡片(文本+有声资源列表) +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +当用户明确或隐含地要求播放“有声内容”(播客/有声书/相声/评书/脱口秀/新闻电台等),并可用“专辑名/单期名/作者或主播/角色/类型/标签”等进行限定时,触发“电台播放”。 + +## 典型 Query + +播放 FM 87.6来点中国之声听本地交通广播郭德纲的相声我要听斗破苍穹 + +## 三级语义功能点 + +功能点:电台搜索组合搜索... + +## Function / Agent 说明 + +单实体(非明确播放意图)#query1: 默读、完美世界(非明确播放意图)#query2: 米小圈上学记(明确播放意图)满足方式:语义通过多轮session、知识库热度及用户反馈信息进行意图划分,针对单实体非明确播放意图下发内容问答富文本卡片(文本+有声资源列表) + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/电台问答.md b/skills/label-master/knowledge/标签/内容和媒体播放/电台问答.md new file mode 100644 index 0000000..4e73e51 --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/电台问答.md @@ -0,0 +1,46 @@ +# 电台问答 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:电台问答 +- Agent 包装候选(不代表最终):Agent(tag="电台问答") +- Function 输出候选:code:结果满足:ContentAgentSkill通用注入当前音频播放信息及session信息根据具体电台的cpResourceId反查当前集数等信息,合并电台内容基本信息(包括专辑名、声音名、主播)统一注入调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +待补充。 + +## 典型 Query + +最近哪些小说最火/介绍一下这部小说现在放的是什么小说这个相声是谁讲的这本书有多少集/当前播放的是第几集/还有几集没播 + +## 三级语义功能点 + +电台问答(包括context多轮问答)当前电台播放信息查询 + +## Function / Agent 说明 + +code:结果满足:ContentAgentSkill通用注入当前音频播放信息及session信息根据具体电台的cpResourceId反查当前集数等信息,合并电台内容基本信息(包括专辑名、声音名、主播)统一注入调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +容易和电台播放冲突容易和通用问答冲突 + +## 划分原则 + +电台知识类问题给电台问答电台播放类问题给电台播放。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/电视频道.md b/skills/label-master/knowledge/标签/内容和媒体播放/电视频道.md new file mode 100644 index 0000000..add1a10 --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/电视频道.md @@ -0,0 +1,46 @@ +# 电视频道 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:电视频道 +- Agent 包装候选(不代表最终):Agent(tag="电视频道") +- Function 输出候选:Query: 切到 CCTV-5 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +打开、切换或查询特定电视直播频道,例如涉及线性电视流而非点播内容。 + +## 典型 Query + +切到 CCTV-5播放湖南卫视 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +Query: 切到 CCTV-5 + +## 满足边界问题 + +问题1:协同响应指定被控设备,同:控制-设备控制问题2:和控制类边界问题(类似播放器控制)换台,是不是和音乐的下一首类似,没提到实体或描述就是纯控制指令切到频道1下一个频道控制query列出来 + +## 易混淆标签 + +控制agent + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/视频播放.md b/skills/label-master/knowledge/标签/内容和媒体播放/视频播放.md new file mode 100644 index 0000000..c69351d --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/视频播放.md @@ -0,0 +1,46 @@ +# 视频播放 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:视频播放 +- Agent 包装候选(不代表最终):Agent(tag="视频播放") +- Function 输出候选:单实体(非明确播放意图)#query1: 公主、一九四二(非明确播放意图)#query2: 战狼2、陈情令(明确播放意图)满足方式:语义通过多轮session、知识库热度及用户反馈信息进行意图划分,针对单实体非明确播放意图下发内容问答富文本卡片(文本+视频列表) 模糊搜片 #query1: 贾玲那个励志减肥的电影 (模糊搜片)#query2: 贾玲的励志电影 (标签搜索)满足方式:语义基于产品定义,区分包含明显知识信息的特定视频检索类意图走模糊搜片,即调用大模型下发内容问答富文本卡片(文本+歌曲列表) +- 推荐输出形态:待确认。 + +## 功能抽象 + +媒体播放 + +## 适用范围 + +当用户明确或隐含地要求播放某个视频内容,并可用“片名/演员/导演/角色/类型/标签”等信息进行限定时,触发“视频播放”功能。 支持的内容形态以长短视频为主(电影、电视剧、综艺、纪录片、动画片、MV 等),与“音乐纯音频播放”区分。 + +## 典型 Query + +播放《流浪地球2》看一段猫咪搞笑视频播放最新 TED 演讲 + +## 三级语义功能点 + +功能点:视频搜索组合搜索... + +## Function / Agent 说明 + +单实体(非明确播放意图)#query1: 公主、一九四二(非明确播放意图)#query2: 战狼2、陈情令(明确播放意图)满足方式:语义通过多轮session、知识库热度及用户反馈信息进行意图划分,针对单实体非明确播放意图下发内容问答富文本卡片(文本+视频列表) 模糊搜片 #query1: 贾玲那个励志减肥的电影 (模糊搜片)#query2: 贾玲的励志电影 (标签搜索)满足方式:语义基于产品定义,区分包含明显知识信息的特定视频检索类意图走模糊搜片,即调用大模型下发内容问答富文本卡片(文本+歌曲列表) + +## 满足边界问题 + +内容agent垂域之间互相混淆单实体单实体默认出QA视频、音乐单实体互相混淆:比如q=小猪佩奇,可能是视频或者音乐,不同端满足形式不一样;或者视频与音乐难以区分,需要注入知识。非单实体和其他agent的混淆和图片的满足边界:q=播放单依纯的照片,歌曲优先和QA的满足边界:高热单实体给歌曲播放,比如青花瓷;否则给QA用户说了一句歌词、或者表达了一个电影片段,给QA歌曲、电影推荐,q=推荐几首歌,都属于播放和帮助的满足边界,类似如下query,直接满足和间接满足的区别,(待讨论--此问题已经记录)可以来首歌吗?你能播放一首歌吗?可以来个电影吗和控制的边界:本质的区别是,是否要经过媒体内容的搜索推荐娱乐app名称+媒体资源名称,比如:用 Bilibili 播放《三体》动画,给媒体应用播放;而非应用控制仅娱乐媒体app名称,比如打开爱奇艺,给应用控制q=打开音乐,把音乐给我打开,把音乐打开给音乐播放而非控制。可以先走top_q车载端(待讨论):打开音乐不能播放 @谢曹东q=播放qq音乐,音乐播放q=打开qq音乐,应用控制q=歌词?其余控制边界在底下【内容控制】部分,此处仅涵盖【媒体应用播放】与控制之间的边界。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +属于“视频播放”的请求(应触发):明示播放:“播放/放一下/我想看《流浪地球》” → name=流浪地球“放吴京演的《战狼》” → name=战狼,artist=吴京“看一下‘夏洛特’这个角色相关的电影” → character=夏洛特,type=电影通过人物/角色/标签/类型检索后播放:“放几个悬疑片看看” → tag=悬疑“播放王家卫的电影” → artist=王家卫,type=电影MV/演唱会录像等视频(非纯音频):“播放周杰伦《晴天》MV” → name=晴天,type=MV,artist=周杰伦原则1:单实体问题,走Redis,查词表,其他的走QA + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/视频问答.md b/skills/label-master/knowledge/标签/内容和媒体播放/视频问答.md new file mode 100644 index 0000000..e05485d --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/视频问答.md @@ -0,0 +1,46 @@ +# 视频问答 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:视频问答 +- Agent 包装候选(不代表最终):Agent(tag="视频问答") +- Function 输出候选:典型query类别1code:结果满足:ContentAgentSkill通用注入当前视频播放信息、列表页资源信息及session信息进行知识注入根据具体视频id反查资源对应导演、演员、集数等信息,合并各视频的基本信息(包括视频名称、类型、当前集数)统一注入调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +待补充。 + +## 典型 Query + +电影奥本海默得过多少奖/甄嬛传滴血认亲是哪一集/介绍一下第一个片子现在放的是什么片这个片谁演的/ 这个电影导演是谁这个片一共多少集/当前播放的是第几集/还有几集 + +## 三级语义功能点 + +视频问答(包括context多轮问答)当前播放视频信息查询 + +## Function / Agent 说明 + +典型query类别1code:结果满足:ContentAgentSkill通用注入当前视频播放信息、列表页资源信息及session信息进行知识注入根据具体视频id反查资源对应导演、演员、集数等信息,合并各视频的基本信息(包括视频名称、类型、当前集数)统一注入调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +容易和视频播放冲突容易和通用问答冲突 + +## 划分原则 + +视频知识问答类给视频问答视频点播类给视频播放20251111共识:1、query中带有影视作品名称或明显影视相关pattern的给内容问答;2、询问剧情细节的,或者剧情相关问题,给内容问答;3、动漫或影视作品中虚拟人物相关问题,给内容问答; + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/讲笑话.md b/skills/label-master/knowledge/标签/内容和媒体播放/讲笑话.md new file mode 100644 index 0000000..285bf36 --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/讲笑话.md @@ -0,0 +1,46 @@ +# 讲笑话 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:讲笑话 +- Agent 包装候选(不代表最终):Agent(tag="讲笑话") +- Function 输出候选:Query: 给我讲个冷笑话 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +输出段子或幽默内容,可指定类型或时长 + +## 典型 Query + +给我讲个冷笑话来段程序员的段子讲一个成人笑话 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +Query: 给我讲个冷笑话 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +输出段子或幽默内容,可指定类型或时长 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/音乐播放.md b/skills/label-master/knowledge/标签/内容和媒体播放/音乐播放.md new file mode 100644 index 0000000..bc073d3 --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/音乐播放.md @@ -0,0 +1,46 @@ +# 音乐播放 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:音乐播放 +- Agent 包装候选(不代表最终):Agent(tag="音乐播放") +- Function 输出候选:单实体(非明确播放意图)#query1: 不必太在乎、天下的乌鸦一般黑 (非明确播放意图)#query2: 七里香、忘情水(明确播放意图)满足方式:语义通过多轮session、音乐知识库热度及用户反馈信息进行意图划分,针对单实体非明确播放意图下发内容问答富文本卡片(文本+歌曲列表) 模糊搜歌 #query1: 今年外国乐队在春晚上唱的英文歌 (模糊搜歌)#query2: 今年的英文歌 (标签搜索)满足方式:语义基于产品定义,区分包含明显知识信息的特定歌曲检索类意图走模糊搜歌,即调用大模型下发内容问答富文本卡片(文本+歌曲列表) +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +当用户明确或隐含地要求播放某个音乐音频(歌曲/专辑/歌单/影视原声等),并可用“歌名/歌手/专辑/标签”等信息限定时,触发“音乐播放”。 + +## 典型 Query + +来点轻音乐播放周杰伦的《晴天》放一些爵士乐 + +## 三级语义功能点 + +功能点:歌名搜索歌手搜索专辑搜索... + +## Function / Agent 说明 + +单实体(非明确播放意图)#query1: 不必太在乎、天下的乌鸦一般黑 (非明确播放意图)#query2: 七里香、忘情水(明确播放意图)满足方式:语义通过多轮session、音乐知识库热度及用户反馈信息进行意图划分,针对单实体非明确播放意图下发内容问答富文本卡片(文本+歌曲列表) 模糊搜歌 #query1: 今年外国乐队在春晚上唱的英文歌 (模糊搜歌)#query2: 今年的英文歌 (标签搜索)满足方式:语义基于产品定义,区分包含明显知识信息的特定歌曲检索类意图走模糊搜歌,即调用大模型下发内容问答富文本卡片(文本+歌曲列表) + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +容易和音乐问答冲突 + +## 划分原则 + +明示播放:“播放《稻香》”“放朴树的《平凡之路》”通过人物/专辑/标签检索后播放:“放周杰伦的歌”“来点轻音乐助眠”“播放《三体》OST” + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/内容和媒体播放/音乐问答.md b/skills/label-master/knowledge/标签/内容和媒体播放/音乐问答.md new file mode 100644 index 0000000..3d93969 --- /dev/null +++ b/skills/label-master/knowledge/标签/内容和媒体播放/音乐问答.md @@ -0,0 +1,46 @@ +# 音乐问答 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:音乐问答 +- Agent 包装候选(不代表最终):Agent(tag="音乐问答") +- Function 输出候选:典型query类别1:code:结果满足:ContentAgentSkill通用注入当前音频播放信息及session信息调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表典型query类别2:code:结果满足:手机: 走听歌识曲功能,调起小米音乐听歌识曲API进行识别车载及其他设备:直接出兜底不支持回复话术(或调用UIAgent对应能力) +- 推荐输出形态:待确认。 + +## 功能抽象 + +媒体资源问答 + +## 适用范围 + +待补充。 + +## 典型 Query + +刘德华有哪些经典的歌这首歌是谁唱的/介绍一下这个歌手现在放的是什么歌(后台有音乐播放)现在放的是什么歌(后台没有音乐播放)听歌识曲/识别一下这首歌 + +## 三级语义功能点 + +功能点:音乐问答(包括context多轮问答) + +## Function / Agent 说明 + +典型query类别1:code:结果满足:ContentAgentSkill通用注入当前音频播放信息及session信息调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表典型query类别2:code:结果满足:手机: 走听歌识曲功能,调起小米音乐听歌识曲API进行识别车载及其他设备:直接出兜底不支持回复话术(或调用UIAgent对应能力) + +## 满足边界问题 + +内容问答易和QA混淆:歌手、演员等人物是边界问题,给QA,属于QA人物问答介绍这个歌手,介绍周杰伦围绕“歌曲、电影、电视剧”的问答,优先给内容问答,会出精品卡片,QA可兜底。内容问答容易和播放状态查询混淆,如下query优先给播放状态查询,这首歌是谁唱的这是什么歌内容问答和产品问答、控制类边界:你会听歌识曲吗打开听歌识曲 + +## 易混淆标签 + +QA音乐 + +## 划分原则 + +音乐静态知识类问答给音乐问答,否则给音乐播放 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/地图导航/地图导航.md b/skills/label-master/knowledge/标签/地图导航/地图导航.md new file mode 100644 index 0000000..634b042 --- /dev/null +++ b/skills/label-master/knowledge/标签/地图导航/地图导航.md @@ -0,0 +1,46 @@ +# 地图导航 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:地图导航 +- Agent 包装候选(不代表最终):Agent(tag="地图导航") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +导航类 + +## 适用范围 + +基于高德地图/百度地图等,进行导航需求满足特殊的需求:附近的加油站附近的充电桩附近的服务区 + +## 典型 Query + +导航去云冈石窟走免费道路(Navigation)走着走另外一条路线(SwitchRoute)不去小米科技园了改去公司附近的充电站(ModifyDestination)变更下下个途径点(ModifyPassPoint)金属钛的钛(PoiMultiRoundCorrect,POI改写相关)导航到简单的简上海的尚简尚羽毛球馆(PoiSelfCorrect,POI改写相关)导航路线刷新一下(RefreshRoute)寻找沿路的美食(SearchAlongRoute)搜索附近中石油(SearchPoi)怎么走到骑马俱乐部最近(SearchRoute)添加途经点大义镇(AddPassPoint)继续更新全国的离线地图(AdjustOfflineMap)还有没有其他路可以选(AskOtherRoute)收藏充电站要小米自营的(CollectPoi)删了所有途径点(DeletePassPoint)不是这个地址是西三旗桥南(ModifyDestination) 修改一下最下的途径点(ModifyPassPoint) + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +边界1:导航-地图问答-QA导航:偏控制类需求,明确的导航需求地图问答:跟导航、路线、当前位置信息相关的问答昆明地铁经过呈贡区吗(地图不支持)北京火车经过海淀区吗(地图不支持)13号线经过西二旗吗(地图不支持)13号线在海淀区吗(地图不支持)我们会经过临沂吗(城市可以支持,其他都不支持,这类问题都给导航)帮我查一下当地有哪些传统手工艺品(典型走问QA,偏向通用QA-槽位识别当地)通用问答:地理知识成都有多大——QA成都离北京有多远——导航能满足,车载默认开车,手机会区分飞机火车等怎么从北京去成都——优先导航,多轮下可能是生活服务/QA边界2:生活服务的酒店美食店铺的POI相关问题杭州乐园什么时候关门——旅游景点途虎养车在哪——地图而不是生活服务 (xxx在哪,优先导航)同帮巴顿火锅——生活服务>QA大观原点酒店——生活服务我要去评分最高的鄂菜——生活服务从重庆飞到上海要几个小时——地图问答可以满足,同QA边界3:POI单实体问题,QA-美食-旅游-地图,单实体POI,地图的优先级最低,默认都是给QA兜底武当山边界4:POI搜索与搜索的区别,默认都给QA搜索香格里拉、搜索九寨沟边界5:特殊POI,如下几个特例,和开车导航关系非常密切的优先地图:附近的加油站, 搜索加油站,q=加油站附近的充电桩,q=充电桩,q=充电(车载)附近的服务区,q=服务器停车场边界6:规划A到B的旅游路线——旅游,只有路线是导航,如果有旅游游玩相关需求是旅游边界7:A附近的Bq=北京有没有山姆——没有明确导航意图,出QA如果是导航过程中,目的地或途径点有没有xxx,给导航(目的地附近有没有大悦城) + +## 易混淆标签 + +地图问答QA收藏和记忆生活服务 + +## 划分原则 + +边界1:导航-地图问答-QA执行上:地图问答先给导航,导航不召回,给QA(走哪问哪拆出来给导航)短线现状:导航需求,A到B路线查询可以。公交地铁站点查询等都不支持。问题:多轮下针对现有路线提问,很容易出现此类问题长线:原则1:依赖导航app接口查询结果的是地图问答,路线、公交地铁站等,现有接口不支持,走大模型兜底,而不是回复不支持产品问题@张睿@李循边界2:“在哪”,“去xxx”优先给导航,其他都是生活服务优先长线,计划“在哪”不区分导航和生活服务,统一满足边界3:单实体,默认QA,如果是导航需求则给导航和QA都算对。选项1:出富媒体卡片:百科+旅游+导航选项2:询问是否要去哪里单实体难以分端区分,应该在车载端满足时,单实体走poi搜索,有结果出一个导航的卡片。中控不做区分。各端的导航和生活服务单实体,都给导航优先,且QA满足应该调用搜索后出导航或生活类卡片。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/地图导航/地图设置.md b/skills/label-master/knowledge/标签/地图导航/地图设置.md new file mode 100644 index 0000000..8722ab9 --- /dev/null +++ b/skills/label-master/knowledge/标签/地图导航/地图设置.md @@ -0,0 +1,46 @@ +# 地图设置 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:地图设置 +- Agent 包装候选(不代表最终):Agent(tag="地图设置") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +设置和控制 + +## 适用范围 + +地图内部相关设置,非通用app设置 + +## 典型 Query + +导航播报设置为简洁打开2D常规导航(Adjust)设置车牌号(SetPlateNumber) 满足:车载端没有,手机端跳转APP + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +边界1:地图设置和控制:高德百度地图APP内部功能属于地图设置,APP外部功能属于控制。地图设置和控制的边界问题:导航窗口放大--应用窗口控制 + +## 易混淆标签 + +系统控制 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/地图导航/地图问答.md b/skills/label-master/knowledge/标签/地图导航/地图问答.md new file mode 100644 index 0000000..cc9026a --- /dev/null +++ b/skills/label-master/knowledge/标签/地图导航/地图问答.md @@ -0,0 +1,46 @@ +# 地图问答 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:地图问答 +- Agent 包装候选(不代表最终):Agent(tag="地图问答") +- Function 输出候选:1.AnswerTrafficJam()查询拥堵2.SearchRoute查询路线3.AnswerTransport查询交通相关信息4.AnswerSpeedLimit查询限速5.AnswerTimeCost查询到达时间查询两点之间耗时6.AnswerDistance查询距离-路线中查询距离-指定起始终止点AnswerPoiInfo查询目的地查询途经点查询当前位置查询当前道路AnswerPassPoi查询沿途服务区数量查询红绿灯查询沿途城市AnswerDirection方位查询SearchPoipoi查询 +- 推荐输出形态:待确认。 + +## 功能抽象 + +问答类 + +## 适用范围 + +与poi相关的问答查询、导航问答查询 + +## 典型 Query + +襄阳古城位于我们的西边吗(AnswerDirection)途径哪些城市呢(AnswerPassPoi) 能否预测还要堵多久(AnswerTrafficJam)查询当前北五环限速(AnswerSpeedLimit) 我现在在上海吗(AnswerPoiInfo)到目的地还要多少电(AnswerBattery)高速路上开车预计多远(AnswerDistance)这里到目的地要多少高速费(AnswerHighwayToll)查看设置的导航偏好选项(AnswerMode)前面怎么走比较好(AnswerRoute)我还有多久才能上高速(AnswerTimeCost)给我说一说富源南路附近的路况(AnswerTrafficCondition)五幺六路什么时候到小米科技园(AnswerTransport) + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +1.AnswerTrafficJam()查询拥堵2.SearchRoute查询路线3.AnswerTransport查询交通相关信息4.AnswerSpeedLimit查询限速5.AnswerTimeCost查询到达时间查询两点之间耗时6.AnswerDistance查询距离-路线中查询距离-指定起始终止点AnswerPoiInfo查询目的地查询途经点查询当前位置查询当前道路AnswerPassPoi查询沿途服务区数量查询红绿灯查询沿途城市AnswerDirection方位查询SearchPoipoi查询 + +## 满足边界问题 + +与车控的边界:已经跑的里程&时间是车载设备状态查询;预估里程&时间是地图问答出发到现在开了多久了-车载设备状态查询上次充满电跑多少公里了-车载设备状态查询已经开了多久-车载设备状态查询到北京有多少里程-地图问答导航显示还需要开多久-地图问答 + +## 易混淆标签 + +车载设备状态查询 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/地图导航/地址设置.md b/skills/label-master/knowledge/标签/地图导航/地址设置.md new file mode 100644 index 0000000..0468767 --- /dev/null +++ b/skills/label-master/knowledge/标签/地图导航/地址设置.md @@ -0,0 +1,46 @@ +# 地址设置 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:地址设置b1fa3050279749969615eaacab3ff5e0 +- Agent 包装候选(不代表最终):Agent(tag="地址设置") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +设置地图中的特有的地址,如家、公司、朋友地址 + +## 典型 Query + +小爱小爱设置我家的地址在金茂悦龙山(SetMapAddress)设置网鱼网咖为王小华的秘密基地(SetMapAddress)删了一下家的地址(DeleteMapAddress) + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +边界:【待讨论】与结构记忆的区别修改我家地址 修改公司的地址 + +## 易混淆标签 + +结构记忆 + +## 划分原则 + +原则1:地址增删改功能【TODO @乔国辉】车载端-导航其他端-工具 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/地图导航/走哪问哪.md b/skills/label-master/knowledge/标签/地图导航/走哪问哪.md new file mode 100644 index 0000000..5a1ad1c --- /dev/null +++ b/skills/label-master/knowledge/标签/地图导航/走哪问哪.md @@ -0,0 +1,46 @@ +# 走哪问哪 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:走哪问哪 +- Agent 包装候选(不代表最终):Agent(tag="走哪问哪") +- Function 输出候选:AnswerGoAsk走哪问哪AnswerKnowledgeSearch走问qa +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +车载特有功能,基于当前POI问附近的POI信息手机端满足:高德搜索poi(比如“山”),可能获得列表最终选中的poi名称+prompt + query注入外部大模型满足车载端满足:1.高德搜索poi(比如“山”),可能获得列表2.根据方向进行过滤(如果有提到方向)最终选中的poi名称+prompt + query注入外部大模型满足 + +## 典型 Query + +周围那条河你知道它的名字是什么吗(AnswerGoAsk)这个地区有没有保护森林的自然保护区(AnswerKnowledgeSearch) + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +AnswerGoAsk走哪问哪AnswerKnowledgeSearch走问qa + +## 满足边界问题 + +边界1:区分AnswerGoAsk和AnswerKnowledgeSearch走问和走问QA区别在于,走问预期回答一个poi的名字,而走问qa回答与这个poi相关的其他信息。比如:前方隧道叫什么 - 走问前方隧道有多长 - 走问qa走哪问哪与通用问答晓月隧道有多长【通用问答】前边的隧道有多长【走哪问哪】边界2:走问在眼镜端和图片问答的边界【TODO 图片问答边界】 + +## 易混淆标签 + +AnswerGoAskAnswerKnowledgeSearch图片问答屏幕问答照片问答 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/地图导航/违章查询.md b/skills/label-master/knowledge/标签/地图导航/违章查询.md new file mode 100644 index 0000000..5fab1a0 --- /dev/null +++ b/skills/label-master/knowledge/标签/地图导航/违章查询.md @@ -0,0 +1,46 @@ +# 违章查询 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:违章查询 +- Agent 包装候选(不代表最终):Agent(tag="违章查询") +- Function 输出候选:AnswerRestrictRegion指定区域查询限行AnswerRestrictOuter指定区域查询外地车牌限行AnswerRestrictInfo限行信息查询 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +违章查询:只有查询。如果是交通规则问答,以及什么算违章等问答,都是通用问答。 + +## 典型 Query + +违章查询:我有没有违章今天有没有违法变线(SearchTrafficViolation + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +AnswerRestrictRegion指定区域查询限行AnswerRestrictOuter指定区域查询外地车牌限行AnswerRestrictInfo限行信息查询 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/地图导航/限号查询.md b/skills/label-master/knowledge/标签/地图导航/限号查询.md new file mode 100644 index 0000000..bdba2d2 --- /dev/null +++ b/skills/label-master/knowledge/标签/地图导航/限号查询.md @@ -0,0 +1,46 @@ +# 限号查询 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:限号查询 +- Agent 包装候选(不代表最终):Agent(tag="限号查询") +- Function 输出候选:AnswerDeduction查询城市限行扣分规则 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +限行、限号查询,只有查询 + +## 典型 Query + +限号天津大大大的前天汽车限行尾号是多少(查询类)(AnswerRestrictInfo) + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +AnswerDeduction查询城市限行扣分规则 + +## 满足边界问题 + +边界1:以下情况都给导航违章查询限号查询违章问答限号问答交通规则问答示例query:天津大大大的前天汽车限行尾号是多少(查询类)(AnswerRestrictInfo)外地车在北京高峰期可以上五环吗(问答类)(AnswerRestrictOuter)元旦时上海的限行区域是哪些(AnswerRestrictRegion)尾号是三限行扣多少分呢(AnswerDeduction) + +## 易混淆标签 + +违章问答限号问答交通规则问答 + +## 划分原则 + +原则1:查询和问答全部给导航(方案1:查询和问答,区分开查询是searchXXX或者queryXXX问答是answerXXX,但是统一给QA方案2:不区分问答和查询,全部算问答类,统一给地图导航) + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/小米产品问答/家用设备状态查询(IoT).md b/skills/label-master/knowledge/标签/小米产品问答/家用设备状态查询(IoT).md new file mode 100644 index 0000000..6b9564c --- /dev/null +++ b/skills/label-master/knowledge/标签/小米产品问答/家用设备状态查询(IoT).md @@ -0,0 +1,46 @@ +# 家用设备状态查询(IoT) + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:家用设备状态查询(IoT) +- Agent 包装候选(不代表最终):Agent(tag="家用设备状态查询(IoT)") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +针对小米IoT特有的,区别与其他小米场景的设置项查询,限定在智能家居范围。只有在家用场景,有屏音箱或手机端等,给小米产品问答,在其他端是QA(),通用问答会根据知识回答其他非小米产品或通用车载功能的问题。 + +## 典型 Query + +主卧现在多少温度室内温度几度 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/小米产品问答/小爱帮助.md b/skills/label-master/knowledge/标签/小米产品问答/小爱帮助.md new file mode 100644 index 0000000..c54a3f1 --- /dev/null +++ b/skills/label-master/knowledge/标签/小米产品问答/小爱帮助.md @@ -0,0 +1,46 @@ +# 小爱帮助 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:小爱帮助 +- Agent 包装候选(不代表最终):Agent(tag="小爱帮助") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +小爱同学系统内部功能问答 + +## 典型 Query + +你会干什么你会调屏幕吗? + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/小米产品问答/小米产品帮助.md b/skills/label-master/knowledge/标签/小米产品问答/小米产品帮助.md new file mode 100644 index 0000000..d75c384 --- /dev/null +++ b/skills/label-master/knowledge/标签/小米产品问答/小米产品帮助.md @@ -0,0 +1,46 @@ +# 小米产品帮助 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:小米产品帮助 +- Agent 包装候选(不代表最终):Agent(tag="小米产品帮助") +- Function 输出候选:参数:goods:产品名关键词,例:小米十三、SU7brand: 产品品牌,比如: "小米,华为"attribute: 产品参数属性, 比如: "像素,续航"deviceType:用户查询的设备场景,例:车载、眼镜、通用、unknownrefer: 用户query中的指代, 例: 小爱,本机type: 查询中的问法类型, 例: 开关、状态、故障查询小米产品的静态信息Query: 这辆车百公里加速多少code:Query: 小米十五多少钱code:满足:手机端 & 眼镜端 & 车载:基于用户query检索静态知识库检索的知识给到llmSKill,调用大模型回复查询TT灯 (屏幕问答承接,走屏幕问答理想态code定义,这里不做定义)Query: 屏幕上红色的灯是什么 查询小爱的功能Query: 你会打游戏吗code:车载端 & 手机端 & 眼镜端:不同端结合端侧设备,检索对应知识,注入prompt,走大模型生成设置项查询:Query: 雨刮器在哪里调节code:满足:车载端:基于设置项槽位,结合实车context设置项锚点跳转集合,如果支持则直接锚点跳转;如果不支持则检索RAG知识,走大模型回复手机端:基于设置项槽位,结合ddf action能力集合;如果支持则直接展示action精品卡;如果不支持,则检索RAG知识库,走大模型回复 +- 推荐输出形态:待确认。 + +## 功能抽象 + +使用帮助 + +## 适用范围 + +小米产品信息小米相关的关键词举例:小米、redme、红米、su7,yu7,澎湃,hyperOS, 玄戒小爱/小米系统静态信息查询小米产品相关信息查询小米产品属性信息小米产品功能信息小米产品使用说明:需要参考小米产品说明书来回答的问题(其他如商业信息等不在范围内,属于QA) + +## 典型 Query + +HyperOS是什么?miui十五更新了什么内容小米手机都有什么颜色?小米手机屏幕有多大?小米手机如何使用NFC?小米手机如何连接网络?(车载端)HUD高度有几挡(手机端)WIFI在哪儿设置小米手机可以和小米电视投屏吗(车载端)什么是哨兵模式 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +参数:goods:产品名关键词,例:小米十三、SU7brand: 产品品牌,比如: "小米,华为"attribute: 产品参数属性, 比如: "像素,续航"deviceType:用户查询的设备场景,例:车载、眼镜、通用、unknownrefer: 用户query中的指代, 例: 小爱,本机type: 查询中的问法类型, 例: 开关、状态、故障查询小米产品的静态信息Query: 这辆车百公里加速多少code:Query: 小米十五多少钱code:满足:手机端 & 眼镜端 & 车载:基于用户query检索静态知识库检索的知识给到llmSKill,调用大模型回复查询TT灯 (屏幕问答承接,走屏幕问答理想态code定义,这里不做定义)Query: 屏幕上红色的灯是什么 查询小爱的功能Query: 你会打游戏吗code:车载端 & 手机端 & 眼镜端:不同端结合端侧设备,检索对应知识,注入prompt,走大模型生成设置项查询:Query: 雨刮器在哪里调节code:满足:车载端:基于设置项槽位,结合实车context设置项锚点跳转集合,如果支持则直接锚点跳转;如果不支持则检索RAG知识,走大模型回复手机端:基于设置项槽位,结合ddf action能力集合;如果支持则直接展示action精品卡;如果不支持,则检索RAG知识库,走大模型回复 + +## 满足边界问题 + +车载产品问答车载端case类型1眼镜应该放哪水杯应该放哪车载端case类型2雨天开车是胎压高好还是胎压低好开空调要打开内循环还是外循环电动汽车怎么充电车载端case类型3query=那个卡皮巴拉是干嘛的?query=嘤嘤是谁query=中间的那个萌宠能不能给我跳个舞以下query,不同端给不同的agent车载NFC功能如何使用天幕如何打开NFC功能如何使用手机NFC功能如何使用空调多久需要清洗一次扫地机怎么充电牙刷怎么充电牙刷如何开启震动模式枕头怎么洗运动鞋怎么刷完全和小米无关给QA华为汽车续航怎么样Vivo NFC功能如何使用指代理解为小米设备是product你有哪些功能是华为没有的你比华为手机强在哪你跟华为手机谁比较贵手车互联--在车载端给Product,其他端是QAOPPO手机怎么投屏车机iPhone投屏失败怎么解决iPhone无线CarPlay怎么连vivo手机如何进入投屏到汽车三星手机车机镜像怎么操作华为车机和荣耀手机镜像方式媒体播放问答边界---待定你能来首音乐么你能播放音乐么你会播放音乐么你可以来首歌么你可以播放音乐么你能播放音乐吗?你能唱歌吗?---直接播放音乐你会讲故事吗?---直接station讲故事你能连一下wifi吗?你能把屏幕调亮吗?你能打开飞行模式吗?你能调大音量吗?控制边界--给productQA能否帮我将微信从外屏删除?能否帮我打开热点?可以帮我把音量调高20%吗?你能否帮我将微信从外屏删除?你能否帮我打开热点?你可以帮我把音量调高20%吗?IOT单实体--给QA空调冰箱电视 + +## 易混淆标签 + +系统状态查询车载设备状态查询家用设备状态查询小米产品问答购物类控制IOT类QA + +## 划分原则 + +详见:小米产品问答边界问题1、如何界定什么是“小米”产品,以及如何界定什么功能是小米产品功能1、用户明确提到“小米”相关或指代消解后知道是小米产品,给到productQA2、小米+其他品牌对比,认为是购物类需求,给LifeAgent,其他品牌之间对比给QA3、结合场景给知识,不同端给不同agent例如“水杯应该放哪”,车载给productAgent,手机给QA2、购买类需求,包括购物信息对比、购物比价,全部给生活服务agent。如果query中出现app名字的,给app控制兜底。3、可执行类的控制相关问答优先给产品,媒体播放类询问题待定(待讨论)边界问题1:可执行action和产品问答边界:直接执行出引导+卡片小米产品问答能否帮我【控制指令】能否帮我【播放媒体资源指令】能否帮我【某可执行指令】你能【控制指令】吗你能【播放媒体资源指令】吗你能【某可执行指令】吗你会不会【控制指令】你会不会【播放媒体资源指令】你会不会【某可执行指令】1、产品和通用问答边界问题:1.1 网易云音乐为什么打不开:因为默认用户在问小米手机系统,或小米车载系统,所以是产品问答1.2 洗衣机、空调为什么坏了:因为产品agent新增支持IOT类问题问答,产品agent会区分用户是否有小米空调或小米洗衣机,因此满足上都给产品agent,也属于产品问答 2、可执行指令和产品问答边界问题:@李彦婵 拉产品老师统一梳理类似需求,给出统一解决方案并发起技术评审,有结论之前,中控线上维持现状 + +## 未解决问题 + +商品推荐recommand、商品比较compare,给LifeAgent diff --git a/skills/label-master/knowledge/标签/小米产品问答/手车互联.md b/skills/label-master/knowledge/标签/小米产品问答/手车互联.md new file mode 100644 index 0000000..fd5ff89 --- /dev/null +++ b/skills/label-master/knowledge/标签/小米产品问答/手车互联.md @@ -0,0 +1,46 @@ +# 手车互联 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:手车互联 +- Agent 包装候选(不代表最终):Agent(tag="手车互联") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +待补充。 + +## 典型 Query + +OPPO手机怎么投屏车机iPhone投屏失败怎么解决iPhone无线CarPlay怎么连vivo手机如何进入投屏到汽车 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/小米产品问答/系统状态查询.md b/skills/label-master/knowledge/标签/小米产品问答/系统状态查询.md new file mode 100644 index 0000000..8958e71 --- /dev/null +++ b/skills/label-master/knowledge/标签/小米产品问答/系统状态查询.md @@ -0,0 +1,46 @@ +# 系统状态查询 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:系统状态查询 +- Agent 包装候选(不代表最终):Agent(tag="系统状态查询") +- Function 输出候选:deviceType:用户查询的设备场景,例:车载、眼镜、通用、unknownQuery: 这辆车还有多少点电code:满足:车载端:会同时检索RAG知识库,同时发起event请求获取实车动态信号检索的知识和动态车机信号整合给到llmSkill,调用大模型回复手机端:检索RAG知识库 + action获取手机状态,通过push上报实时状态整合动静态信息,调用大模型回复动态信号精品卡Query: 静音模式开了吗code:满足:车载端:状态类查询根据attr槽位是否命中精品信号白名单,直接跳转精品卡手机端:状态类查询根据attr槽位对应的知识库中配置的信号类型是否是一步直达信号,直接跳转精品卡 +- 推荐输出形态:待确认。 + +## 功能抽象 + +控制类动态状态查询 + +## 适用范围 + +系统动态信息查询或系统动态设置项查询背景:控制本来分为“控、设、查”三部分,即:控制执行、功能设置、控制查询。现在将控制查询类需求分出来,因为所有的查询都是针对小米产品的,所以分给小米产品agent。 + +## 典型 Query + +你现在还有多少电当前音量是多少 + +## 三级语义功能点 + +查询机顶盒开关状态_场景(SearchAction)查询洗碗机剩余时间(SearchAction)查询空气净化器开关状态(SearchAction)查询室内空气质量(SearchAction) + +## Function / Agent 说明 + +deviceType:用户查询的设备场景,例:车载、眼镜、通用、unknownQuery: 这辆车还有多少点电code:满足:车载端:会同时检索RAG知识库,同时发起event请求获取实车动态信号检索的知识和动态车机信号整合给到llmSkill,调用大模型回复手机端:检索RAG知识库 + action获取手机状态,通过push上报实时状态整合动静态信息,调用大模型回复动态信号精品卡Query: 静音模式开了吗code:满足:车载端:状态类查询根据attr槽位是否命中精品信号白名单,直接跳转精品卡手机端:状态类查询根据attr槽位对应的知识库中配置的信号类型是否是一步直达信号,直接跳转精品卡 + +## 满足边界问题 + +1、动态状态查询和静态状态查询动态-实时状态:空调现在多少度?静态-硬件或系统属性:空调最高多少度?2、设备功能造成歧义空调-状态查询和天气问答q=现在多少度,有歧义:车内温度,车外,室内,室外,手机多少度?涉及多个设备,室内空调、车空调、室内温度计、室外温度计、体温计等。3、目标设备歧义分端同2,空调、灯、冰箱,都是车载、家庭和手机等多个设备同时可以控制或查询的:例如,车内灯,车外灯,家里灯,手机闪光灯,路由器信号灯,都是灯,到底是哪个设备电视询问其他电视手机设置项参考:用机助手设置项数据 + +## 易混淆标签 + +系统状态查询车载设备状态查询家用设备状态查询小米产品问答QA + +## 划分原则 + +1、静态状态是硬件或系统属性,属于小米产品问答。动态状态是实时状态,属于控制查询。2、动态状态分为系统的状态和设备的状态,设备分为车载和家用IOT场景。3、分发原则:老模型原则:小米产品问答>IOT查询>系统控制查询(当前线上策略:看3个谁打分高给谁)planning模型原则:车载设备状态查询:全端优先给小米产品问答家用设备状态查询:全端IOT优先系统控制查询:车载端:都给小米产品问答(已覆盖)其他端:都给小米产品问答(正在做) + +## 未解决问题 + +1、Function问题:按照deviceType区分设备而不是function name,当前架构不支持按照参数value分发skill2、边界问题的问题2和3需要讨论 diff --git a/skills/label-master/knowledge/标签/小米产品问答/车载设备状态查询.md b/skills/label-master/knowledge/标签/小米产品问答/车载设备状态查询.md new file mode 100644 index 0000000..457e801 --- /dev/null +++ b/skills/label-master/knowledge/标签/小米产品问答/车载设备状态查询.md @@ -0,0 +1,46 @@ +# 车载设备状态查询 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:车载设备状态查询 +- Agent 包装候选(不代表最终):Agent(tag="车载设备状态查询") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +针对小米汽车特有的,区别与其他小米终端类型的设置项查询,限定在车载范围。只有在车载端给小米产品问答,在其他端是QA(),通用问答会根据知识回答其他非小米产品或通用车载功能的问题。 + +## 典型 Query + +主驾座椅通风打开了吗主驾驶空调打开了吗 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/Kinship.md b/skills/label-master/knowledge/标签/工具类/Kinship.md new file mode 100644 index 0000000..abcefc3 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/Kinship.md @@ -0,0 +1,46 @@ +# Kinship + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:待确认。 +- Agent 包装候选(不代表最终):待确认。 +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +Kinship + +## 适用范围 + +关系称谓计算,根据关系计算称呼 + +## 典型 Query + +爷爷的爸爸叫什么 + +## 三级语义功能点 + +RunAction + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +边界1:单实体歧义的不给音乐,没有明确说播放的,缺少明确意图的,默认是关系计算爸爸的爸爸叫什么 + +## 易混淆标签 + +音乐 + +## 划分原则 + +原则:给mathQA,短线给arith即可 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/主动记忆.md b/skills/label-master/knowledge/标签/工具类/主动记忆.md new file mode 100644 index 0000000..ce50885 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/主动记忆.md @@ -0,0 +1,46 @@ +# 主动记忆 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:主动记忆主动记忆的增、删、改功能 +- Agent 包装候选(不代表最终):Agent(tag="主动记忆") +- Function 输出候选:x0=Memory(type="DEFAULT",category="身份证",attributes=["号码"],relationship=[本人],hasValue=true,isStructure = true)Add(memory=[x0]) +- 推荐输出形态:待确认。 + +## 功能抽象 + +主动记忆 + +## 适用范围 + +结构化信息记忆身份证、银行卡、护照、驾驶证、其他卡证、软件账号、邮箱号、手机号、车辆信息(车牌号、车品牌+车型、油车/新能源车)、导航地址、快递地址(寄件、收件地址)、电话、发票、物品位置等 + +## 典型 Query + +记住我的身份证号是123456我的身份证号是123456 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +x0=Memory(type="DEFAULT",category="身份证",attributes=["号码"],relationship=[本人],hasValue=true,isStructure = true)Add(memory=[x0]) + +## 满足边界问题 + +(@乔国辉)1、主动记忆,必须说记一下或收藏xxx,是tools实现结构化记忆,tools召回我的家庭地址是xxxx我的身份证号是xxxx非结构化记忆,必须明确记忆关键词,记一下我喜欢吃苹果2、被动记忆,tools不接(dialogAgent)。 我喜欢吃苹果边界1:和聊天、地图边界我的学校在xxxx我的地址xxxx(手机和车载有区别,车载给地图,手机给记忆)我学校的地址是xxxx我爸的地址是xxxxx我女儿学校地址是xxxx记忆只关注结构化记忆,但记忆关键字相关的都给记忆:证件、邮箱、手机号、地址;边界2:记一下xxx,收藏xxxx,所有垂域的收藏功能和记忆的关系记一下这个加油站(地图导航)收藏这首歌收藏这个地址收藏这个电台 + +## 易混淆标签 + +Chat地图导航 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/倒数日.md b/skills/label-master/knowledge/标签/工具类/倒数日.md new file mode 100644 index 0000000..02b0038 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/倒数日.md @@ -0,0 +1,46 @@ +# 倒数日 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:倒数日倒数日的增、删、改、查、打开、关闭、继续、暂停等等超过24小时的倒计时为倒数日,由日程而非时钟App创建,倒计时只能支持创建24小时内的倒计时 +- Agent 包装候选(不代表最终):Agent(tag="倒数日") +- Function 输出候选:x0 = Timer(type="COUNTDOWN")Search(timer=[x0]) +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +查询倒数日 + +## 典型 Query + +查一下我的倒数日 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +x0 = Timer(type="COUNTDOWN")Search(timer=[x0]) + +## 满足边界问题 + +倒数日>记忆>提醒 + +## 易混淆标签 + +记忆 + +## 划分原则 + +倒数日>记忆>提醒 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/倒计时.md b/skills/label-master/knowledge/标签/工具类/倒计时.md new file mode 100644 index 0000000..7e29ada --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/倒计时.md @@ -0,0 +1,46 @@ +# 倒计时 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:倒计时倒计时/秒表的增、删、改、查、打开、关闭、继续、暂停等等,倒计时和闹钟都在时钟App中倒计时只能支持创建24小时内的倒计时,超过24小时的倒计时为倒数日,由日程而非时钟App创建 +- Agent 包装候选(不代表最终):Agent(tag="倒计时") +- Function 输出候选:x0 = Timer()Search(timer=[x0])x0 = Timer(type="STOPWATCH")Search(timer=[x0]) +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +查询倒计时/秒表 + +## 典型 Query + +查询我的倒计时倒计时还剩几分钟 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +x0 = Timer()Search(timer=[x0])x0 = Timer(type="STOPWATCH")Search(timer=[x0]) + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/健康控制.md b/skills/label-master/knowledge/标签/工具类/健康控制.md new file mode 100644 index 0000000..0f9f363 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/健康控制.md @@ -0,0 +1,46 @@ +# 健康控制 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:健康控制打开关闭某运动健康功能界面开始停止暂停继续某运动模式开始带目标的运动开始测量健康状况该功能所监控的健康信息有:卡路里步数中高强度运动有效站立活动次数睡眠心率血压血糖血氧饱和度体重压力听音女性健康 +- Agent 包装候选(不代表最终):Agent(tag="健康控制") +- Function 输出候选:x0=FitnessHealth(category="SPORTCOURSE")Open(fitness=x0) +- 推荐输出形态:待确认。 + +## 功能抽象 + +运动健康 + +## 适用范围 + +打开某运动功能界面 + +## 典型 Query + +打开运动课程界面 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +x0=FitnessHealth(category="SPORTCOURSE")Open(fitness=x0) + +## 满足边界问题 + +运动健康:打开小米运动健康运动健康:小米运动健康是一个 + +## 易混淆标签 + +应用控制 + +## 划分原则 + +原则1:打开运动健康类需求,和打开翻译类似,属于系统APP功能,优先给工具,而不是APP + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/单位换算.md b/skills/label-master/knowledge/标签/工具类/单位换算.md new file mode 100644 index 0000000..303d0ae --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/单位换算.md @@ -0,0 +1,46 @@ +# 单位换算 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:单位换算 +- Agent 包装候选(不代表最终):Agent(tag="单位换算") +- Function 输出候选:query:三千米等于多少毫米类型:Function功能:单位转换参数:value: str 数值source: str 原单位target: str 目标单位当前结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案小爱llmSkill使用query和session调用智谱模型。智谱调用get_unit_conversion_ratio api 获取完整的计算基础数据,例如算式表达式、输出、近似值、单位等智谱模型根据工具结果进行回复总结,并输出functioncall参数。llmSkill根据functioncall参数展示卡片,并输出流式话术。最终结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案toolsAgentSkill解析code,调用get_unit_conversion_ratio api 获取工具结果。toolsAgentSkill根据api结果构造prompt,调用结果满足模型进行回复总结。toolsAgentSkill根据api参数和结果输出精品卡。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +单位换算 + +## 适用范围 + +单位换算获取两种单位的转换比例,输入数值、初始单位和目标单位,将数值对应的初始单位转换成目标单位的数值单位换算包括速度单位、金钱单位、体积单位、面积单位、时间单位、压力单位、功率单位、质量单位、长度单位、能量单位、汇率换算、温度单位等 + +## 典型 Query + +一年有多少天1海里有多少公里一节是多少公里每小时 + +## 三级语义功能点 + +RunActionRunActionRunActionRunActionRunActionRunActionRunActionRunActionRunActionRunActionRunActionRunActionRunAction + +## Function / Agent 说明 + +query:三千米等于多少毫米类型:Function功能:单位转换参数:value: str 数值source: str 原单位target: str 目标单位当前结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案小爱llmSkill使用query和session调用智谱模型。智谱调用get_unit_conversion_ratio api 获取完整的计算基础数据,例如算式表达式、输出、近似值、单位等智谱模型根据工具结果进行回复总结,并输出functioncall参数。llmSkill根据functioncall参数展示卡片,并输出流式话术。最终结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案toolsAgentSkill解析code,调用get_unit_conversion_ratio api 获取工具结果。toolsAgentSkill根据api结果构造prompt,调用结果满足模型进行回复总结。toolsAgentSkill根据api参数和结果输出精品卡。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/发短信.md b/skills/label-master/knowledge/标签/工具类/发短信.md new file mode 100644 index 0000000..fd32e4a --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/发短信.md @@ -0,0 +1,46 @@ +# 发短信 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:发短信 +- Agent 包装候选(不代表最终):Agent(tag="发短信") +- Function 输出候选:x0 = Contact(type="DEFAULT", name="张三", category="NORMAL")SendSMS(object=x0, card="CARD_ONE", text="我不回去了") +- 推荐输出形态:待确认。 + +## 功能抽象 + +发短信 + +## 适用范围 + +发短信 + +## 典型 Query + +给妈妈发短信说我想吃鸡翅了 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +x0 = Contact(type="DEFAULT", name="张三", category="NORMAL")SendSMS(object=x0, card="CARD_ONE", text="我不回去了") + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +原则1:明确说了是发短信,才是发短信,如果发消息,发信息,默认微信APP + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/地震.md b/skills/label-master/knowledge/标签/工具类/地震.md new file mode 100644 index 0000000..d07962a --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/地震.md @@ -0,0 +1,46 @@ +# 地震 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:地震 +- Agent 包装候选(不代表最终):Agent(tag="地震") +- Function 输出候选:EarthquakeQA()参数 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +地震信息查询 + +## 典型 Query + +最近的地震是哪个 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +EarthquakeQA()参数 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/外语翻译.md b/skills/label-master/knowledge/标签/工具类/外语翻译.md new file mode 100644 index 0000000..3113fac --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/外语翻译.md @@ -0,0 +1,46 @@ +# 外语翻译 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:外语翻译 +- Agent 包装候选(不代表最终):Agent(tag="外语翻译") +- Function 输出候选:Translate类型:Function功能:翻译信息参数:type:枚举类型,翻译内容的来源content: Optional[str] 待翻译文本source_language: Optional[str] 源语言target_language: Optional[str] 目标语言target_info:枚举,翻译的形式TranslateQA类型:Function功能:翻译类泛问答 +- 推荐输出形态:待确认。 + +## 功能抽象 + +外语问答 + +## 适用范围 + +定义:不同语种之间的基本互译需求,有多模态功能,可以满足基于图片的翻译,进行指代翻译包括:单词翻译、词组互译、句子互译 + +## 典型 Query + +普通的英文单词是什么好的,没问题,你想学习什么?用日语怎么说 + +## 三级语义功能点 + +ActivateAction[object@Translation] + +## Function / Agent 说明 + +Translate类型:Function功能:翻译信息参数:type:枚举类型,翻译内容的来源content: Optional[str] 待翻译文本source_language: Optional[str] 源语言target_language: Optional[str] 目标语言target_info:枚举,翻译的形式TranslateQA类型:Function功能:翻译类泛问答 + +## 满足边界问题 + +通用问答:VPN是什么意思不如言,刑从之古文翻译你好用四川话怎么说我想你了用河南话怎么说忧伤的乌龟翻译成繁体【某文言文古诗】怎么翻译 + +## 易混淆标签 + +QA() + +## 划分原则 + +1、只有“外语相关”+“翻译是主需求”两个条件同时满足才是翻译2、保准确不保召回,用户明确说了是英语、日语或单词等表达,才认为是翻译,重点是是否明确是外语相关的问题或外语单词相关问题。3、如果用户只说了“翻译”,不一定是翻译意图,如:文言文、古诗翻译。翻译成繁体字,拼音等。4、通用问答中和小米产品名词相关的问题,给产品问答 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/外语词典查询.md b/skills/label-master/knowledge/标签/工具类/外语词典查询.md new file mode 100644 index 0000000..8a762a0 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/外语词典查询.md @@ -0,0 +1,46 @@ +# 外语词典查询 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:外语词典查询 +- Agent 包装候选(不代表最终):Agent(tag="外语词典查询") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +定义:查询外文单词信息,包括读音、拼写、时态、语态、比较级、词性、近义词、反义词等等,有多模态功能,可以满足基于图片的翻译,进行指代翻译功能点:拼写、读音查询外文单词的时态、语态、比较级、词性、近义词、反义词等等 + +## 典型 Query + +flower怎么拼construction怎么读 + +## 三级语义功能点 + +ActivateAction + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +中文词典:biangbiang面的biang怎么写 + +## 易混淆标签 + +词典 + +## 划分原则 + +5、中文、拼音查词典给到词典,没有明确的查词典需求给到QA6、近义词反义词等,因为存在和中文,以及通用问答“买PUT”等的混淆问题,没有明确是外语或单词的给QA7、XX怎么读,字母怎么读给到翻译,汉字怎么读,给到词典 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/外语造句.md b/skills/label-master/knowledge/标签/工具类/外语造句.md new file mode 100644 index 0000000..f204968 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/外语造句.md @@ -0,0 +1,46 @@ +# 外语造句 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:外语造句 +- Agent 包装候选(不代表最终):Agent(tag="外语造句") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +定义:使用外语进行文本相关的创作功能点:词汇造句、主体造句等 + +## 典型 Query + +用ride这个单词造句描写青岛栈桥美丽风景的英文句子 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +文本创作:描写青岛栈桥美丽风景的句子 qa:用ride造句文本创作/外语问答:描写青岛栈桥美丽风景的英文句子 + +## 易混淆标签 + +QA()AI文本创作 + +## 划分原则 + +1、外语的文本创作类,给文本创作或qa2、外语问答类和QA边界模糊的,给谁都可以,都是大模型满足 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/外语问答.md b/skills/label-master/knowledge/标签/工具类/外语问答.md new file mode 100644 index 0000000..d127468 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/外语问答.md @@ -0,0 +1,46 @@ +# 外语问答 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:外语问答 +- Agent 包装候选(不代表最终):Agent(tag="外语问答") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +定义:关于外语语言结构、语法、词汇用法等等的问答功能点:外语语言结构、语法、词汇用法等 + +## 典型 Query + +英语中BIT和A FEW的区别英语中KM是什么缩写He kept very close guard of that part of the river句子结构分析NOT ONLY DO THEY CONTAINED A LOT OF WATER BUT THE MOVE FAST分析句子语法。 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +QA: PUT和CALL的区别QA:BIT和A FEW的区别QA:harmonyos和hyperos的区别外语问答:英语中BIT和A FEW的区别 + +## 易混淆标签 + +QA() + +## 划分原则 + +中文的语言结构、语法、词汇用法等等的问答给到QA同上,没有外语/单词等表达的都给QA + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/天气.md b/skills/label-master/knowledge/标签/工具类/天气.md new file mode 100644 index 0000000..9eb3f50 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/天气.md @@ -0,0 +1,46 @@ +# 天气 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:天气 +- Agent 包装候选(不代表最终):Agent(tag="天气") +- Function 输出候选:WeatherQA()参数 +- 推荐输出形态:待确认。 + +## 功能抽象 + +天气问答 + +## 适用范围 + +查询天气信息,具体包括天气信息查询天气信息对比温度信息查询湿度信息查询风力信息查询日出日落信息查询空气质量查询穿衣指数洗车指数 + +## 典型 Query + +12度的天气可以穿裙子吗春节有雨吗 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +WeatherQA()参数 + +## 满足边界问题 + +【待讨论】线上的weatherQA实际上是weatherforecast,是需要根据实时天气预报接口来回答问题,应该是天气预报需求,参考标签修改细则天气问答边界问题中定义的泛问答类属于weatherQA,weatherQA属于QA子集北京什么时候雨多海南的台风叫什么名字以下是QA:12度的天气可以出去玩吗北京3月份热不热武汉什么时候进入雨季明天能看到流星雨吗 + +## 易混淆标签 + +QA + +## 划分原则 + +详见天气问答边界问题 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/实数性质与计算.md b/skills/label-master/knowledge/标签/工具类/实数性质与计算.md new file mode 100644 index 0000000..cd5f2c0 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/实数性质与计算.md @@ -0,0 +1,46 @@ +# 实数性质与计算 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:待确认。 +- Agent 包装候选(不代表最终):待确认。 +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +实数性质与计算回答实数性质与计算相关的query,具体包含:最小公倍数最大公约数分数小数转换判断整数性质范围内整数的性质数值排序 + +## 适用范围 + +最小公倍数 + +## 典型 Query + +二和五的最小公倍数 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +(待讨论,范围太小了,全部走mathQA()))生成一个随机数 + +## 易混淆标签 + +QA + +## 划分原则 + +原则:给mathQA,短线给arith即可 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/小学数学应用题.md b/skills/label-master/knowledge/标签/工具类/小学数学应用题.md new file mode 100644 index 0000000..0182c54 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/小学数学应用题.md @@ -0,0 +1,46 @@ +# 小学数学应用题 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:待确认。 +- Agent 包装候选(不代表最终):待确认。 +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +小学数学应用题 + +## 适用范围 + +小学应用题 + +## 典型 Query + +待补充。 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/工资税收计算.md b/skills/label-master/knowledge/标签/工具类/工资税收计算.md new file mode 100644 index 0000000..c99d9e3 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/工资税收计算.md @@ -0,0 +1,46 @@ +# 工资税收计算 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:待确认。 +- Agent 包装候选(不代表最终):待确认。 +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +工资税收计算 + +## 适用范围 + +工资税收计算,根据月薪或者年薪计算需要缴纳的税收数量 + +## 典型 Query + +月工资1万税收多少钱 + +## 三级语义功能点 + +RunAction + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +(待讨论)边界1:除了工资税收计算,其他税收问题谁负责?买一套120万的房子能要交多少税 + +## 易混淆标签 + +QA + +## 划分原则 + +原则:给mathQA,短线给arith即可 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/打电话.md b/skills/label-master/knowledge/标签/工具类/打电话.md new file mode 100644 index 0000000..252842b --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/打电话.md @@ -0,0 +1,46 @@ +# 打电话 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:打电话 +- Agent 包装候选(不代表最终):Agent(tag="打电话") +- Function 输出候选:x0 = Contact(type="SCREEN")MakeCall(object=x0) +- 推荐输出形态:待确认。 + +## 功能抽象 + +打电话 + +## 适用范围 + +拨打电话(看图打电话、联系人打电话) + +## 典型 Query + +打电话给137xxx给微信聊天界面上这个号码拨打电话 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +x0 = Contact(type="SCREEN")MakeCall(object=x0) + +## 满足边界问题 + +拨打微信视频电话 + +## 易混淆标签 + +应用控制 + +## 划分原则 + +原则1:如果没说微信,但是打视频电话,打语音电话,默认是走APP微信电话 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/提醒.md b/skills/label-master/knowledge/标签/工具类/提醒.md new file mode 100644 index 0000000..033faab --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/提醒.md @@ -0,0 +1,46 @@ +# 提醒 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:提醒提醒/日程的增、删、改、查、打开、关闭等等关于日期的提醒、记忆等统一给提醒接 +- Agent 包装候选(不代表最终):Agent(tag="提醒") +- Function 输出候选:x0 = Reminder()Search(reminder=[x0])x0 = Reminder(type="CALENDAR")Search(reminder=[x0]) +- 推荐输出形态:待确认。 + +## 功能抽象 + +提醒 + +## 适用范围 + +查询提醒/日程 + +## 典型 Query + +我定的提醒是什么时候我爷爷的生日是什么时候明天有什么事情吗今天是什么纪念日 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +x0 = Reminder()Search(reminder=[x0])x0 = Reminder(type="CALENDAR")Search(reminder=[x0]) + +## 满足边界问题 + +【爷爷】的生日什么时候:family纪念日【毛泽东】的生日是什么时候:qa【节日】是什么时候:全给时间[人名]的生日是什么时候 + +## 易混淆标签 + +QA() + +## 划分原则 + +原则1:个性化的生日、纪念日都属于记忆只有查询我的提醒,才是提醒查询原则2:明确表述记一下就是主动记忆有“提醒”类明确表述是提醒两者都有,提醒>记一下提醒我记一下下周一是我妈生日原则3:距离爷爷生日还有几天,是时间距离计算 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/数学计算.md b/skills/label-master/knowledge/标签/工具类/数学计算.md new file mode 100644 index 0000000..23f3e5d --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/数学计算.md @@ -0,0 +1,46 @@ +# 数学计算 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:数学计算 +- Agent 包装候选(不代表最终):Agent(tag="数学计算") +- Function 输出候选:query:一加二加三加到九十九等于多少类型:Function功能:数列计算参数:from: str 起始值to: str 最终值step: str 步长symbol: 枚举,运算符号当前结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案小爱llmSkill使用query和session调用智谱模型。智谱调用series_of_numbers api 获取工具结果。智谱模型根据工具结果进行回复总结,并输出functioncall参数。llmSkill根据functioncall参数展示卡片,并输出流式话术。最终结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案toolsAgentSkill解析code,调用series_of_numbers api 获取工具结果。toolsAgentSkill根据api结果构造prompt,调用结果满足模型进行回复总结。toolsAgentSkill根据api参数和结果输出精品卡。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +数列计算 + +## 适用范围 + +数列计算 + +## 典型 Query + +一加二加三加到九十九等于多少 + +## 三级语义功能点 + +RunAction + +## Function / Agent 说明 + +query:一加二加三加到九十九等于多少类型:Function功能:数列计算参数:from: str 起始值to: str 最终值step: str 步长symbol: 枚举,运算符号当前结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案小爱llmSkill使用query和session调用智谱模型。智谱调用series_of_numbers api 获取工具结果。智谱模型根据工具结果进行回复总结,并输出functioncall参数。llmSkill根据functioncall参数展示卡片,并输出流式话术。最终结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案toolsAgentSkill解析code,调用series_of_numbers api 获取工具结果。toolsAgentSkill根据api结果构造prompt,调用结果满足模型进行回复总结。toolsAgentSkill根据api参数和结果输出精品卡。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +原则1:这个功能由于很难判断一个计算是否是数列计算,因此把这个标签拆分为公式计算和mathQA。此类别如果符合公式计算的特征给formula计算,否则给MathQA。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/文档总结.md b/skills/label-master/knowledge/标签/工具类/文档总结.md new file mode 100644 index 0000000..5f64634 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/文档总结.md @@ -0,0 +1,46 @@ +# 文档总结 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:文档总结关于文档、url的总结与内容问答,如果文档的文字以图片形式呈现,依然给到文档总结 +- Agent 包装候选(不代表最终):Agent(tag="文档总结") +- Function 输出候选:x0 = Resource(type="DOC")Summarize(object=x0) +- 推荐输出形态:待确认。 + +## 功能抽象 + +文档总结 + +## 适用范围 + +文档总结 + +## 典型 Query + +总结一下这个文档眼前这个文档是什么意思 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +x0 = Resource(type="DOC")Summarize(object=x0) + +## 满足边界问题 + +1、总结和图片问答边界:总结/分析+文档眼镜端:x0 = Resource(type="photo")其他端:x0 = Resource(type="picture")总结一下这幅图【TODO】2、可能需要联网搜索拿不到文档实体的(待讨论-国辉,产品满足问题)总结一下这本书总结一下孔乙己这篇文章3、(待讨论-国辉,产品满足问题)现在只支持文档和URL总结,图片、音频、视频还没有,看后续是否支持还是给其他垂域 + +## 易混淆标签 + +拍照问答、图片问答 + +## 划分原则 + +文档总结有多模态能力,在各个端都是文档总结。本地文档、屏幕上文字、URL、图片、视频、音频,这些已知来源的总结是总结,其他是QA。其他类型的总结可以出resource(type="unknown"),则工具agent调大模型总结。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/时间.md b/skills/label-master/knowledge/标签/工具类/时间.md new file mode 100644 index 0000000..3d83085 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/时间.md @@ -0,0 +1,46 @@ +# 时间 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:时间 +- Agent 包装候选(不代表最终):Agent(tag="时间") +- Function 输出候选:CalendarQA类型:Object功能:日历信息查询参数:type: 枚举类型,查询的时间类型target_time: Optional[str] 时间槽位location: Optional[str] 目标地点 废弃 +- 推荐输出形态:待确认。 + +## 功能抽象 + +时间 + +## 适用范围 + +日历、日期、时间查询也包括指定地点(查询时区)的日历、日期、时间查询 + +## 典型 Query + +query:现在西雅图几点当前结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案小爱llmSkill使用query和session调用智谱模型。智谱调用search_calendar_info api 获取工具结果。智谱模型根据工具结果进行回复总结,并输出functioncall参数。llmSkill根据functioncall参数展示卡片,并输出流式话术。时区方案:智谱当前做法:智谱根据小爱提供时区数据,内部维护词表实现。理想态做法:语义理解:与天气相同,输出Location槽位(包含:country、province、city、district、town、poi等)。当前已经将这些信息注入给模型结果满足:skill根据Location槽位获取zoneId如果有zoneId,skill根据zoneId调用function api获取结果,注入结果模型回复。如果无zoneId,则使用location信息调用poi接口获取经纬度,根据经纬度计算时区。如果poi接口无结果,skill调用兜底回复模型。 + +## 三级语义功能点 + +ConfirmActionSearchActionConfirmActionSearchActionSearchActionSearchActionConfirmActionSearchActionSearchActionSearchActionSearchActionConfirmActionSearchActionConfirmActionConfirmActionSearchActionActivateActionSearchActionConfirmActionConfirmActionConfirmActionConfirmActionConfirmActionSearchActionConfirmActionConfirmActionConfirmAction + +## Function / Agent 说明 + +CalendarQA类型:Object功能:日历信息查询参数:type: 枚举类型,查询的时间类型target_time: Optional[str] 时间槽位location: Optional[str] 目标地点 废弃 + +## 满足边界问题 + +中考是什么时候雷军的生日是什么时候三湾改编是什么时候我的生日是什么时候五一劳动节 + +## 易混淆标签 + +QA提醒记忆personalData + +## 划分原则 + +原则1:个性化信息的时间给QA或personalData自己召回,非个性信息中,只有依赖日历作为满足的,给时间问答,只包括节日、节气、假期,其他都是QA公共考试时间:中考、高考、法考、托福、雅思,给QA名人生日问答:全部给QA张三生日问答:给QA(personal data自己召回)节日时间——时间问答CalendarQA节气时间——时间问答CalendarQA假期时间——时间问答CalendarQA暑假寒假时间——时间问答CalendarQA要查黄历的——QA阅兵是哪天——QA + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/时间距离计算.md b/skills/label-master/knowledge/标签/工具类/时间距离计算.md new file mode 100644 index 0000000..80fa98f --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/时间距离计算.md @@ -0,0 +1,46 @@ +# 时间距离计算 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:时间距离计算 +- Agent 包装候选(不代表最终):Agent(tag="时间距离计算") +- Function 输出候选:TimeDistance类型:Function功能:时间距离计算参数:type:枚举类型,时间粒度start_time: Optional[str] 开始时间end_time: Optional[str] 结束时间 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +计算两个时间点的时间间隔 + +## 典型 Query + +距离八月十五还有多久距离春节还有多久三十天后是什么日子劳动节到国庆节中间有多少天当前结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案小爱llmSkill使用query和session调用智谱模型。智谱调用calculate_time_distance api 获取工具结果。智谱模型根据工具结果进行回复总结,并输出functioncall参数。llmSkill输出流式话术。最终结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案toolsAgentSkill解析code,调用calculate_time_distance api 获取工具结果。toolsAgentSkill根据api结果构造prompt,调用结果满足模型进行回复总结。 + +## 三级语义功能点 + +SearchActionSearchActionSearchActionSearchActionSearchActionSearchActionSearchActionSearchActionSearchAction + +## Function / Agent 说明 + +TimeDistance类型:Function功能:时间距离计算参数:type:枚举类型,时间粒度start_time: Optional[str] 开始时间end_time: Optional[str] 结束时间 + +## 满足边界问题 + +(已共识)我的生日还有多久 + +## 易混淆标签 + +提醒 + +## 划分原则 + +原则2:timeDistance(),依赖实时时间结果的时间计算都给时间问答>数学,不管时间和个性化是否相关,包括个性化生日,个性化纪念日等(类比:导航到我家,我家在哪,北京到洛杉矶的距离,北京到上海的距离)节假日、具体事件的时间距离计算,中控planning会识别到timeDistance(start, end) 这个函数下.备注:航班还有多久,外卖还有多长时间到,这些不属于timeDistance离我的生日还有多少天离xxx节日还有多少天离结婚纪念日还有多少天距离毛主席诞辰还有多少天离雷军生日还有多少天离阅兵还有几天原则3:不依赖实时时间的时间计算,如果是时间距离计算出timeDistance(),如果不是距离计算,其他时间相关的计算给QA()8月比7月多几天闰年比平年多几天暑假比寒假多几天原则4:时间常识类给QA一年有多少天8月有多少天五一节有多少天暑假有多少天今年暑假有多少个周末?原则5:精品垂域的时间距离计算离春运还有多久Life skill满足,出timeDistance() functiontime垂域的范围:问答+时间距离计算+其他时间计算(有多少工作日)节日时间节气时间固定假期时间时间点(具体几点)典型示例:五一劳动节--QA五一假期--QA五一假期是哪天--calenderQA五一假期从哪天到哪天--calenderQA五一有周末么--calenderQA五一有几天--calenderQA五月有几天--QA五月刨去五一还有几天--QA五一为什么有5天假期--QA到五一有几天--timeDistance到五一有几个周末--timeDistance五一比十一少几天--QA五一天数多还是十一天数多--QA + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/标准身高计算标准体重计算.md b/skills/label-master/knowledge/标签/工具类/标准身高计算标准体重计算.md new file mode 100644 index 0000000..8feb198 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/标准身高计算标准体重计算.md @@ -0,0 +1,46 @@ +# 标准身高计算标准体重计算 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:待确认。 +- Agent 包装候选(不代表最终):待确认。 +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +标准身高计算标准体重计算 + +## 适用范围 + +身高1.72米,标准体重是多少 + +## 典型 Query + +RunAction + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +原则:给mathQA,短线给arith即可 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/留言.md b/skills/label-master/knowledge/标签/工具类/留言.md new file mode 100644 index 0000000..2d69432 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/留言.md @@ -0,0 +1,46 @@ +# 留言 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:留言 +- Agent 包装候选(不代表最终):Agent(tag="留言") +- Function 输出候选:暂无迁移计划 +- 推荐输出形态:待确认。 + +## 功能抽象 + +留言留言垂域线上流量统计 + +## 适用范围 + +小爱音箱的语音留言管理:创建/收听/查看/编辑/删除单条留言,以及删除全部留言与唤醒留言能力。 + +## 典型 Query + +创建/录制“我要留言 / 留言 / 创建留言”“给家里留一句:晚饭七点开吃”查看/收听“查看留言 / 打开留言 / 有留言吗 / 今天有留言吗”“播放留言 / 听留言 / 我要听留言”编辑“把第一条留言改成:别忘了带钥匙”“把刚才那条补充一句:顺路买牛奶”删除“删除留言 / 删掉第三条留言 / 删掉刚才那条留言”“删除所有留言”取消录制“取消留言 / 不要了” + +## 三级语义功能点 + +创建 / 录制 → AddAction2)查看 / 收听 → CheckAction3)编辑 → EditAction4)删除(单条) → DeleteAction5)删除全部 → DeleteAction(mode=all)6)取消录制(进行中) → 结束录制并不保存7)唤醒留言能力 → ReceiveAction[object@Message](mailto:object@Message) + +## Function / Agent 说明 + +暂无迁移计划 + +## 满足边界问题 + +无本域仅处理家庭语音留言 + +## 易混淆标签 + +无 + +## 划分原则 + +创建 / 录制 → AddAction触发词:留言/创建/录一条/给××留话/说给家里听…2)查看 / 收听 → CheckAction触发词:查看/打开/有留言吗/今天有留言吗/播放/收听/听留言。3)编辑 → EditAction触发词:编辑/修改/补充/改成…定位规则:优先按“刚才/最新/第N条/时间点/关键词”匹配;未给出时默认“最新一条”。4)删除(单条) → DeleteAction触发词:删除/移除/把第N条删了/删掉刚才那条。5)删除全部 → DeleteAction(mode=all)触发词:删除所有留言/清空留言。6)取消录制(进行中) → 结束录制并不保存触发词:取消留言/不要了/重来。7)唤醒留言能力 → ReceiveAction[object@Message](mailto:object@Message)触发词:打开/进入留言(模块)/唤醒留言功能。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/竖式计算.md b/skills/label-master/knowledge/标签/工具类/竖式计算.md new file mode 100644 index 0000000..5c2342a --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/竖式计算.md @@ -0,0 +1,46 @@ +# 竖式计算 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:竖式计算 +- Agent 包装候选(不代表最终):Agent(tag="竖式计算") +- Function 输出候选:query:一加二加三加到九十九等于多少当前结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案小爱llmSkill使用query和session调用智谱模型。智谱调用series_of_numbers api 获取工具结果。智谱模型根据工具结果进行回复总结,并输出functioncall参数。llmSkill根据functioncall参数展示卡片,并输出流式话术。最终结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案toolsAgentSkill解析code,调用series_of_numbers api 获取工具结果。toolsAgentSkill根据api结果构造prompt,调用结果满足模型进行回复总结。toolsAgentSkill根据api参数和结果输出精品卡。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +竖式计算 + +## 适用范围 + +竖式计算类型:Function功能:数列计算参数:from: str 起始值to: str 最终值step: str 步长symbol: 枚举,运算符号 + +## 典型 Query + +22乘55列竖式计算 + +## 三级语义功能点 + +RunAction + +## Function / Agent 说明 + +query:一加二加三加到九十九等于多少当前结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案小爱llmSkill使用query和session调用智谱模型。智谱调用series_of_numbers api 获取工具结果。智谱模型根据工具结果进行回复总结,并输出functioncall参数。llmSkill根据functioncall参数展示卡片,并输出流式话术。最终结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案toolsAgentSkill解析code,调用series_of_numbers api 获取工具结果。toolsAgentSkill根据api结果构造prompt,调用结果满足模型进行回复总结。toolsAgentSkill根据api参数和结果输出精品卡。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +原则1:必须明确表达要“列竖式”计算,其他可以认为是公式计算或mathQA + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/简单数学问题.md b/skills/label-master/knowledge/标签/工具类/简单数学问题.md new file mode 100644 index 0000000..2df70b5 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/简单数学问题.md @@ -0,0 +1,46 @@ +# 简单数学问题 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:简单数学问题 +- Agent 包装候选(不代表最终):Agent(tag="简单数学问题") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +BMI计算 + +## 适用范围 + +计算BMI + +## 典型 Query + +身高150,体重150计算BMI + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +原则:给mathQA,短线给arith即可 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/翻译功能操作.md b/skills/label-master/knowledge/标签/工具类/翻译功能操作.md new file mode 100644 index 0000000..50e19b0 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/翻译功能操作.md @@ -0,0 +1,46 @@ +# 翻译功能操作 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:翻译功能操作 +- Agent 包装候选(不代表最终):Agent(tag="翻译功能操作") +- Function 输出候选:x0=XiaoAiTranslation(name="REALTIME")Close(object=x0) +- 推荐输出形态:待确认。 + +## 功能抽象 + +翻译功能操作 + +## 适用范围 + +打开、关闭(只有眼镜端20250716)各类翻译工具,调节翻译字体大小、字幕大小,翻译操作目前可以打开和关闭的小爱的翻译工具有:翻译对话翻译中英文互译同声传译(面对面翻译)每日英语AI字幕 + +## 典型 Query + +关闭翻译(只有眼镜端20250716) + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +x0=XiaoAiTranslation(name="REALTIME")Close(object=x0) + +## 满足边界问题 + +关闭有道翻译--APP控制 + +## 易混淆标签 + +应用控制 + +## 划分原则 + +1、工具类的控制都属于工具,例如打开翻译,打开运动健康等2、应用控制涉及的query是打开关闭带有具体app应用名称的,例如有道翻译、百度翻译,属于应用控制 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/课程表.md b/skills/label-master/knowledge/标签/工具类/课程表.md new file mode 100644 index 0000000..6f75485 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/课程表.md @@ -0,0 +1,46 @@ +# 课程表 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:课程表 +- Agent 包装候选(不代表最终):Agent(tag="课程表") +- Function 输出候选:无 +- 推荐输出形态:待确认。 + +## 功能抽象 + +课程表课程表线上流量统计 + +## 适用范围 + +快速获取、管理和调整课程安排提供课程表相关的功能:查询课程:课程内容、时间、地点、数量、教师)添加课:按节次或按时间课程表操作:启用、关闭、打开设置 + +## 典型 Query + +查询课程内容“帮我查一下明天的课程”“这周三我有什么课”查询课程时间“我的英语课几点上”“下节课什么时候开始”查询课程地点“今天的数学课在哪上”查询课程数量“我这周有几节课”查询课程教师“谁教我的物理课”添加课程“帮我在周三上午10点加一节日语课”“按第3节课的时间添加一节化学实验”课程表操作“开启课程表”“关闭课程表”“打开课程表设置” + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +无 + +## 满足边界问题 + +课程表查询/添加/操作均属于清晰的意图范围,没有很混淆的边界问题 + +## 易混淆标签 + +- + +## 划分原则 + +查询类包含“查/什么时候/在哪/谁上/有几节”等 → 对应 search_course 子功能根据关键词进一步路由:“内容” → search_course_content“时间” → search_course_time“地点” → search_course_location“数量” → search_course_count“老师/教师” → search_course_teacher添加类包含“添加/加课/加一门”等 → 对应 add_course 子功能若出现“第几节/按节次” → add_course_by_section若出现“几点/按时间” → add_course_by_time操作类包含“开启/关闭/打开设置”等 → 对应 class_schedule_operation“开启” → open_class_schedule“关闭” → close_class_schedule“打开设置” → set_class_schedule + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/通讯录.md b/skills/label-master/knowledge/标签/工具类/通讯录.md new file mode 100644 index 0000000..f3ba289 --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/通讯录.md @@ -0,0 +1,46 @@ +# 通讯录 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:通讯录 +- Agent 包装候选(不代表最终):Agent(tag="通讯录") +- Function 输出候选:SynchronizeContacts() +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +同步通讯录 + +## 典型 Query + +同步通讯录 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +SynchronizeContacts() + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/工具类/闹钟.md b/skills/label-master/knowledge/标签/工具类/闹钟.md new file mode 100644 index 0000000..046f03b --- /dev/null +++ b/skills/label-master/knowledge/标签/工具类/闹钟.md @@ -0,0 +1,46 @@ +# 闹钟 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:闹钟闹钟/小憩定时闹钟的增、删、改、查、打开、关闭,倒计时和闹钟都在时钟App中 +- Agent 包装候选(不代表最终):Agent(tag="闹钟") +- Function 输出候选:x0 = Alarm()Search(alarm=[x0])x0 = Alarm(type="RESTMODE")Search(alarm=[x0]) +- 推荐输出形态:待确认。 + +## 功能抽象 + +闹钟 + +## 适用范围 + +查询闹钟 + +## 典型 Query + +查询我的闹钟查询此次小憩时间我休息多长时间 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +x0 = Alarm()Search(alarm=[x0])x0 = Alarm(type="RESTMODE")Search(alarm=[x0]) + +## 满足边界问题 + +边界1:clock,reminder,自动任务3个功能是互相覆盖,有一定边界问题边界2:小憩模式打开小憩模式30分钟(控制?自动任务?)小憩模式30分钟边界3:叫醒,闹钟和提醒创建早晨6点的提醒用白噪声喊我八点遛狗边界4:自动任务30分钟后叫我30分钟后提醒我充满电的时候叫醒我 + +## 易混淆标签 + +提醒系统定时控制(自动任务)提醒 + +## 划分原则 + +原则1:睡觉叫醒我属于闹钟叫醒我的过程是把我从睡觉的状态叫醒,需要用到闹钟,所以给到闹钟垂域叫我、叫醒我、喊我都是闹钟,需要连续响铃提醒我,是提醒-备忘录原则2:提醒和闹钟的边界在于query中是否明确包含闹钟,如果明确包含闹钟,给到闹钟,否则给到提醒优先级:闹钟>提醒原则3:小憩模式/休息等类似表述+时间(待讨论,控制类问题)一部分是控制(打开关闭),一部分是tools,区分有困难打开小憩模式打开小憩模式30分钟小憩模式是一种独立功能,是一种让用户睡觉休息的模式这种要给闹钟,因为这种query的主要目的是要在固定时间后休息结束,闹钟响起。但是反过来,时间+小憩模式/休息,这种是固定时间后打开小憩模式的目的,所以要给到系统定时控制 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/应用控制和搜索/应用定时控制.md b/skills/label-master/knowledge/标签/应用控制和搜索/应用定时控制.md new file mode 100644 index 0000000..0553215 --- /dev/null +++ b/skills/label-master/knowledge/标签/应用控制和搜索/应用定时控制.md @@ -0,0 +1,46 @@ +# 应用定时控制 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:应用定时控制 +- Agent 包装候选(不代表最终):Agent(tag="应用定时控制") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +有时间限制的进行App的操作 + +## 典型 Query + +20分钟之后关闭音乐 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/应用控制和搜索/应用控制.md b/skills/label-master/knowledge/标签/应用控制和搜索/应用控制.md new file mode 100644 index 0000000..b37cee5 --- /dev/null +++ b/skills/label-master/knowledge/标签/应用控制和搜索/应用控制.md @@ -0,0 +1,46 @@ +# 应用控制 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:应用控制 +- Agent 包装候选(不代表最终):Agent(tag="应用控制") +- Function 输出候选:function定义:参数定义:app: 对应的应用名page: 打开的对应的页面Action: 具体的操作,如:open, close示例:Query:打开微信查看朋友圈 +- 推荐输出形态:待确认。 + +## 功能抽象 + +应用内部 + +## 适用范围 + +独立应用(App)进行操作,如打开,关闭,以及具体的操作等;生活服务App内的相关操作,属于生活服务Agent地图App内的相关导航操作,属于地图Agent内容类App的播放类的,属于内容类Agent + +## 典型 Query + +打开微信查看微信消息打开QQ给李胜打电话打开微信朋友圈 + +## 三级语义功能点 + +搜索微信好友的对话记录(SearchAction)给QQ好友发送语音通话(SendAction)打开微信二维码(OpenAction)关闭APP(CloseAction[object@App](mailto:object@App))打开APP(OpenAction[object@App](mailto:object@App)) + +## Function / Agent 说明 + +function定义:参数定义:app: 对应的应用名page: 打开的对应的页面Action: 具体的操作,如:open, close示例:Query:打开微信查看朋友圈 + +## 满足边界问题 + +与精品垂域的边界怎么定义,精品Agent优先,还是打开对应的App的都给到应用控制打开导航——导航打开秒表——工具打开翻译——工具打开有道翻译——APP打开地图——导航打开百度地图——APP打开大众点评——APP打开外卖——生活服务打开美团外卖——APP垂域内部的专有操作,按照对应主需求的结果映射对应的垂域打开百度地图的电子狗(控制Agent)打开百度地图的街景图层(控制Agent)打开百度地图的3D模式(控制Agent)打开大众点评点咖啡(生活服务Agent)内容类冲突:带App,播放类的给到内容类,打开类给到控制Agent打开QQ音乐我的收藏(控制Agent)打开QQ音乐播放我的收藏(内容Agent) + +## 易混淆标签 + +tag:应用控制系统控制设备控制Agent:地图导航Agent生活服务Agent内容Agent + +## 划分原则 + +边界原则:与内容类Agent冲突:播放类的给到内容类,打开类给到控制Agent共识原则:精品垂域优先召回,召回原则:根据用户主需求应用控制兜底,如果query中提到APP名字,则走APP应用控制 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/应用控制和搜索/搜索-应用名-QQ音乐.md b/skills/label-master/knowledge/标签/应用控制和搜索/搜索-应用名-QQ音乐.md new file mode 100644 index 0000000..cc3d20c --- /dev/null +++ b/skills/label-master/knowledge/标签/应用控制和搜索/搜索-应用名-QQ音乐.md @@ -0,0 +1,46 @@ +# 搜索|应用名(搜索|QQ音乐) + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:搜索|应用名(搜索|QQ音乐) +- Agent 包装候选(不代表最终):Agent(tag="搜索|应用名(搜索|QQ音乐)") +- Function 输出候选:function定义:参数定义:app: 对应的应用名content: 需要搜索的内容示例:Query:打开快手搜索情侣头像浏览器搜索手机发烫怎么办线上示例:打开抖音帮我搜一下起风了 +- 推荐输出形态:待确认。 + +## 功能抽象 + +应用内部的搜索 + +## 适用范围 + +独立应用(App)进行内部的搜索操作背景:应用进行内部的搜索,由于不同APP不能统一归属给控制Agent,所以单独出来App的名字类别,便于不同app的搜索给到不同Agent;搜索|QQ音乐->控制Agent搜索|百度地图->地图Agent搜索|美团外卖->生活服务Agent + +## 典型 Query + +QQ音乐搜索刘德华的歌曲东方财富搜索外汇交易动态打开抖音帮我搜一下起风了打开快手搜索情侣头像百度地图搜索附近的公园大众点评搜索附近的海底捞 + +## 三级语义功能点 + +搜索|应用名未有三语义,原来就是执行打开AppOpenAction点评搜索 :(OpenAction)浏览器搜索:SearchAction + +## Function / Agent 说明 + +function定义:参数定义:app: 对应的应用名content: 需要搜索的内容示例:Query:打开快手搜索情侣头像浏览器搜索手机发烫怎么办线上示例:打开抖音帮我搜一下起风了 + +## 满足边界问题 + +与地图Agent的冲突:打开地图搜索附近的超市,模型的标签:搜索|地图,映射给地图Agent与生活服务Agent的冲突:打开点评搜索美食打开点评搜索附近的美食, 打开点评找美食,统一:搜索|点评,映射生活Agent; + +## 易混淆标签 + +tag:搜索|应用名浏览器搜索应用播放餐饮服务地图导航Agent:地图导航Agent生活服务Agent内容Agent + +## 划分原则 + +边界原则:明确:app+(搜|查|找) ,统一类别:搜索|app分发原则:planning模型原则:浏览器搜索:控制Agent搜索|应用名:按照映射名进行不同Agent的映射 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/应用控制和搜索/浏览器搜索.md b/skills/label-master/knowledge/标签/应用控制和搜索/浏览器搜索.md new file mode 100644 index 0000000..9045d5f --- /dev/null +++ b/skills/label-master/knowledge/标签/应用控制和搜索/浏览器搜索.md @@ -0,0 +1,46 @@ +# 浏览器搜索 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:浏览器搜索 +- Agent 包装候选(不代表最终):Agent(tag="浏览器搜索") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +利用通用搜索引擎与浏览器进行搜索,获取知识背景:浏览器搜索是从search垂域进行分拆,所以给出了独立的标签; + +## 典型 Query + +百度搜索感冒了怎么办浏览器搜索手机发烫怎么办 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/交通购票.md b/skills/label-master/knowledge/标签/生活服务/交通购票.md new file mode 100644 index 0000000..a860dff --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/交通购票.md @@ -0,0 +1,46 @@ +# 交通购票 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:交通购票 +- Agent 包装候选(不代表最终):Agent(tag="交通购票") +- Function 输出候选:function定义:参数定义: +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +查询/购买交通车票 查询火车票开售日期查询距离火车票开售还有多久 查询可抢票时间 查询车次查询春运时间 + +## 典型 Query + +帮我查看一下火车票我要抢火车票订一张9月4号从青海到武汉的高铁票什么时候可以预定十月一日的火车票可以预定中秋节的火车票么距离国庆节抢票还有多久距离抢十一的票还有多久今天可以抢几号的火车票今天可以抢几号的飞机票距离春运还有多久今年什么时候是春运 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +function定义:参数定义: + +## 满足边界问题 + +应用控制类冲突,主要是打开12306进行火车票相关的查询与购买,确认先给到生活服务用12306查一下明天从平顶山到苏州的火车票(生活服务)打开12306查看我的车票(控制Agent)边界数据与地图Agent,确认给到地图Agent; 从北京到上海坐火车需要多久;工具Agent(时间)的边界数据:——生活服务距离春运还有多久-——生活服务今年什么时候是春运——生活服务航班信息查询,确认:关于机票,给到航班信息查询;订一张10月31号从武汉飞往重庆的飞机票帮我查看一下飞机票 + +## 易混淆标签 + +边界Agent:控制Agent地图Agent工具Agent边界Tag:应用控制地图问答时间航班信息查询 + +## 划分原则 + +planning模型分发原则生活服务Agent春运相关都给生活服务,不走工具时间类A到B坐什么车如果明确提到火车、飞机、高铁,是生活服务默认是导航A到B坐飞机多长时间,边界问题,QA和生活服务互相兜底北京飞洛杉矶的航班要飞多久——生活服务中国飞美国要飞多久——QA + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/商品信息对比.md b/skills/label-master/knowledge/标签/生活服务/商品信息对比.md new file mode 100644 index 0000000..d5f100b --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/商品信息对比.md @@ -0,0 +1,46 @@ +# 商品信息对比 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:商品信息对比 +- Agent 包装候选(不代表最终):Agent(tag="商品信息对比") +- Function 输出候选:function定义:参数定义: +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +获取不同商品规格参数信息对比 + +## 典型 Query + +帮我对比下小米15和iphone16的区别分析下小米15和iphone16手机镜头的区别 + +## 三级语义功能点 + +咨询客服不同产品的对比(AskAction)比较不同的商品(SearchAction) + +## Function / Agent 说明 + +function定义:参数定义: + +## 满足边界问题 + +边界1:商品的范围是什么,非硬件设备类的对比,是否需要进行召回,给到生活服务Agent如:车厘子和樱桃有什么区别如:汤圆和元宵有什么区别边界2:你和劳斯莱斯哪个开着舒服(YU7和劳斯莱斯对比) + +## 易混淆标签 + +边界Tag:通用对话 + +## 划分原则 + +planning模型分发原则明确提到小米产品是产品问答有购买意图的,同商品比价,属于商品购买无购买意图属于QA购买类意图不区分商品品类 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/商品推荐.md b/skills/label-master/knowledge/标签/生活服务/商品推荐.md new file mode 100644 index 0000000..e2dc7ca --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/商品推荐.md @@ -0,0 +1,46 @@ +# 商品推荐 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:商品推荐 +- Agent 包装候选(不代表最终):Agent(tag="商品推荐") +- Function 输出候选:function定义:参数定义:goods_name: 产品名,购买的物品名goods_brand: 品牌名,物品的品牌 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +明确的pattern,进行物品的推荐 + +## 典型 Query + +推荐一款 3000 元左右的小米手机推荐一款 3000 元左右的手机 + +## 三级语义功能点 + +筛选想要购买的商品/唤醒购物技能(SearchAction) + +## Function / Agent 说明 + +function定义:参数定义:goods_name: 产品名,购买的物品名goods_brand: 品牌名,物品的品牌 + +## 满足边界问题 + +平台比价,给到:商品推荐推荐一个最便宜的小米手机 + +## 易混淆标签 + +边界Tag:平台比价 + +## 划分原则 + +planning模型分发原则生活服务Agent + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/商品购买.md b/skills/label-master/knowledge/标签/生活服务/商品购买.md new file mode 100644 index 0000000..d0fcedf --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/商品购买.md @@ -0,0 +1,46 @@ +# 商品购买 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:商品购买 +- Agent 包装候选(不代表最终):Agent(tag="商品购买") +- Function 输出候选:function定义:参数定义:goods_name: 产品名,购买的物品名goods_brand: 品牌名,物品的品牌app:应用名,表示去哪个app购买 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +明确的pattern,进行物品的购买,明确不包含:购票类外卖类(实时可送的) + +## 典型 Query + +我要买小米十三我要买小米汽车我要买三千左右的手机 + +## 三级语义功能点 + +筛选想要购买的商品/唤醒购物技能(SearchAction)购买景区门票(OrderAction)购买彩票(OrderAction) + +## Function / Agent 说明 + +function定义:参数定义:goods_name: 产品名,购买的物品名goods_brand: 品牌名,物品的品牌app:应用名,表示去哪个app购买 + +## 满足边界问题 + +外卖类的购买(外卖)我要买麦当劳我要买咖啡火车票,飞机票的购买等等,都属于生活服务类(交通购票)我要买火车票我要买从北京到上海的飞机票 + +## 易混淆标签 + +边界Tag:外卖交通购票 + +## 划分原则 + +planning模型分发原则生活服务Agent + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/商品购买、应用名.md b/skills/label-master/knowledge/标签/生活服务/商品购买、应用名.md new file mode 100644 index 0000000..2527ae0 --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/商品购买、应用名.md @@ -0,0 +1,46 @@ +# 商品购买|应用名 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:商品购买|应用名 +- Agent 包装候选(不代表最终):Agent(tag="商品购买|应用名") +- Function 输出候选:同上 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +明确的pattern,进行物品的购买 + +## 典型 Query + +我要去京东买小米十三打开点评我要买咖啡 + +## 三级语义功能点 + +同上 + +## Function / Agent 说明 + +同上 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +planning模型分发原则生活服务Agent + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/团购.md b/skills/label-master/knowledge/标签/生活服务/团购.md new file mode 100644 index 0000000..c5a3df1 --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/团购.md @@ -0,0 +1,46 @@ +# 团购 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:团购 +- Agent 包装候选(不代表最终):Agent(tag="团购") +- Function 输出候选:function定义: +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +查找团购的活动,明确有团购的pattern; + +## 典型 Query + +给我找一下笨豆馆的团购搜索一下兰赛夫的团购活动哪里团购华莱士的券最便宜 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +function定义: + +## 满足边界问题 + +与生活服务,购物相关全部都会有冲突;团购火车票团购麦当劳团购故宫门票 + +## 易混淆标签 + +团购,能力还未建设,先都给生活服务,但不额外区分 + +## 划分原则 + +(TODO) + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/外卖.md b/skills/label-master/knowledge/标签/生活服务/外卖.md new file mode 100644 index 0000000..fe39194 --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/外卖.md @@ -0,0 +1,46 @@ +# 外卖 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:外卖 +- Agent 包装候选(不代表最终):Agent(tag="外卖") +- Function 输出候选:function定义:参数定义:app:应用名type:外卖的类别 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +点外卖,有明确的pattern外卖相关信息查询,如到哪了,什么时候到 + +## 典型 Query + +帮我点个外卖帮我订份烤肉拌饭我的外卖到哪了我的外卖什么时候到 + +## 三级语义功能点 + +查询外卖达到时间(SearchAction)从餐厅点外卖(OrderAction)查询外卖当前位置(SearchAction)从餐厅订曾经点过的外卖(OrderAction) + +## Function / Agent 说明 + +function定义:参数定义:app:应用名type:外卖的类别 + +## 满足边界问题 + +商品购买冲突,都属于生活服务我要订外卖买咖啡快递服务,都属于生活服务我在美团上买的手机到哪了 + +## 易混淆标签 + +边界tag:商品购买快递服务 + +## 划分原则 + +只支持点外卖,查外卖点外卖可以指定外卖员帮我送吗——QA我现在想点外卖又想吃凉拌猪耳朵但是外卖没有凉拌猪耳朵我该怎么办——生活服务 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/平台比价-、商品比价.md b/skills/label-master/knowledge/标签/生活服务/平台比价-、商品比价.md new file mode 100644 index 0000000..2880765 --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/平台比价-、商品比价.md @@ -0,0 +1,46 @@ +# 平台比价->商品比价 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:平台比价->商品比价 +- Agent 包装候选(不代表最终):Agent(tag="平台比价->商品比价") +- Function 输出候选:function定义:参数定义: +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +针对商品进行比价,选择最便宜,或者最贵的商品,明确不包括:酒店比价(酒店)外卖比价(外卖)美食比价(美食) + +## 典型 Query + +小米15全网最低价 + +## 三级语义功能点 + +新功能,无老三级语义功能点 + +## Function / Agent 说明 + +function定义:参数定义: + +## 满足边界问题 + +酒店:附近最便宜的酒店航班信息查询帮我查下北京到上海航班的最低价商品购买给我买最便宜小米手机小米产品帮助小米15最低价是多少钱;冲突类别应用控制,给到:商品比价打开京东查找最便宜的小米手机; + +## 易混淆标签 + +边界Tag:小米产品帮助应用控制产品购买航班信息查询外卖酒店 + +## 划分原则 + +边界结论:明确不包括:酒店比价(酒店)外卖比价(外卖)美食比价(美食)planning模型分发原则生活服务Agent没有比价功能,比价算在商品购买;酒店/外卖/机票 > 购物小米产品问答 > 购物 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/快递服务.md b/skills/label-master/knowledge/标签/生活服务/快递服务.md new file mode 100644 index 0000000..1297f7f --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/快递服务.md @@ -0,0 +1,46 @@ +# 快递服务 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:快递服务 +- Agent 包装候选(不代表最终):Agent(tag="快递服务") +- Function 输出候选:function定义:参数定义:app: 对应的应用名attribute: 快递的属性,比如:查询,邮寄示例数据:Query:打开淘宝查看我的订单 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +快递邮寄,以及快递信息查询 + +## 典型 Query + +查看我的快递查看京东物流寄快递发快递我的快递到哪了 + +## 三级语义功能点 + +查询购物订单物流信息(CheckAction) + +## Function / Agent 说明 + +function定义:参数定义:app: 对应的应用名attribute: 快递的属性,比如:查询,邮寄示例数据:Query:打开淘宝查看我的订单 + +## 满足边界问题 + +应用控制内的快递服务,确认给到生活服务Agent打开支持宝查看我的快递查看京东物流外卖类别:我的蛋糕到哪了?(边界数据) + +## 易混淆标签 + +边界tag:应用控制外卖、闪送 + +## 划分原则 + +能否通过手机号查快递——QA订单编号是250815的一般是哪个快递——QA现有只支持:寄快递,查快递,满足是打开某APP(支付宝)(TODO) + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/打车.md b/skills/label-master/knowledge/标签/生活服务/打车.md new file mode 100644 index 0000000..18e75d3 --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/打车.md @@ -0,0 +1,46 @@ +# 打车 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:打车 +- Agent 包装候选(不代表最终):Agent(tag="打车") +- Function 输出候选:function定义:参数定义:location: 地址信息,包括目的地,起点等app: 使用打车的应用名 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +明确的用第三车出去的需求; + +## 典型 Query + +帮我打个车去五彩城帮我打个顺风车打开地图进行打车到石家庄东广场网约车 + +## 三级语义功能点 + +无 + +## Function / Agent 说明 + +function定义:参数定义:location: 地址信息,包括目的地,起点等app: 使用打车的应用名 + +## 满足边界问题 + +带有打车并且带有App数据,后续给到生活服务承接打开美团打车打车的相关问答——生活服务从家到公司打车需要多少钱 + +## 易混淆标签 + +边界Agent:控制Agent通用对话Agent + +## 划分原则 + +planning模型分发原则生活服务Agent + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/找同款.md b/skills/label-master/knowledge/标签/生活服务/找同款.md new file mode 100644 index 0000000..f76da77 --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/找同款.md @@ -0,0 +1,46 @@ +# 找同款 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:找同款 +- Agent 包装候选(不代表最终):Agent(tag="找同款") +- Function 输出候选:function定义:参数定义:app: 对应的应用名goods_name: 产品名,购买的物品名attribute: 物品的属于,如:颜色,大小等等 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +针对当前信息,查找同款的物品,主要有明显的patter:同款 + +## 典型 Query + +推荐同款的手机我要买同款找同款我要买同款的手机在拼多多找同款物品找屏幕这件衣服的同款 + +## 三级语义功能点 + +新功能,无老三级语义功能点 + +## Function / Agent 说明 + +function定义:参数定义:app: 对应的应用名goods_name: 产品名,购买的物品名attribute: 物品的属于,如:颜色,大小等等 + +## 满足边界问题 + +产品购买类,给到:找同款我要买同款的手机应用控制的冲突,带APP的找同款,给到:找同款:打开小书红找同款的衣服 + +## 易混淆标签 + +边界tag:应用控制商品购买 + +## 划分原则 + +planning模型分发原则生活服务Agent + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/旅游.md b/skills/label-master/knowledge/标签/生活服务/旅游.md new file mode 100644 index 0000000..9d08dc7 --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/旅游.md @@ -0,0 +1,46 @@ +# 旅游 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:旅游 +- Agent 包装候选(不代表最终):Agent(tag="旅游") +- Function 输出候选:function定义:参数定义: +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +附近景点推荐非附近景点推荐 搜索景区营业时间 搜索景区介绍 搜索景区占地面积 搜索景区门票价格 搜索景区适合游玩的季节 查询目的地旅游攻略 搜索景区适合游玩的时长 购买景区门票 (产品购买)景点相关问答 + +## 典型 Query + +附近有什么好玩的广州有什么好玩的熊猫基地几点开门颐和园简介天安门广场的面积是多少故宫的门票价格故宫的游玩季节北海道怎么玩成都游玩时长购买黄山风景区门票 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +function定义:参数定义: + +## 满足边界问题 + +通用对话Agent主要是景点的相关问答,到底谁来承接——旅游问答,给生活服务湖北省博物馆要预约吗贵州千户苗寨适合推婴儿车去不赣州有摩天轮吗总统府可以自己带水或者零食吗八月份去哪里不热宁波有什么特色与地图Agent的冲突,给到生活服务Agent; 附近的公园附近的景点 + +## 易混淆标签 + +边界Agent:通用对话地图Agent + +## 划分原则 + +planning模型分发原则生活服务Agent旅游问答,景区问答,给生活服务 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/汽车服务.md b/skills/label-master/knowledge/标签/生活服务/汽车服务.md new file mode 100644 index 0000000..22fadd7 --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/汽车服务.md @@ -0,0 +1,46 @@ +# 汽车服务 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:汽车服务 +- Agent 包装候选(不代表最终):Agent(tag="汽车服务") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +修车,洗车,4S店服务等 + +## 典型 Query + +待补充。 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/生活服务.md b/skills/label-master/knowledge/标签/生活服务/生活服务.md new file mode 100644 index 0000000..3863b5a --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/生活服务.md @@ -0,0 +1,46 @@ +# 生活服务 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:生活服务 +- Agent 包装候选(不代表最终):Agent(tag="生活服务") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +关于生活休闲相关的周边生活的查询,以及问答非美食(餐饮)非外卖非景点生活服务类搜索:如运动场馆、按摩、足疗、洗浴、汗蒸、KTV、酒吧、台球、网吧电竞、电玩等初期垂域只针对车服进行建设(TODO 附近的xxx)车服电影院 + +## 典型 Query + +附近的娱乐场所搜索附近的台球厅给我寻找附近的羽毛球馆帮我查找我附近可以打疫苗的宠物医店帮我找一下附近的采耳团购店附近专修空调这附近有没有什么手工活附近有什么舞蹈班附近有什么可以学习乐器的地方 + +## 三级语义功能点 + +推荐附近的休闲娱乐(RecommendAction[object@EntertainmentVenue](mailto:object@EntertainmentVenue)) + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +与地图类的主要冲突,在于附近POI的查找,边界冲突未解决(生活服务Agent)给我寻找附近的羽毛球馆与景点,美食,外卖冲突的优先给具体的类别:附近的美食附近有什么好玩的帮忙点个外卖 + +## 易混淆标签 + +边界tag:景点美食外卖冲突的Agent:地图Agent + +## 划分原则 + +planning模型分发原则生活服务Agent + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/生活缴费.md b/skills/label-master/knowledge/标签/生活服务/生活缴费.md new file mode 100644 index 0000000..92cef3e --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/生活缴费.md @@ -0,0 +1,46 @@ +# 生活缴费 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:生活缴费 +- Agent 包装候选(不代表最终):Agent(tag="生活缴费") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +生活缴费:交电费交水费 + +## 典型 Query + +我要交电费打开支付宝进行生活缴费 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +应用控制冲突,此类给到生活服务Agent打开支付宝进行生活缴费打开支付宝交电费 + +## 易混淆标签 + +边界Agent冲突:控制Agent + +## 划分原则 + +planning模型分发原则生活服务Agent + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/电影票购买.md b/skills/label-master/knowledge/标签/生活服务/电影票购买.md new file mode 100644 index 0000000..9c706d4 --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/电影票购买.md @@ -0,0 +1,46 @@ +# 电影票购买 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:电影票购买 +- Agent 包装候选(不代表最终):Agent(tag="电影票购买") +- Function 输出候选:function定义:参数定义:cinema:影院名示例query:买五彩城CGV影院的电影票 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +进行电影票的购买电影票信息的查询 + +## 典型 Query + +我要买一张明天的电影票买五彩城CGV影院的电影票柯南独眼的残像今天有票吗帮我查一下中南方影院南京照相馆现在的电影票是多少钱帮我查一下今天晚上还有什么电影 + +## 三级语义功能点 + +指定电影院购买电影票(OrderAction) + +## Function / Agent 说明 + +function定义:参数定义:cinema:影院名示例query:买五彩城CGV影院的电影票 + +## 满足边界问题 + +找附近的电影院?产品购买类,都是生活服务承接,电影票购买给到电影票我要买一张明天的电影票内容问答:**的电影票房是多少**电影什么时间上映 + +## 易混淆标签 + +边界Tag:商品购买内容问答导航 + +## 划分原则 + +planning模型分发原则生活服务Agent电影票问答相关——生活服务电影问答——内容问答TODO:找附近的电影院? ——生活 或 导航 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/航班信息查询.md b/skills/label-master/knowledge/标签/生活服务/航班信息查询.md new file mode 100644 index 0000000..82806c8 --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/航班信息查询.md @@ -0,0 +1,46 @@ +# 航班信息查询 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:航班信息查询 +- Agent 包装候选(不代表最终):Agent(tag="航班信息查询") +- Function 输出候选:function定义:参数定义:name:航班名 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +对航班信息进行查询查询航班到达信息查询航班延误状态查询航班落地航站楼查询航班起飞信息机票查询与购买 + +## 典型 Query + +这个航班几点落地屏幕中这个航班还有多久到这个航班延误了么这个航班晚点了没这个飞机在哪个航站楼落地?这个航班落地的航站楼是哪一个?这个航班几点起飞这个航班还有多久从北京起飞订一张10月31号从武汉飞往重庆的飞机票帮我查看一下飞机票 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +function定义:参数定义:name:航班名 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +planning模型分发原则生活服务Agent + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/话费流量服务.md b/skills/label-master/knowledge/标签/生活服务/话费流量服务.md new file mode 100644 index 0000000..e19f471 --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/话费流量服务.md @@ -0,0 +1,46 @@ +# 话费流量服务 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:话费流量服务 +- Agent 包装候选(不代表最终):Agent(tag="话费流量服务") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +手机充值与查询充话费充流量查话费余额查流量查套餐 + +## 典型 Query + +我要充话费流量包办理我要办流量包帮我办流量包我要买流量帮我查话费余额帮我查一下流量打开中国移动查看套餐去中国移动查流量/查余量 + +## 三级语义功能点 + +电话费充值(PayAction)查看移动数据流量(CheckAction) + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +应用控制冲突,此类给到生活服务Agent打开支付宝交话费 + +## 易混淆标签 + +边界Agent冲突:控制Agent + +## 划分原则 + +planning模型分发原则生活服务Agent + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/购物.md b/skills/label-master/knowledge/标签/生活服务/购物.md new file mode 100644 index 0000000..982a427 --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/购物.md @@ -0,0 +1,46 @@ +# 购物 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:购物订单查询 +- Agent 包装候选(不代表最终):Agent(tag="购物") +- Function 输出候选:function定义:参数定义:app: 对应的应用名attribute: 订单的属性,如:未付款,未收货等等示例数据:Query:打开淘宝查看我的订单 +- 推荐输出形态:待确认。 + +## 功能抽象 + +购物 + +## 适用范围 + +查询自己所有消费相关的订单 + +## 典型 Query + +打开淘宝查看我的订单我有哪些购物订单查找我的购物订单打开我的订单查一下淘宝的订单 + +## 三级语义功能点 + +查询购物订单(CheckAction) + +## Function / Agent 说明 + +function定义:参数定义:app: 对应的应用名attribute: 订单的属性,如:未付款,未收货等等示例数据:Query:打开淘宝查看我的订单 + +## 满足边界问题 + +主要是冲突为应用控制,如:打开淘宝查看我的订单 + +## 易混淆标签 + +边界tag:应用控制 + +## 划分原则 + +边界结论:订单类的统一都给到生活服务Agent承接,不用管对应App;planning模型分发原则生活服务Agent + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/酒店.md b/skills/label-master/knowledge/标签/生活服务/酒店.md new file mode 100644 index 0000000..6734acd --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/酒店.md @@ -0,0 +1,46 @@ +# 酒店 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:酒店 +- Agent 包装候选(不代表最终):Agent(tag="酒店") +- Function 输出候选:function定义:参数定义:name:酒店名location: 酒店地址 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +订酒店查找酒店酒店问答酒店评价 + +## 典型 Query + +帮我订个明天晚上武汉的如家附近的酒店 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +function定义:参数定义:name:酒店名location: 酒店地址 + +## 满足边界问题 + +酒店相关介绍或通用问答问答,给到生活服务Agent,如:如家酒店好不好介绍一下如家酒店如家酒店哪个房型比较舒服如家酒店(单实体)——QA + +## 易混淆标签 + +边界Agent:通用对话 + +## 划分原则 + +planning模型分发原则生活服务Agent酒店问答、评价、推荐——生活服务单实体——偏向QA(先不动),长线出综合卡片单实体问题,美食、旅游、酒店都是类似(TODO) + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/餐厅订座排号.md b/skills/label-master/knowledge/标签/生活服务/餐厅订座排号.md new file mode 100644 index 0000000..8269ea1 --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/餐厅订座排号.md @@ -0,0 +1,46 @@ +# 餐厅订座排号 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:餐厅订座排号 +- Agent 包装候选(不代表最终):Agent(tag="餐厅订座排号") +- Function 输出候选:function定义:参数定义:num_person: 人数的多少open_time: 预定的时间name: 预定的餐厅名 +- 推荐输出形态:待确认。 + +## 功能抽象 + +生活服务 + +## 适用范围 + +进行餐厅的定订座排号 + +## 典型 Query + +帮我订一个明天下午三点的10个的包间帮我进行海底捞的排号 + +## 三级语义功能点 + +预定餐厅座位(ApplyAction) + +## Function / Agent 说明 + +function定义:参数定义:num_person: 人数的多少open_time: 预定的时间name: 预定的餐厅名 + +## 满足边界问题 + +暂无 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +planning模型分发原则生活服务Agent + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/生活服务/餐饮服务.md b/skills/label-master/knowledge/标签/生活服务/餐饮服务.md new file mode 100644 index 0000000..e3c3842 --- /dev/null +++ b/skills/label-master/knowledge/标签/生活服务/餐饮服务.md @@ -0,0 +1,46 @@ +# 餐饮服务 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:餐饮服务 +- Agent 包装候选(不代表最终):Agent(tag="餐饮服务") +- Function 输出候选:function定义:参数定义:location : 地址信息 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +美食查找推荐附近的美食推荐非附近的美食美食问答 + +## 典型 Query + +附近有什么好吃的附近的餐厅北京有什么好吃的附近的海底捞 + +## 三级语义功能点 + +推荐附近的美食(RecommendAction) + +## Function / Agent 说明 + +function定义:参数定义:location : 地址信息 + +## 满足边界问题 + +与地图Agent的冲突,如果POI是美食的操作,给到:生活服务附近的海底捞附近的美食餐厅通用对话Agent主要是美食的相关问答,到底谁来承接——生活服务优先(标签:美食问答-菜谱,给QA)岱山最好吃的海鲜菜在哪里——生活服务兰州拉面来源于哪里——生活服务保定特色美食有什么——生活服务鲁菜菜系有哪些名菜——生活服务 + +## 易混淆标签 + +边界Agent:通用对话Agent,美食的相关问答,是否承接;地图Agent + +## 划分原则 + +边界结论:按照POI的属性类别,如果是美食,给到生活服务;planning模型分发原则生活服务Agent菜谱-菜谱问答相关问题——QA美食查找,餐厅查找类——生活服务美食问答和餐厅问答——生活服务q=世界上最顶级的餐厅有哪些附近的海底捞--海底捞什么东西好吃--哪个海底捞好吃--海底捞为什么好吃--海底捞评分怎么样岱山最好吃的海鲜菜在哪里兰州拉面来源于哪里保定特色美食有什么鲁菜菜系有哪些名菜 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/系统控制和IOT设备控制/声纹.md b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/声纹.md new file mode 100644 index 0000000..3fee75a --- /dev/null +++ b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/声纹.md @@ -0,0 +1,46 @@ +# 声纹 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:声纹 +- Agent 包装候选(不代表最终):Agent(tag="声纹") +- Function 输出候选:Query:录入声纹code:(未共识)满足:录入用户声纹信息并存储,后续每次ASR识别会带上用户的声纹特征,基于此特征可以识别用户身份 +- 推荐输出形态:待确认。 + +## 功能抽象 + +声纹 + +## 适用范围 + +声纹指的是基于用户的声音特征识别用户身份的能力,理论上声纹特征和指纹一样,拥有唯一性小爱在音箱、电视、车载等设备上支持通过声纹来识别用户的身份,以此来实现特定用户的功能满足。声纹类别主要用于处理声纹的识别、录入。声纹识别的打开、关闭:声纹识别:识别声音、识别声纹声纹录入:声音注册、录入声纹声纹识别打开:打开声音识别、打开声纹锁声纹识别关闭:关掉声音识别、关闭声纹锁 + +## 典型 Query + +录入声纹识别我的声纹注册声音记录声纹 + +## 三级语义功能点 + +声纹垂域没有三级意图,只有老的intention意图 + +## Function / Agent 说明 + +Query:录入声纹code:(未共识)满足:录入用户声纹信息并存储,后续每次ASR识别会带上用户的声纹特征,基于此特征可以识别用户身份 + +## 满足边界问题 + +和个人信息、记忆存在冲突:记录电话记录外卖地址 + +## 易混淆标签 + +个人信息记忆 + +## 划分原则 + +和声纹的记录需要给声纹,其他场景的记录给记忆或个人信息 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/系统控制和IOT设备控制/家庭传声.md b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/家庭传声.md new file mode 100644 index 0000000..646e060 --- /dev/null +++ b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/家庭传声.md @@ -0,0 +1,46 @@ +# 家庭传声 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:家庭传声 +- Agent 包装候选(不代表最终):Agent(tag="家庭传声") +- Function 输出候选:Query:对全家说生日快乐code:(未共识)满足:语义理解:明确是家庭传声需求通过米家成员信息接口获取家庭成员信息融合米家设备信息和小爱设备信息获取全部成员设备信息音频截取:根据ASR 提供的offest生成音频截取参数调用音频截取接口截取家庭传声语音消息内容provider(等同于skill)通过小爱长连接通道推送语音消息 +- 推荐输出形态:待确认。 + +## 功能抽象 + +家庭传声 + +## 适用范围 + +家庭传声功能描述:家庭成员利用小爱的语音通道实现消息传递。例如,在手机端对着小爱说“和家里的音箱说一下今晚不回去吃饭了”,此时家庭传声链路会截取用户query中“今晚不回去吃饭了”的音频,然后将其转发给家里的音箱进行播报家庭传声支持的设备:被传声设备支持音箱和电视,主要支持家庭场景家庭传声的case语义特征较为明显,通常会包含“对xx说”,或者家庭关键字参考文档:【小爱研发项目】家庭传声 + +## 典型 Query + +对全家说生日快乐对屋里人说今天外卖自己点对家庭讲下冰箱门开着 + +## 三级语义功能点 + +对全家说生日快乐(SendAction) + +## Function / Agent 说明 + +Query:对全家说生日快乐code:(未共识)满足:语义理解:明确是家庭传声需求通过米家成员信息接口获取家庭成员信息融合米家设备信息和小爱设备信息获取全部成员设备信息音频截取:根据ASR 提供的offest生成音频截取参数调用音频截取接口截取家庭传声语音消息内容provider(等同于skill)通过小爱长连接通道推送语音消息 + +## 满足边界问题 + +边界1:和闲聊场景可能存在冲突对小红说你好(小红是音箱)让小红说你好(小红是音箱)对音箱说你好(小红是音箱)告诉小明记得吃饭 + +## 易混淆标签 + +闲聊 + +## 划分原则 + +有歧义的都认为是闲聊,只有明确语义的是家庭传声query中明确包含家庭传声场景关键字的才给到家庭传声,例如:包含房间或房屋信息:向屋里传个声门没关包含家庭、家人等关键字:跟家里人说洗澡水好了 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/系统控制和IOT设备控制/相机.md b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/相机.md new file mode 100644 index 0000000..bc1ff91 --- /dev/null +++ b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/相机.md @@ -0,0 +1,46 @@ +# 相机 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:相机 +- Agent 包装候选(不代表最终):Agent(tag="相机") +- Function 输出候选:Query:打开相机倒计时code:(未共识)Query:打开相机code:(未共识)满足:调用系统级能力,打开相机或设置相机倒计时 +- 推荐输出形态:待确认。 + +## 功能抽象 + +相机 + +## 适用范围 + +操作客户端执行和相机相关的操作录视频或者拍照:例如“录视频”、“拍个照片”设置拍摄模式或拍摄参数:例如“关掉中心坐标”、“打开相机倒计时”需要客户端有拍摄能力才能执行相机操作,有拍摄能力的客户端包括手机、车载、眼镜 + +## 典型 Query + +设置照相机快捷键打开相机倒计时拍个照片打开相机关闭相机返回相机 + +## 三级语义功能点 + +相机相关的语义已迁移Agent,没有三级意图 + +## Function / Agent 说明 + +Query:打开相机倒计时code:(未共识)Query:打开相机code:(未共识)满足:调用系统级能力,打开相机或设置相机倒计时 + +## 满足边界问题 + +和相机相关的app边界存在冲突:打开黄油相机返回美图相机 + +## 易混淆标签 + +应用控制 + +## 划分原则 + +针对第三方相机,无法在系统层面进行控制。因此只有原生相机才给到“相机”tag,第三方相机的操作给应用控制 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/系统控制和IOT设备控制/系统定时控制.md b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/系统定时控制.md new file mode 100644 index 0000000..b8a0f90 --- /dev/null +++ b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/系统定时控制.md @@ -0,0 +1,46 @@ +# 系统定时控制 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:系统定时控制 +- Agent 包装候选(不代表最终):Agent(tag="系统定时控制") +- Function 输出候选:Query:五分钟后关机code:(未共识)满足:调用系统层接口传输“定时” or “延时”参数,需要系统层支持才能实现此功能 +- 推荐输出形态:待确认。 + +## 功能抽象 + +系统定时控制 + +## 适用范围 + +在系统控制的基础上增加时间相关的条件:定时控制:设定具体时间点,执行设备控制操作,例如“五点关机”延时控制:设定延时时间段,执行设备控制操作,例如“十分钟后关机” + +## 典型 Query + +十分钟后关机五点后关机五点后关闭音乐 + +## 三级语义功能点 + +五点后关闭音乐(ActivateAction)十分钟后关机(ShutdownAction) + +## Function / Agent 说明 + +Query:五分钟后关机code:(未共识)满足:调用系统层接口传输“定时” or “延时”参数,需要系统层支持才能实现此功能 + +## 满足边界问题 + +自动任务和设备定时控制 & 系统定时控制的冲突:(全部统一成:条件任务,基于该前提重新review function定义)条件统一定义,时间或操作条件执行的action包括:控制、提醒、autotaskquery五分钟后关空调五点关空调五点关机倒车时后视镜自动下翻自动任务和提醒的冲突:早上五点提醒我吃饭十分钟后提醒我吃药 + +## 易混淆标签 + +自动任务系统定时控制设备定时控制备忘录-提醒设备控制 + +## 划分原则 + +长线:全端都统一为自动任务的表示方式短线:适配区分支持自动化和不支持的场景(中控推进) + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/系统控制和IOT设备控制/系统控制.md b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/系统控制.md new file mode 100644 index 0000000..d45bfaa --- /dev/null +++ b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/系统控制.md @@ -0,0 +1,46 @@ +# 系统控制 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:系统控制 +- Agent 包装候选(不代表最终):Agent(tag="系统控制") +- Function 输出候选:Query:音量大一点code:(未共识)Query:打开蓝牙code:(未共识)满足:调用系统层面接口完成对应控制,并返回TTS +- 推荐输出形态:待确认。 + +## 功能抽象 + +系统控制 + +## 适用范围 + +通用系统层能力控制:小米设备系统层能力控制,此类系统层能力的特点是不区分端,各端能力通用。例如“音量”、“屏幕亮度”、“音色”等除车载端外其他端特有控制也属于系统控制例如:眼镜端,query = 镜片颜色调深一点例如:扫地机,query = 充电控制的操作包括:打开or关闭系统功能:关机、打开护眼模式设置功能属性:音量大一点、亮度调到百分之五十 + +## 典型 Query + +音量大一点音色设置为青葱眼镜颜色调深一点 + +## 三级语义功能点 + +关机(ShutdownAction)调整青葱音色(SwitchAction) + +## Function / Agent 说明 + +Query:音量大一点code:(未共识)Query:打开蓝牙code:(未共识)满足:调用系统层面接口完成对应控制,并返回TTS + +## 满足边界问题 + +边界1:系统控制和闲聊边界(TODO @苏会钰)q=再见,q=拜拜,认为是退出q=好了,再见吧q=睡觉了q=谢谢q=谢谢,拜拜q=休息吧部分设备端特有的控制功能可能和其他端存在冲突:镜片颜色调深一点眼镜端:tag = 系统控制手机端:tag = 相机这个内容帮我读一遍眼镜端:tag = 图片问答手机端:tag = 系统控制 + +## 易混淆标签 + +设备控制车载控制应用控制声纹相机控制设备查找闲聊 + +## 划分原则 + +控制类和端类型强相关,收音设备优先原则系统控制是偏向兜底控制的选择,其他类型的控制偏向白名单实现优先级高于系统控制。例如“声纹”、“相机控制”等功能本质也是调用当前设备系统层面的能力 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/系统控制和IOT设备控制/自动任务.md b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/自动任务.md new file mode 100644 index 0000000..76c1482 --- /dev/null +++ b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/自动任务.md @@ -0,0 +1,46 @@ +# 自动任务 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:自动任务 +- Agent 包装候选(不代表最终):Agent(tag="自动任务") +- Function 输出候选:Query:上车时打开空调和座椅加热code:(未共识)Query:主驾下车时提醒我拿手机code:(未共识)满足:planning模型输出对应的function code,拆分条件和要执行的动作其中ConditionParser函数中的query会请求条件理解大模型,条件理解大模型对条件进行二次理解Agent函数中的query会请求对应Agent获取语义理解结果结果满足阶段会调用脚本生成服务,基于条件理解大模型和Agent的语义理解结果,生成可以在客户端执行创建自动任务的脚本客户端执行对应脚本完成自动任务创建目前仅车载端支持此功能 +- 推荐输出形态:待确认。 + +## 功能抽象 + +自动任务 + +## 适用范围 + +触发某个条件后执行某个操作,目前存在两个场景:车载场景:触发条件:上下车、智驾开始、下雨、电量低执行操作:车控操作、导航、设置提醒示例query:“上车时打开空调”家庭场景:触发条件:温度/湿度 高于/低于某值,设备控制操作、设备状态、检测器检测结果执行操作:设备控制示例query:“每当关灯时关闭空调”、“每当卧室高于28度的时候打开电风扇”、“客厅有人移动时提醒我家里有人”参考文档:语音创建自动化方案 + +## 典型 Query + +上车时打开空调和座椅加热主驾下车时提醒我拿手机 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +Query:上车时打开空调和座椅加热code:(未共识)Query:主驾下车时提醒我拿手机code:(未共识)满足:planning模型输出对应的function code,拆分条件和要执行的动作其中ConditionParser函数中的query会请求条件理解大模型,条件理解大模型对条件进行二次理解Agent函数中的query会请求对应Agent获取语义理解结果结果满足阶段会调用脚本生成服务,基于条件理解大模型和Agent的语义理解结果,生成可以在客户端执行创建自动任务的脚本客户端执行对应脚本完成自动任务创建目前仅车载端支持此功能 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +如果query中的条件部分和定时或延时相关,且执行动作和设备控制、系统控制、提醒相关,则自动任务类别不召回。其他场景自动任务召回,自动任务需要召回的典型场景为:十分钟后导航去五彩城下车提醒我拿手机十分钟后关闭空调和座椅加热 + +## 未解决问题 + +自动化和系统定时控制、设备定时控制、备忘录之间的边界共识 diff --git a/skills/label-master/knowledge/标签/系统控制和IOT设备控制/设备定时控制.md b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/设备定时控制.md new file mode 100644 index 0000000..694ed08 --- /dev/null +++ b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/设备定时控制.md @@ -0,0 +1,46 @@ +# 设备定时控制 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:设备定时控制 +- Agent 包装候选(不代表最终):Agent(tag="设备定时控制") +- Function 输出候选:Query:二十秒后关灯code:(未共识)Query:晚上五点打开空调code:(未共识)满足:Skill阶段调用米家服务控制对应被控设备,并在当前设备上回复“已经操作了,要是没成功等下再试试”类的引导话术米家服务会调用对应设备,控制结果会通过异步push的方式再发给指令发起设备,通知控制结果 +- 推荐输出形态:待确认。 + +## 功能抽象 + +设备定时控制 + +## 适用范围 + +在设备控制的基础上增加时间相关的条件:定时控制:设定具体时间点,执行设备控制操作,例如“五点的时候打开空调”延时控制:设定延时时间段,执行设备控制操作,例如“十分钟后打开空调” + +## 典型 Query + +二十秒后关灯晚上五点打开空调 + +## 三级语义功能点 + +二十秒后关灯(TurnOffAction)晚上五点打开插座(TurnOnAction) + +## Function / Agent 说明 + +Query:二十秒后关灯code:(未共识)Query:晚上五点打开空调code:(未共识)满足:Skill阶段调用米家服务控制对应被控设备,并在当前设备上回复“已经操作了,要是没成功等下再试试”类的引导话术米家服务会调用对应设备,控制结果会通过异步push的方式再发给指令发起设备,通知控制结果 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/系统控制和IOT设备控制/设备控制.md b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/设备控制.md new file mode 100644 index 0000000..56ac238 --- /dev/null +++ b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/设备控制.md @@ -0,0 +1,46 @@ +# 设备控制 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:设备控制 +- Agent 包装候选(不代表最终):Agent(tag="设备控制") +- Function 输出候选:Query:关灯code:(未共识)Query:开空调code:(未共识)满足:Skill阶段调用米家服务控制对应被控设备,并在当前设备上回复“已经操作了,要是没成功等下再试试”类的引导话术米家服务会调用对应设备,控制结果会通过异步push的方式再发给指令发起设备,通知控制结果 +- 推荐输出形态:待确认。 + +## 功能抽象 + +设备控制 + +## 适用范围 + +通过语音控制IOT设备,IOT设备包含两种类型:主控设备:客户端安装小爱,具备语音交互能力,如:电视、扫地机被控设备:客户端没有安装小爱,不具备语音交互能力,如:空调、电饭煲、灯控制操作包括:打开关闭设备:例如“打开空调”、“关闭电视”设置设备属性:例如“洗衣机设置为烘干”、“空调二十六度”房间:对于有多个同类型设备的用户来说,可以通过房间槽位来区分不同设备,例如:“打开主卧空调”、“关闭次卧电视” + +## 典型 Query + +打开空调扫地机扫一下客厅打开电视 + +## 三级语义功能点 + +打开空调(TurnOnAction)扫地机扫一下客厅(ActivateAction)关闭电视(TurnOffAction) + +## Function / Agent 说明 + +Query:关灯code:(未共识)Query:开空调code:(未共识)满足:Skill阶段调用米家服务控制对应被控设备,并在当前设备上回复“已经操作了,要是没成功等下再试试”类的引导话术米家服务会调用对应设备,控制结果会通过异步push的方式再发给指令发起设备,通知控制结果 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/系统控制和IOT设备控制/设备查找.md b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/设备查找.md new file mode 100644 index 0000000..6159c8a --- /dev/null +++ b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/设备查找.md @@ -0,0 +1,46 @@ +# 设备查找 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:设备查找 +- Agent 包装候选(不代表最终):Agent(tag="设备查找") +- Function 输出候选:Query:查找我的手机code:(未共识)满足:skill调用查找手机服务,获取设备信息,发送响铃操作等,满足用户意图手机回复:我在这呢,看到我了吗,快来找我吧通过动画、闪光灯、震动、音效回应(仅手机支持)Query:查找我的手环code:(未共识)满足:跳转查找设备页面(除手机外其他设备跳转查找设备页面)Query:打开查找设备页面code:(未共识)满足:打开设备查找页面 +- 推荐输出形态:待确认。 + +## 功能抽象 + +设备查找 + +## 适用范围 + +设备查找功能描述:用户通过语音控制“小爱”来查找设备,此处包含两种情况:待查找设备可唤醒:例如用户找不到手机了,但是手机小爱可以唤醒。此时被唤醒的手机设备会通过声音、光效等方式提醒用户手机位置待查找设备不能唤醒:同样是查找手机,此时手机距离较远,用户无法直接唤醒手机,则可以通过唤醒音箱或电视设备来查找手机。同样会通过声音、光效等方式提醒用户手机位置可查找的设备:手机、平板、耳机。如果设备本身无法通过声音、光效等提醒用户位置(例如耳机),则会打开设备查找页面,告诉用户需要查找设备的位置信息除了直接查找设备,此类别也支持打开设备查找页面参考文档:findPhone功能迁移控制agent技术方案 + +## 典型 Query + +小爱你在哪找一下我的红米打开查找手机打开查找设备我的手环放哪了 + +## 三级语义功能点 + +我的手机在哪(ActivateAction)打开查找手机(OpenAction)我的 + +## Function / Agent 说明 + +Query:查找我的手机code:(未共识)满足:skill调用查找手机服务,获取设备信息,发送响铃操作等,满足用户意图手机回复:我在这呢,看到我了吗,快来找我吧通过动画、闪光灯、震动、音效回应(仅手机支持)Query:查找我的手环code:(未共识)满足:跳转查找设备页面(除手机外其他设备跳转查找设备页面)Query:打开查找设备页面code:(未共识)满足:打开设备查找页面 + +## 满足边界问题 + +边界1:是否支持非小米设备:设备查找只支持小米手机、平板、耳机、手环。不支持其他品牌设备或其他物品查找,如下case不属于设备查找:我的苹果手机在哪我的袜子在哪帮我记住我的ipad放书包里了,之后问我的Ipad放哪了 + +## 易混淆标签 + +记忆个人信息 + +## 划分原则 + +小爱你在哪——控制xxxx在哪——无法区分设备是否是小米的可以记忆统一处理非小米手机、平板、耳机、手环的查找请求不属于设备查找,属于个人信息(TODO) + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/系统控制和IOT设备控制/车载控制.md b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/车载控制.md new file mode 100644 index 0000000..87582cb --- /dev/null +++ b/skills/label-master/knowledge/标签/系统控制和IOT设备控制/车载控制.md @@ -0,0 +1,46 @@ +# 车载控制 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:车载控制 +- Agent 包装候选(不代表最终):Agent(tag="车载控制") +- Function 输出候选:Query:打开车窗code:(未共识)Query:关闭智驾code:(未共识)code:device定义示例:满足:车载端本地执行调用对应设备执行操作,并获取执行结果,基于执行结果生成对应TTS +- 推荐输出形态:待确认。 + +## 功能抽象 + +车载控制 + +## 适用范围 + +车载端设备控制功能:设备类型:可控制的设备约200种,包括空调、雨刮、前备箱、灯等音区:设备和车内音区可以关联,音区包括主驾、副驾、后排、前排等,如果query中不包含音区则默认使用ASR识别音区。query中包含音区的示例为“打开主驾空调”、“关闭副驾车窗”。不包含音区的示例为“打开车窗”、“关闭雨刮”控制的操作包括:打开or关闭设备:例如“打开空调”、打开主驾空调设置设备属性:例如“前备箱最大开度设置为百分之五十”车载端特有控制功能:车载特有功能:智驾、泊车、哨兵、用车习惯、音区、行车记录仪、各类车控功能页面控制的操作包括:打开or关闭功能或页面:打开自动泊车、打开儿童锁页面设置功能属性:充电阈值设置为百分之八十参考文档:全量词表车控全功能梳理 + +## 典型 Query + +打开空调打开座椅加热自动泊车 + +## 三级语义功能点 + +打开操作(ActivateAction)关闭操作CloseAction调整操作InformAction + +## Function / Agent 说明 + +Query:打开车窗code:(未共识)Query:关闭智驾code:(未共识)code:device定义示例:满足:车载端本地执行调用对应设备执行操作,并获取执行结果,基于执行结果生成对应TTS + +## 满足边界问题 + +(待讨论)边界1:车载设备和家庭设备区分车载既有设备属性又有房间属性,因此车载设备可能和家庭设备存在冲突,例如“空调”、“冰箱”、“灯”边界2:车载控制和自动任务(见下面自动任务)车载控制部分指令也存在条件,和自动任务语义存在冲突倒车时后视镜自动下翻需要明确定义出来到底哪些是车载控制,哪些是自动任务手机端等如果要接入自动任务存在相似问题边界3:车载端特有的控制功能,和其他端语义存在冲突 打开360——APP/车控——长线都是控制(只区分控制和IOT)打开监控——IOT/车控(device区分)驾驶模式——QA/车控(分端)以下问题同边界1:车载端特有的控制功能定义为“车载控制”,其他端特有的控制功能会定义成“xx控制”么(其他端暂不定义新的标签)如果把IOT设备拿到车上进行语控,是否属于车载控制(同边界1)对于主控设备的操作是否属于设备控制:(对手机说和对车说不一样,协同响应如何迁移planning模型?)打开车窗打开车辆座椅加热打开车辆方向盘加热打开电视电视播放小猪佩奇跟手机说——IOT电视跟电视说——主控设备跟车说——车载后排电视在当前设备上的系统级别控制请求,但是带设备关键字,是否属于设备控制:电视发起请求:query = 电视音量大一点电视发起请求:query = 电视亮一点手机控车、家控车不属于设备控制,任何控车场景都属于车载控制。例如手机或音箱端发起如下请求:打开车窗打开座椅加热打开方向盘加热主控设备(例如电视、音箱)只有支持spec协议的功能才支持IOT控制,其他不支持的功能需要走协同响应,但是两种场景query类别均属于“设备控制”。例如音箱控电视场景:走IOT控制的功能:打开电视走协同响应的功能:电视播放小猪佩奇在当前设备发起控制当前设备的指令属于系统控制,不属于设备控制:电视发起请求:query = 电视音量大一点音箱发起请求:query = 电视音量大一点 + +## 易混淆标签 + +系统控制设备控制应用控制自动任务车载设备状态查询QA + +## 划分原则 + +边界1:设备识别统一建模,对全部任意device统一定义,不区分车载还是iot场景,默认device是本机。在device正确的前提下,是否走IOT spec协议或协同响应等由skill或control agent自己判断。(TODO,中控设备决策做到什么程度,音箱端:打开摄像头)目前扫地机、洗衣机、冰箱是3个特例。边界2:条件任务,统一建模,全部按照自动任务的形式出function边界3:在车载端,车控优先 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/人物问答.md b/skills/label-master/knowledge/标签/通用问答/人物问答.md new file mode 100644 index 0000000..afab7a7 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/人物问答.md @@ -0,0 +1,46 @@ +# 人物问答 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:人物问答 +- Agent 包装候选(不代表最终):Agent(tag="人物问答") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +人物相关问答,询问名人(互联网可搜索)的信息等 + +## 典型 Query + +李溪芮是谁艾莎公主 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/体育赛事问答.md b/skills/label-master/knowledge/标签/通用问答/体育赛事问答.md new file mode 100644 index 0000000..3489d84 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/体育赛事问答.md @@ -0,0 +1,46 @@ +# 体育赛事问答 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:体育赛事问答 +- Agent 包装候选(不代表最终):Agent(tag="体育赛事问答") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +体育赛事播放--延伸QA运动赛事的相关问答,包括NBA、世锦赛、世界杯、奥运会等等的赛事问答 + +## 典型 Query + +巴萨有哪些球员二零零八年北京冬奥会 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/医疗问答.md b/skills/label-master/knowledge/标签/通用问答/医疗问答.md new file mode 100644 index 0000000..e876002 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/医疗问答.md @@ -0,0 +1,46 @@ +# 医疗问答 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:医疗问答 +- Agent 包装候选(不代表最终):Agent(tag="医疗问答") +- Function 输出候选:QA() +- 推荐输出形态:待确认。 + +## 功能抽象 + +通用问答 + +## 适用范围 + +医疗类相关问答,提供健康咨询、病症解答、治疗建议等相关信息 + +## 典型 Query + +感觉甲醛对身体有害应该去医院看什么科测血糖的正确方法眼睛忽然看不见东西了是什么原因 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +QA() + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +时间问答见tools的文档Label定义-工具类如果用户query的满足方式是通过生活服务app(类似美团、大众点评等)搜索附近商家、购买食品等,这种要给生活服务中的美食,但是用户query的满足方式是获取做饭方面的知识,这种给到QA处理优先其他问答垂域,如果其他问答垂域不召,给到QA明确时间节点的时间计算的问答给到时间,不明确的时间计算,例如属狗的今年几岁了,龙年出生的人今年多大了,这种由于无法获取到具体时间,所以不能给时间垂域进行计算,只能给到通用问答优先其他搜索垂域,如果其他问答垂域不召,给到QA + +## 未解决问题 + +范丞丞是什么星座?给人物华为创始人是谁给人物海底两万里的作者是谁暂时没共识虚拟人物共识后给人物 diff --git a/skills/label-master/knowledge/标签/通用问答/图片问答.md b/skills/label-master/knowledge/标签/通用问答/图片问答.md new file mode 100644 index 0000000..b6dbd64 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/图片问答.md @@ -0,0 +1,46 @@ +# 图片问答 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:图片问答 +- Agent 包装候选(不代表最终):Agent(tag="图片问答") +- Function 输出候选:VisionQA参数:imageSource:枚举类型direction:方位信息。大致为“前”、“后”、“左”、“右”、“左前”、“右前”、“左后”、“右后”、“附近”、“侧方”、“左上”、“右上”、“左下”、“右下”等object:业务加持信息。类别可枚举。Vehicle:车辆信息。包含三个可选参数:color (str): 车辆颜色brand (str): 车辆品牌,如小米、奔驰等type (str): 车辆类型,如救护车、军车等Text:阅读场景Food:食物场景Icon:图标/按钮场景Person:人物场景Animal:动物场景Plant:植物场景 +- 推荐输出形态:待确认。 + +## 功能抽象 + +图片通用问答 + +## 适用范围 + +使用VLM对图片内容进行理解并输出文字内容,所使用的信息源只有图片,没有其他方法调用或信息查询 + +## 典型 Query + +描述一下这张图这是什么车这是什么动物拍照看看我前面有什么 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +VisionQA参数:imageSource:枚举类型direction:方位信息。大致为“前”、“后”、“左”、“右”、“左前”、“右前”、“左后”、“右后”、“附近”、“侧方”、“左上”、“右上”、“左下”、“右下”等object:业务加持信息。类别可枚举。Vehicle:车辆信息。包含三个可选参数:color (str): 车辆颜色brand (str): 车辆品牌,如小米、奔驰等type (str): 车辆类型,如救护车、军车等Text:阅读场景Food:食物场景Icon:图标/按钮场景Person:人物场景Animal:动物场景Plant:植物场景 + +## 满足边界问题 + +【大原则】图片问答、拍照问答、屏幕问答、前车识别不做区分,未来都给VisionQA,图片来源通过imagesource来区分。备注:imagesource从qurey中提取,不会考虑设备类型。如果query中无法体现来源信息:屏幕、拍照、图片之一,则值为unknown,由下游skill满足侧决策。如果有精品垂域能满足,优先给能满足的精品垂域,否则给图片问答或者QA兜底。【和其他垂域的边界】地图问答和图片问答的边界:【方位指示代词】+【建筑、楼、poi】给地图问答,地图问答的实际满足能力分端,但是语义code层面不用分端,具体如下:车载、眼镜:地图问答有多模态能力,结合location、图片进行满足。对应意图标签:拍照问答。手机:地图问答没有多模态能力,结合location进行普通文本问答。QA和图片问答的边界:主要是模糊类query,不同端不一致,比如:q=比如我前边是什么东西?手机端:应该给QA兜底。因为【东西】非建筑等宏观物体,因此不给地图问答;手机没有view视野,因此没有前边的概念,不能给拍照问答。眼镜端:拍照问答,有实时视野画面,需要进行视觉理解。车载端:QA,歧义query,图片问答、地图问答都不接。记忆和图片问答的边界,记忆有多模态能力,优先给记忆精品垂域。举例:记一下这个卡路里。打电话和图片问答的边界,打电话有多模态能力,如果这个是指屏幕上的电话,优先给电话。举例:打给这个电话和文档总结的边界,文档总结有多模态能力,文档总结的多模态问答优先给文档总结和其他Agent,由于如下Agent没有多模态能力,因此按照原则由图片问答兜底,由于理解用户query需要视觉能力,因此图片问答优先级高于QA,包括如下,内容agent,举例:屏幕上这歌原唱是谁、播放这部电影WeatherQA,举例:照片中城市最近的天气lifeAgent,举例:图中景点门票多少钱、图中手机多少钱、帮我买屏幕上这款汽车controlAgent:安装这个app + +## 易混淆标签 + +地图问答 + +## 划分原则 + +图片问答所使用的信息源只有图片,没有其他方法调用或信息查询,如果使用了其他方法或信息源,给到其他具体垂域(待讨论)图片问答和翻译、文档总结、走哪问哪等边界问题 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/彩票.md b/skills/label-master/knowledge/标签/通用问答/彩票.md new file mode 100644 index 0000000..5c46813 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/彩票.md @@ -0,0 +1,46 @@ +# 彩票 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:彩票 +- Agent 包装候选(不代表最终):Agent(tag="彩票") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +彩票相关问答,关于彩票的相关query + +## 典型 Query + +二幺幺零八期双色球开奖结果最近一期的双色球昨天福彩双色球 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/搜索.md b/skills/label-master/knowledge/标签/通用问答/搜索.md new file mode 100644 index 0000000..79e8d99 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/搜索.md @@ -0,0 +1,46 @@ +# 搜索 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:搜索 +- Agent 包装候选(不代表最终):Agent(tag="搜索") +- Function 输出候选:QA() +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +搜索,通用性、基础性(其他垂域无法满足)的泛搜索意图当用户请求通用知识 / 网络搜索 / 百科条目 / 特定领域知识时进入本功能。包含:直接打开网站、调用搜索引擎、百科检索、各类兜底知识问答(人物、公司、动物、化学、节日、古诗词、影视、音乐、星座、翻译等)。 + +## 典型 Query + +“搜索一下牛顿是谁”“搜索水的化学式” + +## 三级语义功能点 + +query: 查询爱因斯坦的百科SearchAction[object@BaikeEntry](mailto:object@BaikeEntry)query: 搜索牛顿SearchAction + +## Function / Agent 说明 + +QA() + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +浏览器搜索含“百度/谷歌/搜一下”等 → 浏览器搜索(搜索引擎)。和各精品搜索之间的冲突:媒体资源类(音乐/电台/视频) 用户可能只是要“找”资源,但同时这些领域都有自己的播放类意图。“搜索/找/查” 且目标是歌曲、歌手、电台节目、视频 → 音乐搜索/电台搜索/视频搜索(落资源域的搜索子类,而不是通用搜索)。地图/生活相关搜索:带“地图搜/查找××地点/搜附近的××” → 落 地图|搜索。“搜附近餐厅/搜酒店/搜电影票” → 生活服务|搜索。图片搜索:“找/搜/图片/表情包/动图” → 图片产品/购物类的搜索:“搜小米品牌/型号/买/比价/同款” → 购物/产品推荐。在应用中搜索:在哔哩哔哩中搜索好看视频 搜索|哔哩哔哩 + +## 划分原则 + +百科型单个名词实体(人/地/物/书/组织) → 百科(BaikeEntry)。衍生问句型(是谁/是什么/哪里) → Qabot(人物、概念、地理等)。知识类 QA明确对应到兜底知识库(化学式、节日来历、歇后语、古诗词、翻译等) → Qabot。和其他域冲突时图片为主 → 图片搜索导航为主 → 地图导航明确创作意图(写/生成/作文) → 文本创作医疗、菜谱、汽车等有单独垂域时 → 垂域优先 + +## 未解决问题 + +3 diff --git a/skills/label-master/knowledge/标签/通用问答/星座.md b/skills/label-master/knowledge/标签/通用问答/星座.md new file mode 100644 index 0000000..f9d9a60 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/星座.md @@ -0,0 +1,46 @@ +# 星座 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:星座 +- Agent 包装候选(不代表最终):Agent(tag="星座") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +星座类相关问答,关于星座的日期、性格特点、相互配对、运势、排名等咨询和讨论 + +## 典型 Query + +六月二十一号是什么星座白羊座哪个星座男最顽固 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +六月二十一日是什么日子/节日 + +## 易混淆标签 + +时间 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/民俗.md b/skills/label-master/knowledge/标签/通用问答/民俗.md new file mode 100644 index 0000000..d788206 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/民俗.md @@ -0,0 +1,46 @@ +# 民俗 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:民俗 +- Agent 包装候选(不代表最终):Agent(tag="民俗") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +民俗相关问答,具体的包括:梦的解析;属相、生肖相关问答;节日节气习俗; + +## 典型 Query + +我是孕妇我昨天晚上梦见我抓鱼抓不到十二生肖里的第六个动物是什么动物属龙的今年几岁端午节应该做什么 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +2000年出生的今年是几岁 + +## 易混淆标签 + +时间 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/烹饪指南.md b/skills/label-master/knowledge/标签/通用问答/烹饪指南.md new file mode 100644 index 0000000..4bc01e8 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/烹饪指南.md @@ -0,0 +1,46 @@ +# 烹饪指南 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:烹饪指南 +- Agent 包装候选(不代表最终):Agent(tag="烹饪指南") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +菜谱/做饭类相关问答,提供各式菜肴制作方法,包括家常菜、快手菜、特色料理等 + +## 典型 Query + +蛋包饭怎么做烤五花肉多少度请提供一个家常的土豆烧鸡料理食谱 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +我附近有什么好吃的 + +## 易混淆标签 + +美食 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/百科.md b/skills/label-master/knowledge/标签/通用问答/百科.md new file mode 100644 index 0000000..eb58001 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/百科.md @@ -0,0 +1,46 @@ +# 百科 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:百科 +- Agent 包装候选(不代表最终):Agent(tag="百科") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +百科类相关问答,查询概念、知识点、文化含义及常见用语解释 + +## 典型 Query + +什么是巾帼小爱大王花是什么呀十根烤肠是什么梗 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/美食问答.md b/skills/label-master/knowledge/标签/通用问答/美食问答.md new file mode 100644 index 0000000..51f4997 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/美食问答.md @@ -0,0 +1,46 @@ +# 美食问答 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:美食问答 +- Agent 包装候选(不代表最终):Agent(tag="美食问答") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +美食问答生活服务--餐饮服务(找餐厅)--延伸的QA问题 + +## 典型 Query + +兰州拉面来源于哪里保定特色美食有什么鲁菜菜系有哪些名菜 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/股票查询.md b/skills/label-master/knowledge/标签/通用问答/股票查询.md new file mode 100644 index 0000000..5d24ea0 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/股票查询.md @@ -0,0 +1,46 @@ +# 股票查询 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:股票查询 +- Agent 包装候选(不代表最终):Agent(tag="股票查询") +- Function 输出候选:FinanceQA()参数:type:问题类型,如stock、goldprice等(不同的type,注入知识的三方数据接口可能不一样,精品展示的逻辑可能不一样)name:股票名称code:股票代码time:时间 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +股票查询,只包括具体股票(能够查到股票代码的)查询,没有股票推荐 + +## 典型 Query + +喜临门股票价格股票北矿科技原油期货黄金多少钱 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +FinanceQA()参数:type:问题类型,如stock、goldprice等(不同的type,注入知识的三方数据接口可能不一样,精品展示的逻辑可能不一样)name:股票名称code:股票代码time:时间 + +## 满足边界问题 + +推荐一只股票查询一下今年涨的最好的医疗股 + +## 易混淆标签 + +QA() + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/角色扮演.md b/skills/label-master/knowledge/标签/通用问答/角色扮演.md new file mode 100644 index 0000000..f79d0e4 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/角色扮演.md @@ -0,0 +1,46 @@ +# 角色扮演 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:角色扮演 +- Agent 包装候选(不代表最终):Agent(tag="角色扮演") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +角色扮演,用户要求扮演特定角色,进行互动或创作 + +## 典型 Query + +请你扮演我的老师,我需要获取最新的在线课程的激活码。你是一家科技公司的CEO,请分享一下你的领导力秘诀。假设你是一名未来社会的领袖,你将如何建立一个和谐繁荣的社会 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/词典.md b/skills/label-master/knowledge/标签/通用问答/词典.md new file mode 100644 index 0000000..fd42d57 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/词典.md @@ -0,0 +1,46 @@ +# 词典 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:词典 +- Agent 包装候选(不代表最终):Agent(tag="词典") +- Function 输出候选:Agent(tag="词典") +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +对文字的笔画、笔顺、部首、读音等信息的查询,主要用于学习文字符号的读法、写法以便辅助使用,主要包括:按照字体结构的描述查询单字拼音缺字补齐成语字体结构含有指定单字搜索新字字体结构含有指定部首搜索新字按照字体结构推荐多个单字搜索符合标签描述的词语查询字或词的拼音查询单字的笔顺查询指定单字的字体结构按照读音推荐多个同音字查询单字的部首查询单字的笔画数 + +## 典型 Query + +肯字怎么写那你知道二是咋写的吗 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +Agent(tag="词典") + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/负面反馈.md b/skills/label-master/knowledge/标签/通用问答/负面反馈.md new file mode 100644 index 0000000..1eb495e --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/负面反馈.md @@ -0,0 +1,46 @@ +# 负面反馈 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:负面反馈 +- Agent 包装候选(不代表最终):Agent(tag="负面反馈") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +情绪负反馈 + +## 典型 Query + +大傻逼 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/重说.md b/skills/label-master/knowledge/标签/通用问答/重说.md new file mode 100644 index 0000000..b6f6a16 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/重说.md @@ -0,0 +1,46 @@ +# 重说 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:重说 +- Agent 包装候选(不代表最终):Agent(tag="重说") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +重说,要求助手重复用户说过的具体话语或指令 + +## 典型 Query + +跟我学说话小爱对我说我爱你快叫爸爸 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +你刚才说什么 + +## 易混淆标签 + +系统控制 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/问答.md b/skills/label-master/knowledge/标签/通用问答/问答.md new file mode 100644 index 0000000..2d425b4 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/问答.md @@ -0,0 +1,46 @@ +# 问答 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:问答 +- Agent 包装候选(不代表最终):Agent(tag="问答") +- Function 输出候选:待确认。 +- 推荐输出形态:待确认。 + +## 功能抽象 + +待补充。 + +## 适用范围 + +问答,各类通用性、基础性(其他垂域无法满足)问题。属于泛知识问答 + +## 典型 Query + +长方体的表面积是什么人固有一死或重于泰山或轻于鸿毛是谁说的 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +待补充。 + +## 满足边界问题 + +优先其他问答垂域,如果其他问答垂域不召,给到QA + +## 易混淆标签 + +时间、数学、天气、内容问答、地图问答、电话、产品问答、生活服务 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签/通用问答/闲聊.md b/skills/label-master/knowledge/标签/通用问答/闲聊.md new file mode 100644 index 0000000..f72dda3 --- /dev/null +++ b/skills/label-master/knowledge/标签/通用问答/闲聊.md @@ -0,0 +1,46 @@ +# 闲聊 + +## 标注输出 + +> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。 + +- 旧 tag 标签:闲聊 +- Agent 包装候选(不代表最终):Agent(tag="闲聊") +- Function 输出候选:chat()参数:type:目前只有一种取值"wakeup"(代表唤醒词query),非必填 +- 推荐输出形态:待确认。 + +## 功能抽象 + +对话 + +## 适用范围 + +闲聊,泛聊天意图,通常闲聊兜底 + +## 典型 Query + +你认识老板娘吗以后我叫你叫畜生好不好真的期待 + +## 三级语义功能点 + +待补充。 + +## Function / Agent 说明 + +chat()参数:type:目前只有一种取值"wakeup"(代表唤醒词query),非必填 + +## 满足边界问题 + +待补充。 + +## 易混淆标签 + +待补充。 + +## 划分原则 + +待补充。 + +## 未解决问题 + +待补充。 diff --git a/skills/label-master/knowledge/标签总览.md b/skills/label-master/knowledge/标签总览.md new file mode 100644 index 0000000..4087cf5 --- /dev/null +++ b/skills/label-master/knowledge/标签总览.md @@ -0,0 +1,41 @@ +# 标签总览 + +本目录是中控标签知识库的长期维护入口。旧的 docx / xlsx 文件只作为迁移来源,后续标签知识以本目录下的 Markdown 为准。 + +## 使用方式 + +分析一个 query 应该进入哪个标签时,先按 `决策流程.md` 判断结构维度,再用 `索引/候选召回索引.md` 缩小候选范围,最后读取具体标签卡片和边界文件。 + +推荐流程: + +1. 读取 `决策流程.md`。 +2. 判断 query 是否涉及自动任务、多指令或 complex。 +3. 读取 `索引/候选召回索引.md`,判断 query 是导航、生活服务、问答、控制、媒体播放、应用搜索、AI 创作、产品问答还是工具类。 +4. 在 `标签/` 目录读取候选标签卡片。 +5. 如果两个标签都可能命中,优先读取 `边界/边界索引.md` 和 `边界/高频混淆/` 下的人工边界卡。 +6. 如果仍然不清楚,再读取 `边界/领域概览/` 的自动迁移概览。 +7. 如果需要判断输出形态,读取 `判断维度/标注输出形态.md` 和 `输出能力/`。 +8. 输出推荐标签、候选标签、依据、排除项、输出形态和不确定点。 + +## 领域索引 + +| 领域 | 说明 | 典型文件 | +| --- | --- | --- | +| 地图导航 | 导航、路线、地点问答、限行违章等地图相关能力 | `标签/地图导航/` | +| 生活服务 | 餐饮、酒旅、票务、到店生活服务等 | `标签/生活服务/` | +| 通用问答 | 百科、医疗、星座、烹饪、美食知识等问答 | `标签/通用问答/` | +| 系统与设备控制 | 车载控制、IoT 控制、系统设置、查设备等 | `标签/系统控制和IOT设备控制/` | +| 小米产品问答 | 小米产品、设备状态、车机/家居产品知识等 | `标签/小米产品问答/` | +| 内容和媒体播放 | 音乐、视频、电台、新闻、古诗、笑话等播放类能力 | `标签/内容和媒体播放/` | +| 应用控制和搜索 | 应用搜索、应用打开、浏览器搜索等 | `标签/应用控制和搜索/` | +| AI创作 | 文本、图片、视频、代码等创作类能力 | `标签/AI创作/` | +| 工具类 | 翻译、计算、日历、提醒、计时、查询等工具型能力 | `标签/工具类/` | + +## 重要原则 + +- 标签判断优先看用户真实意图,而不是关键词表面匹配。 +- 有明确动作诉求时,优先考虑能执行动作的垂域标签;只是知识咨询时,优先考虑问答类标签。 +- 多个标签同时可能命中时,要显式说明排除依据。 +- 标签维度和 complex 维度分开判断。 +- 输出格式维度和标签名分开判断。旧表中的 `tag标签` 不等于最终一定输出 `Agent(tag="...")`;如果任务要求训练/评测数据,必须确认使用 function program、intent 还是 Agent 包装。 +- 多指令和自动任务也是独立判断维度,不属于业务标签树。需要拆分 query 或抽取 condition 时,读取 `判断维度/多指令判断.md` 和 `判断维度/自动任务判断.md`。 diff --git a/skills/label-master/knowledge/标签迁移索引.md b/skills/label-master/knowledge/标签迁移索引.md new file mode 100644 index 0000000..3930f2c --- /dev/null +++ b/skills/label-master/knowledge/标签迁移索引.md @@ -0,0 +1,153 @@ +# 标签迁移索引 + +## AI创作 + +- [代码创作](标签/AI创作/代码创作.md) +- [作文](标签/AI创作/作文.md) +- [图像创作](标签/AI创作/图像创作.md) +- [图像编辑](标签/AI创作/图像编辑.md) +- [图片搜索(图片)](标签/AI创作/图片搜索-图片.md) +- [文本创作](标签/AI创作/文本创作.md) +- [视频创作](标签/AI创作/视频创作.md) + +## 内容和媒体播放 + +- [体育赛事播放](标签/内容和媒体播放/体育赛事播放.md) +- [体育赛事问答](标签/内容和媒体播放/体育赛事问答.md) +- [体育赛事预约](标签/内容和媒体播放/体育赛事预约.md) +- [古诗播放](标签/内容和媒体播放/古诗播放.md) +- [古诗词问答](标签/内容和媒体播放/古诗词问答.md) +- [听歌识曲](标签/内容和媒体播放/听歌识曲.md) +- [声音博物馆](标签/内容和媒体播放/声音博物馆.md) +- [媒体应用播放](标签/内容和媒体播放/媒体应用播放.md) +- [媒体资源切换(内容控制)](标签/内容和媒体播放/媒体资源切换(内容控制).md) +- [播放器控制(系统控制)](标签/内容和媒体播放/播放器控制(系统控制).md) +- [播放状态查询](标签/内容和媒体播放/播放状态查询.md) +- [新闻](标签/内容和媒体播放/新闻.md) +- [歌单](标签/内容和媒体播放/歌单.md) +- [电台播放](标签/内容和媒体播放/电台播放.md) +- [电台问答](标签/内容和媒体播放/电台问答.md) +- [电视频道](标签/内容和媒体播放/电视频道.md) +- [视频播放](标签/内容和媒体播放/视频播放.md) +- [视频问答](标签/内容和媒体播放/视频问答.md) +- [讲笑话](标签/内容和媒体播放/讲笑话.md) +- [音乐播放](标签/内容和媒体播放/音乐播放.md) +- [音乐问答](标签/内容和媒体播放/音乐问答.md) + +## 地图导航 + +- [地图导航](标签/地图导航/地图导航.md) +- [地图设置](标签/地图导航/地图设置.md) +- [地图问答](标签/地图导航/地图问答.md) +- [地址设置](标签/地图导航/地址设置.md) +- [走哪问哪](标签/地图导航/走哪问哪.md) +- [违章查询](标签/地图导航/违章查询.md) +- [限号查询](标签/地图导航/限号查询.md) + +## 小米产品问答 + +- [家用设备状态查询(IoT)](标签/小米产品问答/家用设备状态查询(IoT).md) +- [小爱帮助](标签/小米产品问答/小爱帮助.md) +- [小米产品帮助](标签/小米产品问答/小米产品帮助.md) +- [手车互联](标签/小米产品问答/手车互联.md) +- [系统状态查询](标签/小米产品问答/系统状态查询.md) +- [车载设备状态查询](标签/小米产品问答/车载设备状态查询.md) + +## 工具类 + +- [Kinship](标签/工具类/Kinship.md) +- [主动记忆](标签/工具类/主动记忆.md) +- [倒数日](标签/工具类/倒数日.md) +- [倒计时](标签/工具类/倒计时.md) +- [健康控制](标签/工具类/健康控制.md) +- [单位换算](标签/工具类/单位换算.md) +- [发短信](标签/工具类/发短信.md) +- [地震](标签/工具类/地震.md) +- [外语翻译](标签/工具类/外语翻译.md) +- [外语词典查询](标签/工具类/外语词典查询.md) +- [外语造句](标签/工具类/外语造句.md) +- [外语问答](标签/工具类/外语问答.md) +- [天气](标签/工具类/天气.md) +- [实数性质与计算](标签/工具类/实数性质与计算.md) +- [小学数学应用题](标签/工具类/小学数学应用题.md) +- [工资税收计算](标签/工具类/工资税收计算.md) +- [打电话](标签/工具类/打电话.md) +- [提醒](标签/工具类/提醒.md) +- [数学计算](标签/工具类/数学计算.md) +- [文档总结](标签/工具类/文档总结.md) +- [时间](标签/工具类/时间.md) +- [时间距离计算](标签/工具类/时间距离计算.md) +- [标准身高计算标准体重计算](标签/工具类/标准身高计算标准体重计算.md) +- [留言](标签/工具类/留言.md) +- [竖式计算](标签/工具类/竖式计算.md) +- [简单数学问题](标签/工具类/简单数学问题.md) +- [翻译功能操作](标签/工具类/翻译功能操作.md) +- [课程表](标签/工具类/课程表.md) +- [通讯录](标签/工具类/通讯录.md) +- [闹钟](标签/工具类/闹钟.md) + +## 应用控制和搜索 + +- [应用定时控制](标签/应用控制和搜索/应用定时控制.md) +- [应用控制](标签/应用控制和搜索/应用控制.md) +- [搜索|应用名(搜索|QQ音乐)](标签/应用控制和搜索/搜索-应用名-QQ音乐.md) +- [浏览器搜索](标签/应用控制和搜索/浏览器搜索.md) + +## 生活服务 + +- [交通购票](标签/生活服务/交通购票.md) +- [商品信息对比](标签/生活服务/商品信息对比.md) +- [商品推荐](标签/生活服务/商品推荐.md) +- [商品购买](标签/生活服务/商品购买.md) +- [商品购买|应用名](标签/生活服务/商品购买、应用名.md) +- [团购](标签/生活服务/团购.md) +- [外卖](标签/生活服务/外卖.md) +- [平台比价->商品比价](标签/生活服务/平台比价-、商品比价.md) +- [快递服务](标签/生活服务/快递服务.md) +- [打车](标签/生活服务/打车.md) +- [找同款](标签/生活服务/找同款.md) +- [旅游](标签/生活服务/旅游.md) +- [汽车服务](标签/生活服务/汽车服务.md) +- [生活服务](标签/生活服务/生活服务.md) +- [生活缴费](标签/生活服务/生活缴费.md) +- [电影票购买](标签/生活服务/电影票购买.md) +- [航班信息查询](标签/生活服务/航班信息查询.md) +- [话费流量服务](标签/生活服务/话费流量服务.md) +- [购物](标签/生活服务/购物.md) +- [酒店](标签/生活服务/酒店.md) +- [餐厅订座排号](标签/生活服务/餐厅订座排号.md) +- [餐饮服务](标签/生活服务/餐饮服务.md) + +## 系统控制和IOT设备控制 + +- [声纹](标签/系统控制和IOT设备控制/声纹.md) +- [家庭传声](标签/系统控制和IOT设备控制/家庭传声.md) +- [相机](标签/系统控制和IOT设备控制/相机.md) +- [系统定时控制](标签/系统控制和IOT设备控制/系统定时控制.md) +- [系统控制](标签/系统控制和IOT设备控制/系统控制.md) +- [自动任务](标签/系统控制和IOT设备控制/自动任务.md) +- [设备定时控制](标签/系统控制和IOT设备控制/设备定时控制.md) +- [设备控制](标签/系统控制和IOT设备控制/设备控制.md) +- [设备查找](标签/系统控制和IOT设备控制/设备查找.md) +- [车载控制](标签/系统控制和IOT设备控制/车载控制.md) + +## 通用问答 + +- [人物问答](标签/通用问答/人物问答.md) +- [体育赛事问答](标签/通用问答/体育赛事问答.md) +- [医疗问答](标签/通用问答/医疗问答.md) +- [图片问答](标签/通用问答/图片问答.md) +- [彩票](标签/通用问答/彩票.md) +- [搜索](标签/通用问答/搜索.md) +- [星座](标签/通用问答/星座.md) +- [民俗](标签/通用问答/民俗.md) +- [烹饪指南](标签/通用问答/烹饪指南.md) +- [百科](标签/通用问答/百科.md) +- [美食问答](标签/通用问答/美食问答.md) +- [股票查询](标签/通用问答/股票查询.md) +- [角色扮演](标签/通用问答/角色扮演.md) +- [词典](标签/通用问答/词典.md) +- [负面反馈](标签/通用问答/负面反馈.md) +- [重说](标签/通用问答/重说.md) +- [问答](标签/通用问答/问答.md) +- [闲聊](标签/通用问答/闲聊.md) diff --git a/skills/label-master/knowledge/索引/label_manifest.json b/skills/label-master/knowledge/索引/label_manifest.json new file mode 100644 index 0000000..f05c95d --- /dev/null +++ b/skills/label-master/knowledge/索引/label_manifest.json @@ -0,0 +1,2807 @@ +{ + "agent_tags": [ + "Kinship", + "主动记忆", + "主动记忆主动记忆的增、删、改功能", + "交通购票", + "人物问答", + "代码创作", + "体育赛事播放", + "体育赛事问答", + "体育赛事预约", + "作文", + "倒数日", + "倒数日倒数日的增、删、改、查、打开、关闭、继续、暂停等等超过24小时的倒计时为倒数日,由日程而非时钟App创建,倒计时只能支持创建24小时内的倒计时", + "倒计时", + "倒计时倒计时/秒表的增、删、改、查、打开、关闭、继续、暂停等等,倒计时和闹钟都在时钟App中倒计时只能支持创建24小时内的倒计时,超过24小时的倒计时为倒数日,由日程而非时钟App创建", + "健康控制", + "健康控制打开关闭某运动健康功能界面开始停止暂停继续某运动模式开始带目标的运动开始测量健康状况该功能所监控的健康信息有:卡路里步数中高强度运动有效站立活动次数睡眠心率血压血糖血氧饱和度体重压力听音女性健康", + "医疗问答", + "单位换算", + "发短信", + "古诗播放", + "古诗词问答", + "听歌识曲", + "商品信息对比", + "商品推荐", + "商品购买", + "商品购买|应用名", + "团购", + "图像创作", + "图像编辑", + "图片搜索(图片)", + "图片问答", + "地图导航", + "地图设置", + "地图问答", + "地址设置", + "地址设置b1fa3050279749969615eaacab3ff5e0", + "地震", + "声纹", + "声音博物馆", + "外卖", + "外语翻译", + "外语词典查询", + "外语造句", + "外语问答", + "天气", + "媒体应用播放", + "媒体资源切换(内容控制)", + "实数性质与计算", + "家庭传声", + "家用设备状态查询(IoT)", + "小学数学应用题", + "小爱帮助", + "小米产品帮助", + "工资税收计算", + "平台比价->商品比价", + "应用定时控制", + "应用控制", + "应该属于文本创作", + "彩票", + "快递服务", + "手车互联", + "打电话", + "打车", + "找同款", + "提醒", + "提醒提醒/日程的增、删、改、查、打开、关闭等等关于日期的提醒、记忆等统一给提醒接", + "搜索", + "搜索|应用名(搜索|QQ音乐)", + "播放器控制(系统控制)", + "播放状态查询", + "数学计算", + "文本创作", + "文档总结", + "文档总结关于文档、url的总结与内容问答,如果文档的文字以图片形式呈现,依然给到文档总结", + "新闻", + "旅游", + "时间", + "时间距离计算", + "星座", + "标准身高计算标准体重计算", + "歌单", + "民俗", + "汽车服务", + "浏览器搜索", + "烹饪指南", + "生活服务", + "生活缴费", + "电台播放", + "电台问答", + "电影票购买", + "电视频道", + "留言", + "百科", + "相机", + "竖式计算", + "简单数学问题", + "系统定时控制", + "系统控制", + "系统状态查询", + "美食问答", + "翻译功能操作", + "股票查询", + "自动任务", + "航班信息查询", + "视频创作", + "视频播放", + "视频问答", + "角色扮演", + "讲笑话", + "设备定时控制", + "设备控制", + "设备查找", + "词典", + "话费流量服务", + "课程表", + "负面反馈", + "购物", + "购物订单查询", + "走哪问哪", + "车载控制", + "车载设备状态查询", + "违章查询", + "通讯录", + "酒店", + "重说", + "问答", + "闲聊", + "闹钟", + "闹钟闹钟/小憩定时闹钟的增、删、改、查、打开、关闭,倒计时和闹钟都在时钟App中", + "限号查询", + "音乐播放", + "音乐问答", + "餐厅订座排号", + "餐饮服务" + ], + "boundaries": [ + { + "category": "root", + "name": "边界索引", + "path": "knowledge/边界/边界索引.md" + }, + { + "category": "领域概览", + "name": "AI创作边界", + "path": "knowledge/边界/领域概览/AI创作边界.md" + }, + { + "category": "领域概览", + "name": "内容和媒体播放边界", + "path": "knowledge/边界/领域概览/内容和媒体播放边界.md" + }, + { + "category": "领域概览", + "name": "地图导航边界", + "path": "knowledge/边界/领域概览/地图导航边界.md" + }, + { + "category": "领域概览", + "name": "小米产品问答边界", + "path": "knowledge/边界/领域概览/小米产品问答边界.md" + }, + { + "category": "领域概览", + "name": "工具类边界", + "path": "knowledge/边界/领域概览/工具类边界.md" + }, + { + "category": "领域概览", + "name": "应用控制和搜索边界", + "path": "knowledge/边界/领域概览/应用控制和搜索边界.md" + }, + { + "category": "领域概览", + "name": "生活服务边界", + "path": "knowledge/边界/领域概览/生活服务边界.md" + }, + { + "category": "领域概览", + "name": "系统控制和IOT设备控制边界", + "path": "knowledge/边界/领域概览/系统控制和IOT设备控制边界.md" + }, + { + "category": "领域概览", + "name": "通用问答边界", + "path": "knowledge/边界/领域概览/通用问答边界.md" + }, + { + "category": "高频混淆", + "name": "内容播放-播放器控制-播放状态", + "path": "knowledge/边界/高频混淆/内容播放-播放器控制-播放状态.md" + }, + { + "category": "高频混淆", + "name": "地图导航-餐饮服务", + "path": "knowledge/边界/高频混淆/地图导航-餐饮服务.md" + }, + { + "category": "高频混淆", + "name": "地图问答-餐饮服务-旅游", + "path": "knowledge/边界/高频混淆/地图问答-餐饮服务-旅游.md" + }, + { + "category": "高频混淆", + "name": "系统控制-设备控制-车载控制", + "path": "knowledge/边界/高频混淆/系统控制-设备控制-车载控制.md" + }, + { + "category": "高频混淆", + "name": "通用问答-文档总结-Summarize", + "path": "knowledge/边界/高频混淆/通用问答-文档总结-Summarize.md" + } + ], + "counts": { + "agent_tags": 134, + "functions": 12, + "intents": 82, + "labels": 125, + "objects": 13 + }, + "description": "标签大师的中控标签知识库机器索引;由 scripts/build_label_manifest.py 从 Markdown 生成。", + "dimensions": [ + { + "name": "复杂度判断", + "path": "knowledge/判断维度/复杂度判断.md" + }, + { + "name": "多指令判断", + "path": "knowledge/判断维度/多指令判断.md" + }, + { + "name": "标注输出形态", + "path": "knowledge/判断维度/标注输出形态.md" + }, + { + "name": "自动任务判断", + "path": "knowledge/判断维度/自动任务判断.md" + } + ], + "display_name": "标签大师", + "functions": [ + { + "allow_unknown_params": false, + "name": "CalendarQA", + "params": { + "location": { + "description": "Optional[str 或 Location] 目标地点,不填默认为用户所在位置", + "enum_values": [] + }, + "target_time": { + "description": "Optional[str] 时间槽位,不填默认为当前时间", + "enum_values": [] + }, + "type": { + "description": "枚举:TIME、DATE、MONTH、YEAR、LUNAR_DATE、WEEKDAY、FESTIVAL、SOLAR_TERM", + "enum_values": [ + "TIME", + "DATE", + "MONTH", + "YEAR", + "LUNAR_DATE", + "WEEKDAY", + "FESTIVAL", + "SOLAR_TERM" + ] + } + }, + "path": "knowledge/输出能力/函数目录.md", + "summary": "日历、当前日期、目前时间的查询,也包括指定地点时区查询,以及节日、节气、假期的时间查询。事件时间查询通常属于 `QA()`,例如“阅兵是什么时候”。" + }, + { + "allow_unknown_params": false, + "name": "TimeDistance", + "params": { + "end_time": { + "description": "结束时间,可为具体时间、相对时间、节日节气、PersonalDate", + "enum_values": [] + }, + "start_time": { + "description": "起始时间,可为具体时间、相对时间、节日节气、PersonalDate", + "enum_values": [] + }, + "type": { + "description": "枚举:DEFAULT、YEAR、MONTH、WEEK、DAY、HOUR、MINUTE、SECOND", + "enum_values": [ + "DEFAULT", + "YEAR", + "MONTH", + "WEEK", + "DAY", + "HOUR", + "MINUTE", + "SECOND" + ] + } + }, + "path": "knowledge/输出能力/函数目录.md", + "summary": "计算两个时间点的间隔;基于时间间隔推算未来或过去日期;基于某个时间点推算另一个时间点。" + }, + { + "allow_unknown_params": false, + "name": "TimeCalculate", + "params": {}, + "path": "knowledge/输出能力/函数目录.md", + "summary": "除 `TimeDistance` 之外的其他时间计算类问题。" + }, + { + "allow_unknown_params": false, + "name": "VisionQA", + "params": { + "direction": { + "description": "Optional[str] 方位信息,如前、后、左、右、左前、附近等", + "enum_values": [] + }, + "imageSource": { + "description": "枚举:DEFAULT、SCREEN、PHOTO、HISTORY_VISION、UNKNOWN", + "enum_values": [ + "DEFAULT", + "SCREEN", + "PHOTO", + "HISTORY_VISION", + "UNKNOWN" + ] + }, + "object": { + "description": "Optional[object] 业务加持对象,如 Vehicle、Food、Icon、Text 等", + "enum_values": [] + } + }, + "path": "knowledge/输出能力/函数目录.md", + "summary": "图片问答与指代问答。图片来源可以是屏幕、拍照、用户上传、历史视觉信息等。" + }, + { + "allow_unknown_params": false, + "name": "Generate", + "params": { + "object": { + "description": "枚举对象:Video、Image、Text", + "enum_values": [ + "Video", + "Image", + "Text" + ] + } + }, + "path": "knowledge/输出能力/函数目录.md", + "summary": "视频剪辑、文生图、图生图、文本生成等创作意图。" + }, + { + "allow_unknown_params": false, + "name": "ImageWebSearch", + "params": {}, + "path": "knowledge/输出能力/函数目录.md", + "summary": "搜索静态图片、动态图片、表情包、地图相关图片、手抄报图片、简笔画图片。" + }, + { + "allow_unknown_params": false, + "name": "WeatherQA", + "params": { + "Location": { + "description": "List[Location] 位置信息列表", + "enum_values": [] + }, + "time": { + "description": "List[str] 时间信息列表", + "enum_values": [] + } + }, + "path": "knowledge/输出能力/函数目录.md", + "summary": "近期天气情况问答,包括天气、温度、湿度、风力、日出日落、空气质量、穿衣指数、洗车指数等。" + }, + { + "allow_unknown_params": false, + "name": "EarthquakeQA", + "params": { + "Location": { + "description": "List[Location] 位置信息列表", + "enum_values": [] + }, + "time": { + "description": "List[str] 时间信息列表", + "enum_values": [] + } + }, + "path": "knowledge/输出能力/函数目录.md", + "summary": "地震信息查询。" + }, + { + "allow_unknown_params": false, + "name": "Summarize", + "params": { + "object": { + "description": "Optional[Resource] 待总结资源", + "enum_values": [] + } + }, + "path": "knowledge/输出能力/函数目录.md", + "summary": "文档、URL 的总结、分析与问答。如果文档文字以图片形式呈现,仍给文档总结。" + }, + { + "allow_unknown_params": false, + "name": "FinanceQA", + "params": { + "code": { + "description": "Optional[str] 股票代码", + "enum_values": [] + }, + "name": { + "description": "Optional[str] 股票名称", + "enum_values": [] + }, + "time": { + "description": "Optional[str] 时间", + "enum_values": [] + }, + "type": { + "description": "Optional[str] 股票、金价、期货、default", + "enum_values": [] + } + }, + "path": "knowledge/输出能力/函数目录.md", + "summary": "股票查询、期货查询、黄金价格查询、股票推荐、股票问答。" + }, + { + "allow_unknown_params": false, + "name": "Chat", + "params": { + "TTSMode": { + "description": "Optional[str] OPEN 或 CLOSE", + "enum_values": [] + }, + "TTSType": { + "description": "Optional[str] 特殊语气、风格、声音、音色", + "enum_values": [] + }, + "type": { + "description": "Optional[str] 当前包括 wakeup", + "enum_values": [] + } + }, + "path": "knowledge/输出能力/函数目录.md", + "summary": "外语聊天、闲聊、唤醒词、小爱拟人聊天、重复用户内容、特殊语气/音色说话。" + }, + { + "allow_unknown_params": false, + "name": "QA", + "params": { + "TTSType": { + "description": "Optional[str] 特殊语气、风格、声音、音色", + "enum_values": [] + }, + "type": { + "description": "Optional[str] 当前包括 law", + "enum_values": [] + } + }, + "path": "knowledge/输出能力/函数目录.md", + "summary": "通用知识问答和兜底问答,包括人物、医疗、彩票、搜索、百科、星座、民俗、烹饪、角色扮演、通用搜索、代码问答、数学定义、非近期天气、非小米产品知识、交通规则、单实体兜底、数字生成等。" + } + ], + "intents": [ + { + "agent": "aicreativeAgent", + "instruction_type": "指令操作", + "name": "图像编辑", + "path": "knowledge/输出能力/意图目录.md", + "scope": "图像/视频基础处理、风格转换、滤镜、水印、扩图、美颜等" + }, + { + "agent": "aicreativeAgent", + "instruction_type": "指令操作", + "name": "作文", + "path": "knowledge/输出能力/意图目录.md", + "scope": "作文搜索,query 中有“作文”模式" + }, + { + "agent": "contentAgent", + "instruction_type": "指令问答", + "name": "体育赛事问答", + "path": "knowledge/输出能力/意图目录.md", + "scope": "体育赛事赛程、比分、排名、历史数据" + }, + { + "agent": "contentAgent", + "instruction_type": "指令问答", + "name": "媒体资源问答", + "path": "knowledge/输出能力/意图目录.md", + "scope": "音乐、电影、电视剧、综艺、有声读物等资源信息" + }, + { + "agent": "contentAgent", + "instruction_type": "指令问答", + "name": "古诗词问答", + "path": "knowledge/输出能力/意图目录.md", + "scope": "古诗词作者、朝代、主题、意境等" + }, + { + "agent": "contentAgent", + "instruction_type": "指令问答", + "name": "词典", + "path": "knowledge/输出能力/意图目录.md", + "scope": "字词拼音、笔顺、部首、字义等" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "交通购票", + "path": "knowledge/输出能力/意图目录.md", + "scope": "火车票/车票查询购买、抢票时间、春运时间" + }, + { + "agent": "contentAgent", + "instruction_type": "指令操作", + "name": "体育赛事播放", + "path": "knowledge/输出能力/意图目录.md", + "scope": "体育赛事直播或回放" + }, + { + "agent": "contentAgent", + "instruction_type": "指令操作", + "name": "体育赛事预约", + "path": "knowledge/输出能力/意图目录.md", + "scope": "热门体育赛事预约或取消预约" + }, + { + "agent": "ToolsAgent", + "instruction_type": "指令操作", + "name": "信息记忆", + "path": "knowledge/输出能力/意图目录.md", + "scope": "记忆身份证、地址、物品位置、偏好等" + }, + { + "agent": "ToolsAgent", + "instruction_type": "指令操作", + "name": "健康控制", + "path": "knowledge/输出能力/意图目录.md", + "scope": "运动健康功能打开关闭、运动开始停止、测量" + }, + { + "agent": "ToolsAgent", + "instruction_type": "指令操作", + "name": "健康监控", + "path": "knowledge/输出能力/意图目录.md", + "scope": "查询记录的健康状态" + }, + { + "agent": "ToolsAgent", + "instruction_type": "指令操作", + "name": "发短信", + "path": "knowledge/输出能力/意图目录.md", + "scope": "发送短信" + }, + { + "agent": "contentAgent", + "instruction_type": "指令操作", + "name": "古诗词播放", + "path": "knowledge/输出能力/意图目录.md", + "scope": "播放、展示、背诵古诗词" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "商品购买", + "path": "knowledge/输出能力/意图目录.md", + "scope": "购买物品,不含车票、电影票、外卖等" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "团购", + "path": "knowledge/输出能力/意图目录.md", + "scope": "查找团购活动" + }, + { + "agent": "mapAgent", + "instruction_type": "指令操作", + "name": "地图导航", + "path": "knowledge/输出能力/意图目录.md", + "scope": "导航、路线、改目的地、改途经点等" + }, + { + "agent": "mapAgent", + "instruction_type": "指令操作", + "name": "地图控制", + "path": "knowledge/输出能力/意图目录.md", + "scope": "地图内部设置、导航打开关闭、缩放等" + }, + { + "agent": "mapAgent", + "instruction_type": "指令操作", + "name": "地图问答", + "path": "knowledge/输出能力/意图目录.md", + "scope": "POI、导航问答、当前路线相关问题" + }, + { + "agent": "mapAgent", + "instruction_type": "指令操作", + "name": "地址设置", + "path": "knowledge/输出能力/意图目录.md", + "scope": "设置、修改、删除家/公司/朋友地址" + }, + { + "agent": "productAgent", + "instruction_type": "指令操作", + "name": "声纹设置", + "path": "knowledge/输出能力/意图目录.md", + "scope": "声纹识别、录入、注册" + }, + { + "agent": "contentAgent", + "instruction_type": "指令操作", + "name": "声音博物馆", + "path": "knowledge/输出能力/意图目录.md", + "scope": "方言、自然环境声、非音乐声音内容" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "外卖", + "path": "knowledge/输出能力/意图目录.md", + "scope": "点外卖、外卖信息查询" + }, + { + "agent": "ToolsAgent", + "instruction_type": "指令问答", + "name": "外语翻译", + "path": "knowledge/输出能力/意图目录.md", + "scope": "不同语种互译、图片翻译、指代翻译" + }, + { + "agent": "ToolsAgent", + "instruction_type": "指令问答", + "name": "外语词典查询", + "path": "knowledge/输出能力/意图目录.md", + "scope": "外文单词拼写、读音、词性、近反义词" + }, + { + "agent": "ToolsAgent", + "instruction_type": "指令问答", + "name": "外语问答", + "path": "knowledge/输出能力/意图目录.md", + "scope": "外语语法、词汇用法、外语文本创作" + }, + { + "agent": "contentAgent", + "instruction_type": "指令操作", + "name": "媒体应用播放", + "path": "knowledge/输出能力/意图目录.md", + "scope": "调用第三方影音应用播放指定内容" + }, + { + "agent": "productAgent", + "instruction_type": "指令操作", + "name": "家庭传声", + "path": "knowledge/输出能力/意图目录.md", + "scope": "对家庭设备传声播报" + }, + { + "agent": "controlAgent", + "instruction_type": "指令操作", + "name": "家用设备状态查询", + "path": "knowledge/输出能力/意图目录.md", + "scope": "小米 IoT 智能家居状态查询" + }, + { + "agent": "productAgent", + "instruction_type": "指令操作", + "name": "小爱帮助", + "path": "knowledge/输出能力/意图目录.md", + "scope": "小爱功能问答" + }, + { + "agent": "productAgent", + "instruction_type": "指令操作", + "name": "小米产品帮助", + "path": "knowledge/输出能力/意图目录.md", + "scope": "小米产品信息、功能、故障、说明书问答" + }, + { + "agent": "controlAgent", + "instruction_type": "指令操作", + "name": "应用控制", + "path": "knowledge/输出能力/意图目录.md", + "scope": "App 打开关闭、页面操作、下载、语音视频通话等" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "快递服务", + "path": "knowledge/输出能力/意图目录.md", + "scope": "寄快递、发快递、本人快递查询" + }, + { + "agent": "productAgent", + "instruction_type": "指令操作", + "name": "手车互联", + "path": "knowledge/输出能力/意图目录.md", + "scope": "手机与车机投屏、CarPlay、故障排查" + }, + { + "agent": "ToolsAgent", + "instruction_type": "指令操作", + "name": "打电话", + "path": "knowledge/输出能力/意图目录.md", + "scope": "拨打、回拨、保存并拨打、挂断、接听" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "打车", + "path": "knowledge/输出能力/意图目录.md", + "scope": "第三方打车出行" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "找同款", + "path": "knowledge/输出能力/意图目录.md", + "scope": "查找同款商品" + }, + { + "agent": "ToolsAgent", + "instruction_type": "指令操作", + "name": "提醒", + "path": "knowledge/输出能力/意图目录.md", + "scope": "提醒、日程、倒数日管理" + }, + { + "agent": "contentAgent", + "instruction_type": "指令操作", + "name": "媒体资源切换", + "path": "knowledge/输出能力/意图目录.md", + "scope": "当前播放资源切换" + }, + { + "agent": "contentAgent", + "instruction_type": "指令操作", + "name": "播放器控制", + "path": "knowledge/输出能力/意图目录.md", + "scope": "快进、暂停、上一首、下一集等播放器操作" + }, + { + "agent": "contentAgent", + "instruction_type": "指令操作", + "name": "播放状态查询", + "path": "knowledge/输出能力/意图目录.md", + "scope": "当前播放歌曲、歌手、视频、电台信息" + }, + { + "agent": "contentAgent", + "instruction_type": "指令操作", + "name": "新闻", + "path": "knowledge/输出能力/意图目录.md", + "scope": "播放或查询新闻" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "旅游", + "path": "knowledge/输出能力/意图目录.md", + "scope": "景点推荐、门票、攻略、景点问答" + }, + { + "agent": "contentAgent", + "instruction_type": "指令操作", + "name": "歌单", + "path": "knowledge/输出能力/意图目录.md", + "scope": "音乐/电台歌单创建、收藏、播放" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "汽车服务", + "path": "knowledge/输出能力/意图目录.md", + "scope": "修车、洗车、保养、4S 店等" + }, + { + "agent": "productAgent", + "instruction_type": "指令操作", + "name": "浏览器搜索", + "path": "knowledge/输出能力/意图目录.md", + "scope": "指定浏览器或通用搜索引擎搜索" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "生活缴费", + "path": "knowledge/输出能力/意图目录.md", + "scope": "交电费、水费等" + }, + { + "agent": "contentAgent", + "instruction_type": "指令操作", + "name": "电台播放", + "path": "knowledge/输出能力/意图目录.md", + "scope": "播放播客、有声书、相声、评书、电台等" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "电影票购买", + "path": "knowledge/输出能力/意图目录.md", + "scope": "电影票购买、电影票信息查询" + }, + { + "agent": "contentAgent", + "instruction_type": "指令操作", + "name": "电视频道", + "path": "knowledge/输出能力/意图目录.md", + "scope": "打开、切换或查询电视频道" + }, + { + "agent": "ToolsAgent", + "instruction_type": "指令操作", + "name": "电话号码查询", + "path": "knowledge/输出能力/意图目录.md", + "scope": "联系人、电话号码、通话记录" + }, + { + "agent": "toolsAgent", + "instruction_type": "指令操作", + "name": "留言", + "path": "knowledge/输出能力/意图目录.md", + "scope": "小爱音箱语音留言创建、查看、编辑、删除" + }, + { + "agent": "controlAgent", + "instruction_type": "指令操作", + "name": "相机控制", + "path": "knowledge/输出能力/意图目录.md", + "scope": "拍照、录视频、相机设置、打开关闭相机" + }, + { + "agent": "ToolsAgent", + "instruction_type": "指令问答", + "name": "简单数学问题", + "path": "knowledge/输出能力/意图目录.md", + "scope": "计算、单位换算、关系称谓、税收、BMI 等" + }, + { + "agent": "controlAgent", + "instruction_type": "指令操作", + "name": "系统控制", + "path": "knowledge/输出能力/意图目录.md", + "scope": "系统层控制、车载控制、重复朗读、小憩模式等" + }, + { + "agent": "controlAgent", + "instruction_type": "指令操作", + "name": "系统状态查询", + "path": "knowledge/输出能力/意图目录.md", + "scope": "系统动态信息或设置项查询" + }, + { + "agent": "ToolsAgent", + "instruction_type": "指令操作", + "name": "翻译控制", + "path": "knowledge/输出能力/意图目录.md", + "scope": "翻译工具打开关闭、字幕字体调节等" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "航班信息查询", + "path": "knowledge/输出能力/意图目录.md", + "scope": "航班到达、延误、航站楼、起飞、机票查询购买" + }, + { + "agent": "contentAgent", + "instruction_type": "指令操作", + "name": "视频播放", + "path": "knowledge/输出能力/意图目录.md", + "scope": "播放视频内容" + }, + { + "agent": "contentAgent", + "instruction_type": "指令操作", + "name": "讲笑话", + "path": "knowledge/输出能力/意图目录.md", + "scope": "输出段子或幽默内容" + }, + { + "agent": "productAgent", + "instruction_type": "指令操作", + "name": "设备控制", + "path": "knowledge/输出能力/意图目录.md", + "scope": "IoT 设备控制" + }, + { + "agent": "productAgent", + "instruction_type": "指令操作", + "name": "设备查找", + "path": "knowledge/输出能力/意图目录.md", + "scope": "查找手机、平板、耳机、手环等设备" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "话费流量服务", + "path": "knowledge/输出能力/意图目录.md", + "scope": "充值话费、流量、查套餐/余额" + }, + { + "agent": "ToolsAgent", + "instruction_type": "指令操作", + "name": "课程表", + "path": "knowledge/输出能力/意图目录.md", + "scope": "课程查询、添加、启用关闭设置" + }, + { + "agent": "dialogAgent", + "instruction_type": "指令问答", + "name": "负面反馈", + "path": "knowledge/输出能力/意图目录.md", + "scope": "情绪负反馈、辱骂" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "购物订单查询", + "path": "knowledge/输出能力/意图目录.md", + "scope": "查询消费订单" + }, + { + "agent": "controlAgent", + "instruction_type": "指令操作", + "name": "车载设备状态查询", + "path": "knowledge/输出能力/意图目录.md", + "scope": "小米汽车特有设置项状态查询" + }, + { + "agent": "mapAgent", + "instruction_type": "指令操作", + "name": "违章查询", + "path": "knowledge/输出能力/意图目录.md", + "scope": "查询用户自己的违章情况" + }, + { + "agent": "ToolsAgent", + "instruction_type": "指令操作", + "name": "通讯录", + "path": "knowledge/输出能力/意图目录.md", + "scope": "同步通讯录、打开通话记录" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "酒店", + "path": "knowledge/输出能力/意图目录.md", + "scope": "订酒店、查找酒店、酒店问答" + }, + { + "agent": "ToolsAgent", + "instruction_type": "指令操作", + "name": "闹钟计时器", + "path": "knowledge/输出能力/意图目录.md", + "scope": "闹钟、倒计时、秒表、小憩模式定时" + }, + { + "agent": "mapAgent", + "instruction_type": "指令问答", + "name": "限行", + "path": "knowledge/输出能力/意图目录.md", + "scope": "限行、限号查询" + }, + { + "agent": "contentAgent", + "instruction_type": "指令操作", + "name": "音乐播放", + "path": "knowledge/输出能力/意图目录.md", + "scope": "播放音乐、听歌识曲、唱歌" + }, + { + "agent": "lifeAgent", + "instruction_type": "指令操作", + "name": "餐厅订座排号", + "path": "knowledge/输出能力/意图目录.md", + "scope": "餐厅订座、排号" + }, + { + "agent": "toolsAgent", + "instruction_type": "指令操作", + "name": "个人信息", + "path": "knowledge/输出能力/意图目录.md", + "scope": "个人信息表述但没有明确记忆" + }, + { + "agent": "controlAgent", + "instruction_type": "指令操作", + "name": "屏幕操作", + "path": "knowledge/输出能力/意图目录.md", + "scope": "对屏幕页面内容进行点击、滑动、复制等" + }, + { + "agent": "controlAgent", + "instruction_type": "指令操作", + "name": "应用窗口控制", + "path": "knowledge/输出能力/意图目录.md", + "scope": "应用窗口放大、缩小、全屏等" + }, + { + "agent": "productAgent", + "instruction_type": "指令问答", + "name": "汽车手册", + "path": "knowledge/输出能力/意图目录.md", + "scope": "汽车通用功能、配置、系统、说明书问答" + }, + { + "agent": "toolsAgent", + "instruction_type": "指令操作", + "name": "视频收藏", + "path": "knowledge/输出能力/意图目录.md", + "scope": "收藏当前视频或拍摄视频" + }, + { + "agent": "toolsAgent", + "instruction_type": "指令操作", + "name": "记忆查询", + "path": "knowledge/输出能力/意图目录.md", + "scope": "查询小爱中记住的个人信息" + }, + { + "agent": "controlAgent", + "instruction_type": "指令操作", + "name": "音色切换", + "path": "knowledge/输出能力/意图目录.md", + "scope": "小爱音色、语气切换" + }, + { + "agent": "dialogAgent", + "instruction_type": "指令问答", + "name": "nonsense", + "path": "knowledge/输出能力/意图目录.md", + "scope": "无意义、误录入或不可理解内容" + } + ], + "labels": [ + { + "agent_candidate": "Agent(tag=\"代码创作\")", + "confusing_labels": "QA", + "domain": "AI创作", + "examples": "用python写一个关于音频格式转化的代码", + "function_candidate": "Object = Code and Function = Create用python写一段快排的代码code:满足:@aicreative-agent 对于该语义构造 largemodelParamsllmSkill 收到对应 domain 派发给代码生成大模型", + "name": "代码创作", + "old_tag": "代码创作", + "path": "knowledge/标签/AI创作/代码创作.md", + "principles": "代码生成代码相关问答(研发/产品评估可以满足)长线计划:代码所有需求迁移到dialog agent", + "recommended_output_shape": "待确认。", + "scope": "生成代码代码问答" + }, + { + "agent_candidate": "Agent(tag=\"文本创作\")", + "confusing_labels": "待补充。", + "domain": "AI创作", + "examples": "待补充。", + "function_candidate": "待确认。", + "name": "作文", + "old_tag": "应该属于文本创作", + "path": "knowledge/标签/AI创作/作文.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "中小学作文" + }, + { + "agent_candidate": "Agent(tag=\"图像创作\")", + "confusing_labels": "图像编辑", + "domain": "AI创作", + "examples": "生成图片:秋天的早晨,在一片被秋林包围的草地上把图片换为冬天扩图两倍大小", + "function_candidate": "文生图:query:画一个钢铁侠code:满足:@aicreative-agent 对于该语义构造 largemodelParamsllmSkill 收到对应 domain 派发给生图大模型", + "name": "图像创作", + "old_tag": "图像创作", + "path": "knowledge/标签/AI创作/图像创作.md", + "principles": "文生图——图片创作风格转换——图像编辑扩图——图像编辑原则1:文字出图片是文生图,基于图片输入的修改都是图片编辑不是生成", + "recommended_output_shape": "待确认。", + "scope": "文生图图片风格转换扩图" + }, + { + "agent_candidate": "Agent(tag=\"图像编辑\")", + "confusing_labels": "相机图片创作", + "domain": "AI创作", + "examples": "将这张人像照片转换成卡通风格给这段视频添加 “温暖怀旧” 滤镜给这张图片加上今天日期的水印提高这张照片中红色的饱和度增强这张人像照片里橙色高光的强度把这张图片的颗粒感调到 50 数值将这张人像的磨皮强度设为 10%把这个人像脸型的胖瘦程度调整到 20%将这张照片中蓝色阴影的数值设为 20%开启 “超清人像” 功能优化这张图片", + "function_candidate": "Object = Image and (Function = Adjust or Add or Remove or Expand or Edit)...", + "name": "图像编辑", + "old_tag": "图像编辑", + "path": "knowledge/标签/AI创作/图像编辑.md", + "principles": "语义范围为:图片基础处理、色彩与光影调整、人像美化问题1:图像创作的风格转换--图片编辑的风格转换:图片编辑:修改RGB参数,修改色彩,亮度,某些图片中的特征值图片创作:1、全新生成一张图片2、根据已知图片,生成另一张图片(不是编辑图片的参数)问题2:图片编辑和相机设置项根据系统上下文判断在照相机界面——相机设置,控制类相册界面——图片编辑其他界面——图片编辑", + "recommended_output_shape": "待确认。", + "scope": "基础处理(图像 / 视频)风格转换:人像风格可转为卡通、虚拟形象、水墨画、漫画等。滤镜应用:支持自然、单色、黑红、温暖怀旧等滤镜,覆盖图像和视频。水印添加:包括普通水印、透明水印、防盗图水印、日期水印。色彩与光影调整饱和度:支持整体自然饱和度调节;可针对特定颜色(橙、红、蓝等)单独调整饱和度。高光 / 阴影:可针对特定颜色(橙、红、蓝等)调整高光或阴影的强度、数值。降噪与清晰度:支持明度降噪、色彩降噪;可调整清晰度(数值设定)。颗粒与晕影:添加颗粒感(数值控制);调整晕影强度(数值控制)。人像美化基础美颜:自动美颜、亮眼、匀肤、磨皮(支持开关及数值 / 百分比调节)。肤色调整:美白(百分比控制)、气色提升(百分比控制)。瑕疵修复:祛黑眼圈、祛斑祛痘、祛皱(支持开关及数值调节)。五官优化:眉毛:增强、粗细调节;眼睛:大小、眼距调节;鼻子:胖瘦、鼻尖、长短调节;嘴巴:大小、微笑嘴角调节。脸型调整:胖瘦、大小、宽度、V 脸效果;太阳穴、颧骨、发际线调节;蓬蓬发效果。画质提升:超清人像、超清处理。表情调整:支持表情优化(未指定具体类型,默认基础表情调节)。" + }, + { + "agent_candidate": "Agent(tag=\"图片搜索(图片)\")", + "confusing_labels": "APP搜索QA地图导航浏览器搜索", + "domain": "AI创作", + "examples": "奥特曼的图片搞笑的动态图搞笑的表情包中国地图来一个劳动节的手抄报猫的简笔画", + "function_candidate": "#query1:搜一下钢铁侠的图片、钢铁侠长什么样(歧义)code:满足:@aicreative-agent 对于该语义构造 图搜 params调用图搜 服务,获取图片手机通过非流式指令返回,车载通过流式指令返回#query2:搜一下蜡笔小新的海报code:满足:@aicreative-agent 对于该语义构造 图搜 params调用图搜 服务,获取图片手机通过非流式指令返回,车载通过流式指令返回#query3:搜一张奥特曼的动图code:满足:@aicreative-agent 对于该语义构造 图搜 params调用图搜 服务,获取图片手机通过非流式指令返回,车载通过流式指令返回", + "name": "图片搜索(图片)", + "old_tag": "图片搜索(图片)", + "path": "knowledge/标签/AI创作/图片搜索-图片.md", + "principles": "图片(静态/动态)、表情包、地图、手抄报、简笔画搜索原则1:xxx长什么样等——图片搜索怎么画xxx——出视频教程--QA", + "recommended_output_shape": "待确认。", + "scope": "搜索静态图片搜索动态图片搜索表情包搜索地图相关图片搜索手抄报图片搜索简笔画图片" + }, + { + "agent_candidate": "Agent(tag=\"文本创作\")", + "confusing_labels": "QA生活服务", + "domain": "AI创作", + "examples": "生成一个表格写一首春天的诗歌将不要轻信你自己的猜测这句话改得稍微婉转一些", + "function_candidate": "写一个都市剧剧本code:满足:@aicreative-agent 对于该语义构造 largemodelParamsllmSkill 收到对应 domain 派发给文本生成大模型", + "name": "文本创作", + "old_tag": "文本创作", + "path": "knowledge/标签/AI创作/文本创作.md", + "principles": "明确的创作或改写指令用户提供的主题、体裁、风格、格式要求等约束条件生成原创性、结构化文本内容长线计划:文本生成所有需求迁移到dialog agent短线:输入图片的走图片问答,其他未定义的文本生成先给文本创作,外语写作需求也是文本创作", + "recommended_output_shape": "待确认。", + "scope": "文生文(创作类)" + }, + { + "agent_candidate": "Agent(tag=\"视频创作\")", + "confusing_labels": "待补充。", + "domain": "AI创作", + "examples": "把我钓鱼的视频剪辑一下用生日派对照片智能成片帮我找去年的照片剪成一段视频帮我生成一个搞笑视频", + "function_candidate": "视频生成:code:满足:@暂不支持该功能视频剪辑/智能成片:剪辑视频泛意图:编辑素材泛意图:将素材剪辑成视频:导出视频", + "name": "视频创作", + "old_tag": "视频创作", + "path": "knowledge/标签/AI创作/视频创作.md", + "principles": "视频的剪辑和导出:剪辑视频泛意图、编辑素材泛意图、将素材剪辑成视频、导出视频视频生成:生成各类风格的视频,当前未支持", + "recommended_output_shape": "待确认。", + "scope": "剪辑视频泛意图编辑素材泛意图将素材剪辑成视频导出视频" + }, + { + "agent_candidate": "Agent(tag=\"体育赛事播放\")", + "confusing_labels": "待补充。", + "domain": "内容和媒体播放", + "examples": "播放今晚英超直播看昨天的 NBA 比赛回放打开奥运会开幕式重播", + "function_candidate": "Query: 播放英超直播", + "name": "体育赛事播放", + "old_tag": "体育赛事播放", + "path": "knowledge/标签/内容和媒体播放/体育赛事播放.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "播放体育赛事直播或回放(电视流或网络流)" + }, + { + "agent_candidate": "Agent(tag=\"体育赛事问答\")", + "confusing_labels": "QA", + "domain": "内容和媒体播放", + "examples": "待补充。", + "function_candidate": "Query: 湖人现在排名第几?", + "name": "体育赛事问答", + "old_tag": "体育赛事问答", + "path": "knowledge/标签/内容和媒体播放/体育赛事问答.md", + "principles": "查询体育赛程、比分、排名、历史数据等", + "recommended_output_shape": "待确认。", + "scope": "查询体育赛程、比分、排名、历史数据等" + }, + { + "agent_candidate": "Agent(tag=\"体育赛事预约\")", + "confusing_labels": "备忘录", + "domain": "内容和媒体播放", + "examples": "query:小爱同学,帮我预约最近的一场NBA比赛query:小爱同学,帮我取消欧冠和亚特拉大的比赛预约", + "function_candidate": "Query: 提醒我今晚 8 点看国足比赛", + "name": "体育赛事预约", + "old_tag": "体育赛事预约", + "path": "knowledge/标签/内容和媒体播放/体育赛事预约.md", + "principles": "如下query都给赛事预约我想取消比赛预约取消预约中超比赛我想取消预约山东泰山的比赛请帮我取消预约NBA比赛我想取消预约勇士队的比赛我想取消预约詹姆斯的比赛把我预约的乒乓球比赛取消之前预约了UFC比赛,帮我取消取消预约明晚辽宁队比赛取消预约后天的CBA比赛“帮我取消明天篮球比赛的预约。”“我要取消后天下午足球比赛的预约。”“请帮我取消本周日羽毛球赛事的预约。”“取消下周六乒乓球比赛的预约。”“帮我取消明晚电竞比赛的预约。”“我想取消本月 20 号网球比赛的预约。”“请帮我取消下周五田径比赛的预约。”“取消后天上午游泳比赛的预约。”“帮我取消之前预约的排球比赛。”“我要取消最近预约的射箭比赛。”", + "recommended_output_shape": "待确认。", + "scope": "用户在对热门、大型的体育赛事,进行赛前的比赛预约的需求用户在对热门、大型的体育赛事,进行赛前的比赛取消预约的需求" + }, + { + "agent_candidate": "Agent(tag=\"古诗播放\")", + "confusing_labels": "QA", + "domain": "内容和媒体播放", + "examples": "静夜思播放李白的诗背诵《春江花月夜》", + "function_candidate": "按诗歌名搜索#query1: 播放静夜思按诗句、诗人搜索#query2: 李白写的白发三千尺按题材推荐#query3: 播放唐朝的诗句 #query4: 形容天气的诗句 泛推荐 #query5: 背诵一首古诗结果满足:优先走精品卡,朗读对应古诗内容(精品卡底部有大模型回复链接可点击)如果无对应精品卡但存在TTS文本,走卡片展示和TTS生成如资源库无资源,采用大模型卡片兜底", + "name": "古诗播放", + "old_tag": "古诗播放", + "path": "knowledge/标签/内容和媒体播放/古诗播放.md", + "principles": "古诗词搜索检索相关,是出古诗,包括按照诗句、诗人、题材等搜索。如果是古诗词问答,给QA诗歌名:将进酒(古诗词播放--单实体)诗句定位:会当凌绝顶(古诗词播放/QA都可以)以诗人/朝代/体裁/标签筛选后播放:唐代边塞诗", + "recommended_output_shape": "待确认。", + "scope": "当用户要求播放/展示某首古诗词(通常包含:诗词正文、作者/朝代、名句、题材标签等,并可伴随朗读音频/赏析音频),且能用“诗名/诗句/诗人/类型/标签/朝代”等限定时,触发此功能。" + }, + { + "agent_candidate": "Agent(tag=\"古诗词问答\")", + "confusing_labels": "容易和古诗播放冲突容易和通用问答冲突", + "domain": "内容和媒体播放", + "examples": "白露为霜的诗名叫什么,床前明月光出自哪首诗死去元知万事空的元是什么意思", + "function_candidate": "#query1: 床前明月光出自哪首诗/遥想公瑾当年是谁写的/一夫当关万夫莫开的意思code:结果满足(同老垂域):全设备直接调用豆包大模型进行回复满足(prompt同通用QA,无需定制prompt优化)后续工作直接识别为通用QA函数即可", + "name": "古诗词问答", + "old_tag": "古诗词问答", + "path": "knowledge/标签/内容和媒体播放/古诗词问答.md", + "principles": "诗词类问答给QA诗词类音频点播给PlayPoem", + "recommended_output_shape": "待确认。", + "scope": "待补充。" + }, + { + "agent_candidate": "Agent(tag=\"听歌识曲\")", + "confusing_labels": "待补充。", + "domain": "内容和媒体播放", + "examples": "现在放的是什么歌(后台没有音乐播放)听歌识曲/识别一下这首歌", + "function_candidate": "#query: 现在放的是什么歌(后台没有音乐播放)#query: 听歌识曲/识别一下这首歌code:结果满足:手机: 走听歌识曲功能,调起小米音乐听歌识曲API进行识别车载及其他设备:直接出兜底不支持回复话术(或调用UIAgent对应能力)", + "name": "听歌识曲", + "old_tag": "听歌识曲", + "path": "knowledge/标签/内容和媒体播放/听歌识曲.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "听歌识曲,非本机播放内容的查询" + }, + { + "agent_candidate": "Agent(tag=\"声音博物馆\")", + "confusing_labels": "音乐播放", + "domain": "内容和媒体播放", + "examples": "播放老北京叫卖录音我想听海豚的声音打开昆曲片段", + "function_candidate": "Query: 播放老北京叫卖录音", + "name": "声音博物馆", + "old_tag": "声音博物馆", + "path": "knowledge/标签/内容和媒体播放/声音博物馆.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "播放非音乐类音频典藏:历史录音、方言样本、自然环境声等长期归档内容" + }, + { + "agent_candidate": "Agent(tag=\"媒体应用播放\")", + "confusing_labels": "待补充。", + "domain": "内容和媒体播放", + "examples": "用 Bilibili 播放《三体》动画在 Spotify 继续播放我的列表打开优酷看最新《奔跑吧》”", + "function_candidate": "Query: 用爱奇艺播放《狂飙》", + "name": "媒体应用播放", + "old_tag": "媒体应用播放", + "path": "knowledge/标签/内容和媒体播放/媒体应用播放.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "调用第三方影音应用并开始播放指定内容或继续上次播放,如“用爱奇艺播放《狂飙》”“在Spotify放周杰伦”。" + }, + { + "agent_candidate": "Agent(tag=\"媒体资源切换(内容控制)\")", + "confusing_labels": "待补充。", + "domain": "内容和媒体播放", + "examples": "换一首歌曲", + "function_candidate": "待确认。", + "name": "媒体资源切换(内容控制)", + "old_tag": "媒体资源切换(内容控制)", + "path": "knowledge/标签/内容和媒体播放/媒体资源切换(内容控制).md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "需要走搜索推荐策略的媒体播放需求" + }, + { + "agent_candidate": "Agent(tag=\"播放器控制(系统控制)\")", + "confusing_labels": "待补充。", + "domain": "内容和媒体播放", + "examples": "快进10秒钟跳到第十分钟下一首(多标签等同:媒体资源切换)上一集(多标签等同:媒体资源切换)", + "function_candidate": "Query: 下一首", + "name": "播放器控制(系统控制)", + "old_tag": "播放器控制(系统控制)", + "path": "knowledge/标签/内容和媒体播放/播放器控制(系统控制).md", + "principles": "需要重新走搜索推荐的,如换一个版本,给内容控制;完全不依赖搜索推荐,播放器控制直接满足的给系统控制", + "recommended_output_shape": "待确认。", + "scope": "不依赖搜索推荐的,媒体播放器操作类,输出系统控制的分支在同一媒体资源集合中切换条目:上一曲/下一曲、切换剧集、切换音轨等,如“下一首”“跳到第三集”。" + }, + { + "agent_candidate": "Agent(tag=\"播放状态查询\")", + "confusing_labels": "待补充。", + "domain": "内容和媒体播放", + "examples": "这首歌是谁唱的/介绍一下这个歌手现在放的是什么歌(后台有音乐播放)", + "function_candidate": "#query: 现在放的是什么歌(后台有音乐播放)code:结果满足:ContentAgentSkill通用注入当前音频播放信息及session信息调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表", + "name": "播放状态查询", + "old_tag": "播放状态查询", + "path": "knowledge/标签/内容和媒体播放/播放状态查询.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "当前播放歌曲/歌手/视频信息查询,本机播放内容的查询" + }, + { + "agent_candidate": "Agent(tag=\"新闻\")", + "confusing_labels": "音乐播放:播放xxxQA", + "domain": "内容和媒体播放", + "examples": "播放最新科技新闻给我五分钟财经新闻今天有哪些头条新闻?", + "function_candidate": "Query: 播放最新财经新闻", + "name": "新闻", + "old_tag": "新闻", + "path": "knowledge/标签/内容和媒体播放/新闻.md", + "principles": "播放或查询新闻内容:整点新闻、专题报道、实时头条等", + "recommended_output_shape": "待确认。", + "scope": "播放或查询新闻内容:整点新闻、专题报道、实时头条等" + }, + { + "agent_candidate": "Agent(tag=\"歌单\")", + "confusing_labels": "待补充。", + "domain": "内容和媒体播放", + "examples": "播放我的晨跑歌单把这首歌加到睡前歌单创建一个叫‘驾车’的新歌单”收藏这首歌", + "function_candidate": "Query: 播放我的晨跑歌单", + "name": "歌单", + "old_tag": "歌单", + "path": "knowledge/标签/内容和媒体播放/歌单.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "创建、管理或播放音乐歌单/播放列表,包括私人歌单和推荐歌单" + }, + { + "agent_candidate": "Agent(tag=\"电台播放\")", + "confusing_labels": "待补充。", + "domain": "内容和媒体播放", + "examples": "播放 FM 87.6来点中国之声听本地交通广播郭德纲的相声我要听斗破苍穹", + "function_candidate": "单实体(非明确播放意图)#query1: 默读、完美世界(非明确播放意图)#query2: 米小圈上学记(明确播放意图)满足方式:语义通过多轮session、知识库热度及用户反馈信息进行意图划分,针对单实体非明确播放意图下发内容问答富文本卡片(文本+有声资源列表)", + "name": "电台播放", + "old_tag": "电台播放", + "path": "knowledge/标签/内容和媒体播放/电台播放.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "当用户明确或隐含地要求播放“有声内容”(播客/有声书/相声/评书/脱口秀/新闻电台等),并可用“专辑名/单期名/作者或主播/角色/类型/标签”等进行限定时,触发“电台播放”。" + }, + { + "agent_candidate": "Agent(tag=\"电台问答\")", + "confusing_labels": "容易和电台播放冲突容易和通用问答冲突", + "domain": "内容和媒体播放", + "examples": "最近哪些小说最火/介绍一下这部小说现在放的是什么小说这个相声是谁讲的这本书有多少集/当前播放的是第几集/还有几集没播", + "function_candidate": "code:结果满足:ContentAgentSkill通用注入当前音频播放信息及session信息根据具体电台的cpResourceId反查当前集数等信息,合并电台内容基本信息(包括专辑名、声音名、主播)统一注入调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表", + "name": "电台问答", + "old_tag": "电台问答", + "path": "knowledge/标签/内容和媒体播放/电台问答.md", + "principles": "电台知识类问题给电台问答电台播放类问题给电台播放。", + "recommended_output_shape": "待确认。", + "scope": "待补充。" + }, + { + "agent_candidate": "Agent(tag=\"电视频道\")", + "confusing_labels": "控制agent", + "domain": "内容和媒体播放", + "examples": "切到 CCTV-5播放湖南卫视", + "function_candidate": "Query: 切到 CCTV-5", + "name": "电视频道", + "old_tag": "电视频道", + "path": "knowledge/标签/内容和媒体播放/电视频道.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "打开、切换或查询特定电视直播频道,例如涉及线性电视流而非点播内容。" + }, + { + "agent_candidate": "Agent(tag=\"视频播放\")", + "confusing_labels": "待补充。", + "domain": "内容和媒体播放", + "examples": "播放《流浪地球2》看一段猫咪搞笑视频播放最新 TED 演讲", + "function_candidate": "单实体(非明确播放意图)#query1: 公主、一九四二(非明确播放意图)#query2: 战狼2、陈情令(明确播放意图)满足方式:语义通过多轮session、知识库热度及用户反馈信息进行意图划分,针对单实体非明确播放意图下发内容问答富文本卡片(文本+视频列表) 模糊搜片 #query1: 贾玲那个励志减肥的电影 (模糊搜片)#query2: 贾玲的励志电影 (标签搜索)满足方式:语义基于产品定义,区分包含明显知识信息的特定视频检索类意图走模糊搜片,即调用大模型下发内容问答富文本卡片(文本+歌曲列表)", + "name": "视频播放", + "old_tag": "视频播放", + "path": "knowledge/标签/内容和媒体播放/视频播放.md", + "principles": "属于“视频播放”的请求(应触发):明示播放:“播放/放一下/我想看《流浪地球》” → name=流浪地球“放吴京演的《战狼》” → name=战狼,artist=吴京“看一下‘夏洛特’这个角色相关的电影” → character=夏洛特,type=电影通过人物/角色/标签/类型检索后播放:“放几个悬疑片看看” → tag=悬疑“播放王家卫的电影” → artist=王家卫,type=电影MV/演唱会录像等视频(非纯音频):“播放周杰伦《晴天》MV” → name=晴天,type=MV,artist=周杰伦原则1:单实体问题,走Redis,查词表,其他的走QA", + "recommended_output_shape": "待确认。", + "scope": "当用户明确或隐含地要求播放某个视频内容,并可用“片名/演员/导演/角色/类型/标签”等信息进行限定时,触发“视频播放”功能。 支持的内容形态以长短视频为主(电影、电视剧、综艺、纪录片、动画片、MV 等),与“音乐纯音频播放”区分。" + }, + { + "agent_candidate": "Agent(tag=\"视频问答\")", + "confusing_labels": "容易和视频播放冲突容易和通用问答冲突", + "domain": "内容和媒体播放", + "examples": "电影奥本海默得过多少奖/甄嬛传滴血认亲是哪一集/介绍一下第一个片子现在放的是什么片这个片谁演的/ 这个电影导演是谁这个片一共多少集/当前播放的是第几集/还有几集", + "function_candidate": "典型query类别1code:结果满足:ContentAgentSkill通用注入当前视频播放信息、列表页资源信息及session信息进行知识注入根据具体视频id反查资源对应导演、演员、集数等信息,合并各视频的基本信息(包括视频名称、类型、当前集数)统一注入调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表", + "name": "视频问答", + "old_tag": "视频问答", + "path": "knowledge/标签/内容和媒体播放/视频问答.md", + "principles": "视频知识问答类给视频问答视频点播类给视频播放20251111共识:1、query中带有影视作品名称或明显影视相关pattern的给内容问答;2、询问剧情细节的,或者剧情相关问题,给内容问答;3、动漫或影视作品中虚拟人物相关问题,给内容问答;", + "recommended_output_shape": "待确认。", + "scope": "待补充。" + }, + { + "agent_candidate": "Agent(tag=\"讲笑话\")", + "confusing_labels": "待补充。", + "domain": "内容和媒体播放", + "examples": "给我讲个冷笑话来段程序员的段子讲一个成人笑话", + "function_candidate": "Query: 给我讲个冷笑话", + "name": "讲笑话", + "old_tag": "讲笑话", + "path": "knowledge/标签/内容和媒体播放/讲笑话.md", + "principles": "输出段子或幽默内容,可指定类型或时长", + "recommended_output_shape": "待确认。", + "scope": "输出段子或幽默内容,可指定类型或时长" + }, + { + "agent_candidate": "Agent(tag=\"音乐播放\")", + "confusing_labels": "容易和音乐问答冲突", + "domain": "内容和媒体播放", + "examples": "来点轻音乐播放周杰伦的《晴天》放一些爵士乐", + "function_candidate": "单实体(非明确播放意图)#query1: 不必太在乎、天下的乌鸦一般黑 (非明确播放意图)#query2: 七里香、忘情水(明确播放意图)满足方式:语义通过多轮session、音乐知识库热度及用户反馈信息进行意图划分,针对单实体非明确播放意图下发内容问答富文本卡片(文本+歌曲列表) 模糊搜歌 #query1: 今年外国乐队在春晚上唱的英文歌 (模糊搜歌)#query2: 今年的英文歌 (标签搜索)满足方式:语义基于产品定义,区分包含明显知识信息的特定歌曲检索类意图走模糊搜歌,即调用大模型下发内容问答富文本卡片(文本+歌曲列表)", + "name": "音乐播放", + "old_tag": "音乐播放", + "path": "knowledge/标签/内容和媒体播放/音乐播放.md", + "principles": "明示播放:“播放《稻香》”“放朴树的《平凡之路》”通过人物/专辑/标签检索后播放:“放周杰伦的歌”“来点轻音乐助眠”“播放《三体》OST”", + "recommended_output_shape": "待确认。", + "scope": "当用户明确或隐含地要求播放某个音乐音频(歌曲/专辑/歌单/影视原声等),并可用“歌名/歌手/专辑/标签”等信息限定时,触发“音乐播放”。" + }, + { + "agent_candidate": "Agent(tag=\"音乐问答\")", + "confusing_labels": "QA音乐", + "domain": "内容和媒体播放", + "examples": "刘德华有哪些经典的歌这首歌是谁唱的/介绍一下这个歌手现在放的是什么歌(后台有音乐播放)现在放的是什么歌(后台没有音乐播放)听歌识曲/识别一下这首歌", + "function_candidate": "典型query类别1:code:结果满足:ContentAgentSkill通用注入当前音频播放信息及session信息调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表典型query类别2:code:结果满足:手机: 走听歌识曲功能,调起小米音乐听歌识曲API进行识别车载及其他设备:直接出兜底不支持回复话术(或调用UIAgent对应能力)", + "name": "音乐问答", + "old_tag": "音乐问答", + "path": "knowledge/标签/内容和媒体播放/音乐问答.md", + "principles": "音乐静态知识类问答给音乐问答,否则给音乐播放", + "recommended_output_shape": "待确认。", + "scope": "待补充。" + }, + { + "agent_candidate": "Agent(tag=\"地图导航\")", + "confusing_labels": "地图问答QA收藏和记忆生活服务", + "domain": "地图导航", + "examples": "导航去云冈石窟走免费道路(Navigation)走着走另外一条路线(SwitchRoute)不去小米科技园了改去公司附近的充电站(ModifyDestination)变更下下个途径点(ModifyPassPoint)金属钛的钛(PoiMultiRoundCorrect,POI改写相关)导航到简单的简上海的尚简尚羽毛球馆(PoiSelfCorrect,POI改写相关)导航路线刷新一下(RefreshRoute)寻找沿路的美食(SearchAlongRoute)搜索附近中石油(SearchPoi)怎么走到骑马俱乐部最近(SearchRoute)添加途经点大义镇(AddPassPoint)继续更新全国的离线地图(AdjustOfflineMap)还有没有其他路可以选(AskOtherRoute)收藏充电站要小米自营的(CollectPoi)删了所有途径点(DeletePassPoint)不是这个地址是西三旗桥南(ModifyDestination) 修改一下最下的途径点(ModifyPassPoint)", + "function_candidate": "待确认。", + "name": "地图导航", + "old_tag": "地图导航", + "path": "knowledge/标签/地图导航/地图导航.md", + "principles": "边界1:导航-地图问答-QA执行上:地图问答先给导航,导航不召回,给QA(走哪问哪拆出来给导航)短线现状:导航需求,A到B路线查询可以。公交地铁站点查询等都不支持。问题:多轮下针对现有路线提问,很容易出现此类问题长线:原则1:依赖导航app接口查询结果的是地图问答,路线、公交地铁站等,现有接口不支持,走大模型兜底,而不是回复不支持产品问题@张睿@李循边界2:“在哪”,“去xxx”优先给导航,其他都是生活服务优先长线,计划“在哪”不区分导航和生活服务,统一满足边界3:单实体,默认QA,如果是导航需求则给导航和QA都算对。选项1:出富媒体卡片:百科+旅游+导航选项2:询问是否要去哪里单实体难以分端区分,应该在车载端满足时,单实体走poi搜索,有结果出一个导航的卡片。中控不做区分。各端的导航和生活服务单实体,都给导航优先,且QA满足应该调用搜索后出导航或生活类卡片。", + "recommended_output_shape": "待确认。", + "scope": "基于高德地图/百度地图等,进行导航需求满足特殊的需求:附近的加油站附近的充电桩附近的服务区" + }, + { + "agent_candidate": "Agent(tag=\"地图设置\")", + "confusing_labels": "系统控制", + "domain": "地图导航", + "examples": "导航播报设置为简洁打开2D常规导航(Adjust)设置车牌号(SetPlateNumber) 满足:车载端没有,手机端跳转APP", + "function_candidate": "待确认。", + "name": "地图设置", + "old_tag": "地图设置", + "path": "knowledge/标签/地图导航/地图设置.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "地图内部相关设置,非通用app设置" + }, + { + "agent_candidate": "Agent(tag=\"地图问答\")", + "confusing_labels": "车载设备状态查询", + "domain": "地图导航", + "examples": "襄阳古城位于我们的西边吗(AnswerDirection)途径哪些城市呢(AnswerPassPoi) 能否预测还要堵多久(AnswerTrafficJam)查询当前北五环限速(AnswerSpeedLimit) 我现在在上海吗(AnswerPoiInfo)到目的地还要多少电(AnswerBattery)高速路上开车预计多远(AnswerDistance)这里到目的地要多少高速费(AnswerHighwayToll)查看设置的导航偏好选项(AnswerMode)前面怎么走比较好(AnswerRoute)我还有多久才能上高速(AnswerTimeCost)给我说一说富源南路附近的路况(AnswerTrafficCondition)五幺六路什么时候到小米科技园(AnswerTransport)", + "function_candidate": "1.AnswerTrafficJam()查询拥堵2.SearchRoute查询路线3.AnswerTransport查询交通相关信息4.AnswerSpeedLimit查询限速5.AnswerTimeCost查询到达时间查询两点之间耗时6.AnswerDistance查询距离-路线中查询距离-指定起始终止点AnswerPoiInfo查询目的地查询途经点查询当前位置查询当前道路AnswerPassPoi查询沿途服务区数量查询红绿灯查询沿途城市AnswerDirection方位查询SearchPoipoi查询", + "name": "地图问答", + "old_tag": "地图问答", + "path": "knowledge/标签/地图导航/地图问答.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "与poi相关的问答查询、导航问答查询" + }, + { + "agent_candidate": "Agent(tag=\"地址设置\")", + "confusing_labels": "结构记忆", + "domain": "地图导航", + "examples": "小爱小爱设置我家的地址在金茂悦龙山(SetMapAddress)设置网鱼网咖为王小华的秘密基地(SetMapAddress)删了一下家的地址(DeleteMapAddress)", + "function_candidate": "待确认。", + "name": "地址设置", + "old_tag": "地址设置b1fa3050279749969615eaacab3ff5e0", + "path": "knowledge/标签/地图导航/地址设置.md", + "principles": "原则1:地址增删改功能【TODO @乔国辉】车载端-导航其他端-工具", + "recommended_output_shape": "待确认。", + "scope": "设置地图中的特有的地址,如家、公司、朋友地址" + }, + { + "agent_candidate": "Agent(tag=\"走哪问哪\")", + "confusing_labels": "AnswerGoAskAnswerKnowledgeSearch图片问答屏幕问答照片问答", + "domain": "地图导航", + "examples": "周围那条河你知道它的名字是什么吗(AnswerGoAsk)这个地区有没有保护森林的自然保护区(AnswerKnowledgeSearch)", + "function_candidate": "AnswerGoAsk走哪问哪AnswerKnowledgeSearch走问qa", + "name": "走哪问哪", + "old_tag": "走哪问哪", + "path": "knowledge/标签/地图导航/走哪问哪.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "车载特有功能,基于当前POI问附近的POI信息手机端满足:高德搜索poi(比如“山”),可能获得列表最终选中的poi名称+prompt + query注入外部大模型满足车载端满足:1.高德搜索poi(比如“山”),可能获得列表2.根据方向进行过滤(如果有提到方向)最终选中的poi名称+prompt + query注入外部大模型满足" + }, + { + "agent_candidate": "Agent(tag=\"违章查询\")", + "confusing_labels": "待补充。", + "domain": "地图导航", + "examples": "违章查询:我有没有违章今天有没有违法变线(SearchTrafficViolation", + "function_candidate": "AnswerRestrictRegion指定区域查询限行AnswerRestrictOuter指定区域查询外地车牌限行AnswerRestrictInfo限行信息查询", + "name": "违章查询", + "old_tag": "违章查询", + "path": "knowledge/标签/地图导航/违章查询.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "违章查询:只有查询。如果是交通规则问答,以及什么算违章等问答,都是通用问答。" + }, + { + "agent_candidate": "Agent(tag=\"限号查询\")", + "confusing_labels": "违章问答限号问答交通规则问答", + "domain": "地图导航", + "examples": "限号天津大大大的前天汽车限行尾号是多少(查询类)(AnswerRestrictInfo)", + "function_candidate": "AnswerDeduction查询城市限行扣分规则", + "name": "限号查询", + "old_tag": "限号查询", + "path": "knowledge/标签/地图导航/限号查询.md", + "principles": "原则1:查询和问答全部给导航(方案1:查询和问答,区分开查询是searchXXX或者queryXXX问答是answerXXX,但是统一给QA方案2:不区分问答和查询,全部算问答类,统一给地图导航)", + "recommended_output_shape": "待确认。", + "scope": "限行、限号查询,只有查询" + }, + { + "agent_candidate": "Agent(tag=\"家用设备状态查询(IoT)\")", + "confusing_labels": "待补充。", + "domain": "小米产品问答", + "examples": "主卧现在多少温度室内温度几度", + "function_candidate": "待确认。", + "name": "家用设备状态查询(IoT)", + "old_tag": "家用设备状态查询(IoT)", + "path": "knowledge/标签/小米产品问答/家用设备状态查询(IoT).md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "针对小米IoT特有的,区别与其他小米场景的设置项查询,限定在智能家居范围。只有在家用场景,有屏音箱或手机端等,给小米产品问答,在其他端是QA(),通用问答会根据知识回答其他非小米产品或通用车载功能的问题。" + }, + { + "agent_candidate": "Agent(tag=\"小爱帮助\")", + "confusing_labels": "待补充。", + "domain": "小米产品问答", + "examples": "你会干什么你会调屏幕吗?", + "function_candidate": "待确认。", + "name": "小爱帮助", + "old_tag": "小爱帮助", + "path": "knowledge/标签/小米产品问答/小爱帮助.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "小爱同学系统内部功能问答" + }, + { + "agent_candidate": "Agent(tag=\"小米产品帮助\")", + "confusing_labels": "系统状态查询车载设备状态查询家用设备状态查询小米产品问答购物类控制IOT类QA", + "domain": "小米产品问答", + "examples": "HyperOS是什么?miui十五更新了什么内容小米手机都有什么颜色?小米手机屏幕有多大?小米手机如何使用NFC?小米手机如何连接网络?(车载端)HUD高度有几挡(手机端)WIFI在哪儿设置小米手机可以和小米电视投屏吗(车载端)什么是哨兵模式", + "function_candidate": "参数:goods:产品名关键词,例:小米十三、SU7brand: 产品品牌,比如: \"小米,华为\"attribute: 产品参数属性, 比如: \"像素,续航\"deviceType:用户查询的设备场景,例:车载、眼镜、通用、unknownrefer: 用户query中的指代, 例: 小爱,本机type: 查询中的问法类型, 例: 开关、状态、故障查询小米产品的静态信息Query: 这辆车百公里加速多少code:Query: 小米十五多少钱code:满足:手机端 & 眼镜端 & 车载:基于用户query检索静态知识库检索的知识给到llmSKill,调用大模型回复查询TT灯 (屏幕问答承接,走屏幕问答理想态code定义,这里不做定义)Query: 屏幕上红色的灯是什么 查询小爱的功能Query: 你会打游戏吗code:车载端 & 手机端 & 眼镜端:不同端结合端侧设备,检索对应知识,注入prompt,走大模型生成设置项查询:Query: 雨刮器在哪里调节code:满足:车载端:基于设置项槽位,结合实车context设置项锚点跳转集合,如果支持则直接锚点跳转;如果不支持则检索RAG知识,走大模型回复手机端:基于设置项槽位,结合ddf action能力集合;如果支持则直接展示action精品卡;如果不支持,则检索RAG知识库,走大模型回复", + "name": "小米产品帮助", + "old_tag": "小米产品帮助", + "path": "knowledge/标签/小米产品问答/小米产品帮助.md", + "principles": "详见:小米产品问答边界问题1、如何界定什么是“小米”产品,以及如何界定什么功能是小米产品功能1、用户明确提到“小米”相关或指代消解后知道是小米产品,给到productQA2、小米+其他品牌对比,认为是购物类需求,给LifeAgent,其他品牌之间对比给QA3、结合场景给知识,不同端给不同agent例如“水杯应该放哪”,车载给productAgent,手机给QA2、购买类需求,包括购物信息对比、购物比价,全部给生活服务agent。如果query中出现app名字的,给app控制兜底。3、可执行类的控制相关问答优先给产品,媒体播放类询问题待定(待讨论)边界问题1:可执行action和产品问答边界:直接执行出引导+卡片小米产品问答能否帮我【控制指令】能否帮我【播放媒体资源指令】能否帮我【某可执行指令】你能【控制指令】吗你能【播放媒体资源指令】吗你能【某可执行指令】吗你会不会【控制指令】你会不会【播放媒体资源指令】你会不会【某可执行指令】1、产品和通用问答边界问题:1.1 网易云音乐为什么打不开:因为默认用户在问小米手机系统,或小米车载系统,所以是产品问答1.2 洗衣机、空调为什么坏了:因为产品agent新增支持IOT类问题问答,产品agent会区分用户是否有小米空调或小米洗衣机,因此满足上都给产品agent,也属于产品问答 2、可执行指令和产品问答边界问题:@李彦婵 拉产品老师统一梳理类似需求,给出统一解决方案并发起技术评审,有结论之前,中控线上维持现状", + "recommended_output_shape": "待确认。", + "scope": "小米产品信息小米相关的关键词举例:小米、redme、红米、su7,yu7,澎湃,hyperOS, 玄戒小爱/小米系统静态信息查询小米产品相关信息查询小米产品属性信息小米产品功能信息小米产品使用说明:需要参考小米产品说明书来回答的问题(其他如商业信息等不在范围内,属于QA)" + }, + { + "agent_candidate": "Agent(tag=\"手车互联\")", + "confusing_labels": "待补充。", + "domain": "小米产品问答", + "examples": "OPPO手机怎么投屏车机iPhone投屏失败怎么解决iPhone无线CarPlay怎么连vivo手机如何进入投屏到汽车", + "function_candidate": "待确认。", + "name": "手车互联", + "old_tag": "手车互联", + "path": "knowledge/标签/小米产品问答/手车互联.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "待补充。" + }, + { + "agent_candidate": "Agent(tag=\"系统状态查询\")", + "confusing_labels": "系统状态查询车载设备状态查询家用设备状态查询小米产品问答QA", + "domain": "小米产品问答", + "examples": "你现在还有多少电当前音量是多少", + "function_candidate": "deviceType:用户查询的设备场景,例:车载、眼镜、通用、unknownQuery: 这辆车还有多少点电code:满足:车载端:会同时检索RAG知识库,同时发起event请求获取实车动态信号检索的知识和动态车机信号整合给到llmSkill,调用大模型回复手机端:检索RAG知识库 + action获取手机状态,通过push上报实时状态整合动静态信息,调用大模型回复动态信号精品卡Query: 静音模式开了吗code:满足:车载端:状态类查询根据attr槽位是否命中精品信号白名单,直接跳转精品卡手机端:状态类查询根据attr槽位对应的知识库中配置的信号类型是否是一步直达信号,直接跳转精品卡", + "name": "系统状态查询", + "old_tag": "系统状态查询", + "path": "knowledge/标签/小米产品问答/系统状态查询.md", + "principles": "1、静态状态是硬件或系统属性,属于小米产品问答。动态状态是实时状态,属于控制查询。2、动态状态分为系统的状态和设备的状态,设备分为车载和家用IOT场景。3、分发原则:老模型原则:小米产品问答>IOT查询>系统控制查询(当前线上策略:看3个谁打分高给谁)planning模型原则:车载设备状态查询:全端优先给小米产品问答家用设备状态查询:全端IOT优先系统控制查询:车载端:都给小米产品问答(已覆盖)其他端:都给小米产品问答(正在做)", + "recommended_output_shape": "待确认。", + "scope": "系统动态信息查询或系统动态设置项查询背景:控制本来分为“控、设、查”三部分,即:控制执行、功能设置、控制查询。现在将控制查询类需求分出来,因为所有的查询都是针对小米产品的,所以分给小米产品agent。" + }, + { + "agent_candidate": "Agent(tag=\"车载设备状态查询\")", + "confusing_labels": "待补充。", + "domain": "小米产品问答", + "examples": "主驾座椅通风打开了吗主驾驶空调打开了吗", + "function_candidate": "待确认。", + "name": "车载设备状态查询", + "old_tag": "车载设备状态查询", + "path": "knowledge/标签/小米产品问答/车载设备状态查询.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "针对小米汽车特有的,区别与其他小米终端类型的设置项查询,限定在车载范围。只有在车载端给小米产品问答,在其他端是QA(),通用问答会根据知识回答其他非小米产品或通用车载功能的问题。" + }, + { + "agent_candidate": "待确认。", + "confusing_labels": "音乐", + "domain": "工具类", + "examples": "爷爷的爸爸叫什么", + "function_candidate": "待确认。", + "name": "Kinship", + "old_tag": "待确认。", + "path": "knowledge/标签/工具类/Kinship.md", + "principles": "原则:给mathQA,短线给arith即可", + "recommended_output_shape": "待确认。", + "scope": "关系称谓计算,根据关系计算称呼" + }, + { + "agent_candidate": "Agent(tag=\"主动记忆\")", + "confusing_labels": "Chat地图导航", + "domain": "工具类", + "examples": "记住我的身份证号是123456我的身份证号是123456", + "function_candidate": "x0=Memory(type=\"DEFAULT\",category=\"身份证\",attributes=[\"号码\"],relationship=[本人],hasValue=true,isStructure = true)Add(memory=[x0])", + "name": "主动记忆", + "old_tag": "主动记忆主动记忆的增、删、改功能", + "path": "knowledge/标签/工具类/主动记忆.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "结构化信息记忆身份证、银行卡、护照、驾驶证、其他卡证、软件账号、邮箱号、手机号、车辆信息(车牌号、车品牌+车型、油车/新能源车)、导航地址、快递地址(寄件、收件地址)、电话、发票、物品位置等" + }, + { + "agent_candidate": "Agent(tag=\"倒数日\")", + "confusing_labels": "记忆", + "domain": "工具类", + "examples": "查一下我的倒数日", + "function_candidate": "x0 = Timer(type=\"COUNTDOWN\")Search(timer=[x0])", + "name": "倒数日", + "old_tag": "倒数日倒数日的增、删、改、查、打开、关闭、继续、暂停等等超过24小时的倒计时为倒数日,由日程而非时钟App创建,倒计时只能支持创建24小时内的倒计时", + "path": "knowledge/标签/工具类/倒数日.md", + "principles": "倒数日>记忆>提醒", + "recommended_output_shape": "待确认。", + "scope": "查询倒数日" + }, + { + "agent_candidate": "Agent(tag=\"倒计时\")", + "confusing_labels": "待补充。", + "domain": "工具类", + "examples": "查询我的倒计时倒计时还剩几分钟", + "function_candidate": "x0 = Timer()Search(timer=[x0])x0 = Timer(type=\"STOPWATCH\")Search(timer=[x0])", + "name": "倒计时", + "old_tag": "倒计时倒计时/秒表的增、删、改、查、打开、关闭、继续、暂停等等,倒计时和闹钟都在时钟App中倒计时只能支持创建24小时内的倒计时,超过24小时的倒计时为倒数日,由日程而非时钟App创建", + "path": "knowledge/标签/工具类/倒计时.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "查询倒计时/秒表" + }, + { + "agent_candidate": "Agent(tag=\"健康控制\")", + "confusing_labels": "应用控制", + "domain": "工具类", + "examples": "打开运动课程界面", + "function_candidate": "x0=FitnessHealth(category=\"SPORTCOURSE\")Open(fitness=x0)", + "name": "健康控制", + "old_tag": "健康控制打开关闭某运动健康功能界面开始停止暂停继续某运动模式开始带目标的运动开始测量健康状况该功能所监控的健康信息有:卡路里步数中高强度运动有效站立活动次数睡眠心率血压血糖血氧饱和度体重压力听音女性健康", + "path": "knowledge/标签/工具类/健康控制.md", + "principles": "原则1:打开运动健康类需求,和打开翻译类似,属于系统APP功能,优先给工具,而不是APP", + "recommended_output_shape": "待确认。", + "scope": "打开某运动功能界面" + }, + { + "agent_candidate": "Agent(tag=\"单位换算\")", + "confusing_labels": "待补充。", + "domain": "工具类", + "examples": "一年有多少天1海里有多少公里一节是多少公里每小时", + "function_candidate": "query:三千米等于多少毫米类型:Function功能:单位转换参数:value: str 数值source: str 原单位target: str 目标单位当前结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案小爱llmSkill使用query和session调用智谱模型。智谱调用get_unit_conversion_ratio api 获取完整的计算基础数据,例如算式表达式、输出、近似值、单位等智谱模型根据工具结果进行回复总结,并输出functioncall参数。llmSkill根据functioncall参数展示卡片,并输出流式话术。最终结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案toolsAgentSkill解析code,调用get_unit_conversion_ratio api 获取工具结果。toolsAgentSkill根据api结果构造prompt,调用结果满足模型进行回复总结。toolsAgentSkill根据api参数和结果输出精品卡。", + "name": "单位换算", + "old_tag": "单位换算", + "path": "knowledge/标签/工具类/单位换算.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "单位换算获取两种单位的转换比例,输入数值、初始单位和目标单位,将数值对应的初始单位转换成目标单位的数值单位换算包括速度单位、金钱单位、体积单位、面积单位、时间单位、压力单位、功率单位、质量单位、长度单位、能量单位、汇率换算、温度单位等" + }, + { + "agent_candidate": "Agent(tag=\"发短信\")", + "confusing_labels": "待补充。", + "domain": "工具类", + "examples": "给妈妈发短信说我想吃鸡翅了", + "function_candidate": "x0 = Contact(type=\"DEFAULT\", name=\"张三\", category=\"NORMAL\")SendSMS(object=x0, card=\"CARD_ONE\", text=\"我不回去了\")", + "name": "发短信", + "old_tag": "发短信", + "path": "knowledge/标签/工具类/发短信.md", + "principles": "原则1:明确说了是发短信,才是发短信,如果发消息,发信息,默认微信APP", + "recommended_output_shape": "待确认。", + "scope": "发短信" + }, + { + "agent_candidate": "Agent(tag=\"地震\")", + "confusing_labels": "待补充。", + "domain": "工具类", + "examples": "最近的地震是哪个", + "function_candidate": "EarthquakeQA()参数", + "name": "地震", + "old_tag": "地震", + "path": "knowledge/标签/工具类/地震.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "地震信息查询" + }, + { + "agent_candidate": "Agent(tag=\"外语翻译\")", + "confusing_labels": "QA()", + "domain": "工具类", + "examples": "普通的英文单词是什么好的,没问题,你想学习什么?用日语怎么说", + "function_candidate": "Translate类型:Function功能:翻译信息参数:type:枚举类型,翻译内容的来源content: Optional[str] 待翻译文本source_language: Optional[str] 源语言target_language: Optional[str] 目标语言target_info:枚举,翻译的形式TranslateQA类型:Function功能:翻译类泛问答", + "name": "外语翻译", + "old_tag": "外语翻译", + "path": "knowledge/标签/工具类/外语翻译.md", + "principles": "1、只有“外语相关”+“翻译是主需求”两个条件同时满足才是翻译2、保准确不保召回,用户明确说了是英语、日语或单词等表达,才认为是翻译,重点是是否明确是外语相关的问题或外语单词相关问题。3、如果用户只说了“翻译”,不一定是翻译意图,如:文言文、古诗翻译。翻译成繁体字,拼音等。4、通用问答中和小米产品名词相关的问题,给产品问答", + "recommended_output_shape": "待确认。", + "scope": "定义:不同语种之间的基本互译需求,有多模态功能,可以满足基于图片的翻译,进行指代翻译包括:单词翻译、词组互译、句子互译" + }, + { + "agent_candidate": "Agent(tag=\"外语词典查询\")", + "confusing_labels": "词典", + "domain": "工具类", + "examples": "flower怎么拼construction怎么读", + "function_candidate": "待确认。", + "name": "外语词典查询", + "old_tag": "外语词典查询", + "path": "knowledge/标签/工具类/外语词典查询.md", + "principles": "5、中文、拼音查词典给到词典,没有明确的查词典需求给到QA6、近义词反义词等,因为存在和中文,以及通用问答“买PUT”等的混淆问题,没有明确是外语或单词的给QA7、XX怎么读,字母怎么读给到翻译,汉字怎么读,给到词典", + "recommended_output_shape": "待确认。", + "scope": "定义:查询外文单词信息,包括读音、拼写、时态、语态、比较级、词性、近义词、反义词等等,有多模态功能,可以满足基于图片的翻译,进行指代翻译功能点:拼写、读音查询外文单词的时态、语态、比较级、词性、近义词、反义词等等" + }, + { + "agent_candidate": "Agent(tag=\"外语造句\")", + "confusing_labels": "QA()AI文本创作", + "domain": "工具类", + "examples": "用ride这个单词造句描写青岛栈桥美丽风景的英文句子", + "function_candidate": "待确认。", + "name": "外语造句", + "old_tag": "外语造句", + "path": "knowledge/标签/工具类/外语造句.md", + "principles": "1、外语的文本创作类,给文本创作或qa2、外语问答类和QA边界模糊的,给谁都可以,都是大模型满足", + "recommended_output_shape": "待确认。", + "scope": "定义:使用外语进行文本相关的创作功能点:词汇造句、主体造句等" + }, + { + "agent_candidate": "Agent(tag=\"外语问答\")", + "confusing_labels": "QA()", + "domain": "工具类", + "examples": "英语中BIT和A FEW的区别英语中KM是什么缩写He kept very close guard of that part of the river句子结构分析NOT ONLY DO THEY CONTAINED A LOT OF WATER BUT THE MOVE FAST分析句子语法。", + "function_candidate": "待确认。", + "name": "外语问答", + "old_tag": "外语问答", + "path": "knowledge/标签/工具类/外语问答.md", + "principles": "中文的语言结构、语法、词汇用法等等的问答给到QA同上,没有外语/单词等表达的都给QA", + "recommended_output_shape": "待确认。", + "scope": "定义:关于外语语言结构、语法、词汇用法等等的问答功能点:外语语言结构、语法、词汇用法等" + }, + { + "agent_candidate": "Agent(tag=\"天气\")", + "confusing_labels": "QA", + "domain": "工具类", + "examples": "12度的天气可以穿裙子吗春节有雨吗", + "function_candidate": "WeatherQA()参数", + "name": "天气", + "old_tag": "天气", + "path": "knowledge/标签/工具类/天气.md", + "principles": "详见天气问答边界问题", + "recommended_output_shape": "待确认。", + "scope": "查询天气信息,具体包括天气信息查询天气信息对比温度信息查询湿度信息查询风力信息查询日出日落信息查询空气质量查询穿衣指数洗车指数" + }, + { + "agent_candidate": "待确认。", + "confusing_labels": "QA", + "domain": "工具类", + "examples": "二和五的最小公倍数", + "function_candidate": "待确认。", + "name": "实数性质与计算", + "old_tag": "待确认。", + "path": "knowledge/标签/工具类/实数性质与计算.md", + "principles": "原则:给mathQA,短线给arith即可", + "recommended_output_shape": "待确认。", + "scope": "最小公倍数" + }, + { + "agent_candidate": "待确认。", + "confusing_labels": "待补充。", + "domain": "工具类", + "examples": "待补充。", + "function_candidate": "待确认。", + "name": "小学数学应用题", + "old_tag": "待确认。", + "path": "knowledge/标签/工具类/小学数学应用题.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "小学应用题" + }, + { + "agent_candidate": "待确认。", + "confusing_labels": "QA", + "domain": "工具类", + "examples": "月工资1万税收多少钱", + "function_candidate": "待确认。", + "name": "工资税收计算", + "old_tag": "待确认。", + "path": "knowledge/标签/工具类/工资税收计算.md", + "principles": "原则:给mathQA,短线给arith即可", + "recommended_output_shape": "待确认。", + "scope": "工资税收计算,根据月薪或者年薪计算需要缴纳的税收数量" + }, + { + "agent_candidate": "Agent(tag=\"打电话\")", + "confusing_labels": "应用控制", + "domain": "工具类", + "examples": "打电话给137xxx给微信聊天界面上这个号码拨打电话", + "function_candidate": "x0 = Contact(type=\"SCREEN\")MakeCall(object=x0)", + "name": "打电话", + "old_tag": "打电话", + "path": "knowledge/标签/工具类/打电话.md", + "principles": "原则1:如果没说微信,但是打视频电话,打语音电话,默认是走APP微信电话", + "recommended_output_shape": "待确认。", + "scope": "拨打电话(看图打电话、联系人打电话)" + }, + { + "agent_candidate": "Agent(tag=\"提醒\")", + "confusing_labels": "QA()", + "domain": "工具类", + "examples": "我定的提醒是什么时候我爷爷的生日是什么时候明天有什么事情吗今天是什么纪念日", + "function_candidate": "x0 = Reminder()Search(reminder=[x0])x0 = Reminder(type=\"CALENDAR\")Search(reminder=[x0])", + "name": "提醒", + "old_tag": "提醒提醒/日程的增、删、改、查、打开、关闭等等关于日期的提醒、记忆等统一给提醒接", + "path": "knowledge/标签/工具类/提醒.md", + "principles": "原则1:个性化的生日、纪念日都属于记忆只有查询我的提醒,才是提醒查询原则2:明确表述记一下就是主动记忆有“提醒”类明确表述是提醒两者都有,提醒>记一下提醒我记一下下周一是我妈生日原则3:距离爷爷生日还有几天,是时间距离计算", + "recommended_output_shape": "待确认。", + "scope": "查询提醒/日程" + }, + { + "agent_candidate": "Agent(tag=\"数学计算\")", + "confusing_labels": "待补充。", + "domain": "工具类", + "examples": "一加二加三加到九十九等于多少", + "function_candidate": "query:一加二加三加到九十九等于多少类型:Function功能:数列计算参数:from: str 起始值to: str 最终值step: str 步长symbol: 枚举,运算符号当前结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案小爱llmSkill使用query和session调用智谱模型。智谱调用series_of_numbers api 获取工具结果。智谱模型根据工具结果进行回复总结,并输出functioncall参数。llmSkill根据functioncall参数展示卡片,并输出流式话术。最终结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案toolsAgentSkill解析code,调用series_of_numbers api 获取工具结果。toolsAgentSkill根据api结果构造prompt,调用结果满足模型进行回复总结。toolsAgentSkill根据api参数和结果输出精品卡。", + "name": "数学计算", + "old_tag": "数学计算", + "path": "knowledge/标签/工具类/数学计算.md", + "principles": "原则1:这个功能由于很难判断一个计算是否是数列计算,因此把这个标签拆分为公式计算和mathQA。此类别如果符合公式计算的特征给formula计算,否则给MathQA。", + "recommended_output_shape": "待确认。", + "scope": "数列计算" + }, + { + "agent_candidate": "Agent(tag=\"文档总结\")", + "confusing_labels": "拍照问答、图片问答", + "domain": "工具类", + "examples": "总结一下这个文档眼前这个文档是什么意思", + "function_candidate": "x0 = Resource(type=\"DOC\")Summarize(object=x0)", + "name": "文档总结", + "old_tag": "文档总结关于文档、url的总结与内容问答,如果文档的文字以图片形式呈现,依然给到文档总结", + "path": "knowledge/标签/工具类/文档总结.md", + "principles": "文档总结有多模态能力,在各个端都是文档总结。本地文档、屏幕上文字、URL、图片、视频、音频,这些已知来源的总结是总结,其他是QA。其他类型的总结可以出resource(type=\"unknown\"),则工具agent调大模型总结。", + "recommended_output_shape": "待确认。", + "scope": "文档总结" + }, + { + "agent_candidate": "Agent(tag=\"时间\")", + "confusing_labels": "QA提醒记忆personalData", + "domain": "工具类", + "examples": "query:现在西雅图几点当前结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案小爱llmSkill使用query和session调用智谱模型。智谱调用search_calendar_info api 获取工具结果。智谱模型根据工具结果进行回复总结,并输出functioncall参数。llmSkill根据functioncall参数展示卡片,并输出流式话术。时区方案:智谱当前做法:智谱根据小爱提供时区数据,内部维护词表实现。理想态做法:语义理解:与天气相同,输出Location槽位(包含:country、province、city、district、town、poi等)。当前已经将这些信息注入给模型结果满足:skill根据Location槽位获取zoneId如果有zoneId,skill根据zoneId调用function api获取结果,注入结果模型回复。如果无zoneId,则使用location信息调用poi接口获取经纬度,根据经纬度计算时区。如果poi接口无结果,skill调用兜底回复模型。", + "function_candidate": "CalendarQA类型:Object功能:日历信息查询参数:type: 枚举类型,查询的时间类型target_time: Optional[str] 时间槽位location: Optional[str] 目标地点 废弃", + "name": "时间", + "old_tag": "时间", + "path": "knowledge/标签/工具类/时间.md", + "principles": "原则1:个性化信息的时间给QA或personalData自己召回,非个性信息中,只有依赖日历作为满足的,给时间问答,只包括节日、节气、假期,其他都是QA公共考试时间:中考、高考、法考、托福、雅思,给QA名人生日问答:全部给QA张三生日问答:给QA(personal data自己召回)节日时间——时间问答CalendarQA节气时间——时间问答CalendarQA假期时间——时间问答CalendarQA暑假寒假时间——时间问答CalendarQA要查黄历的——QA阅兵是哪天——QA", + "recommended_output_shape": "待确认。", + "scope": "日历、日期、时间查询也包括指定地点(查询时区)的日历、日期、时间查询" + }, + { + "agent_candidate": "Agent(tag=\"时间距离计算\")", + "confusing_labels": "提醒", + "domain": "工具类", + "examples": "距离八月十五还有多久距离春节还有多久三十天后是什么日子劳动节到国庆节中间有多少天当前结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案小爱llmSkill使用query和session调用智谱模型。智谱调用calculate_time_distance api 获取工具结果。智谱模型根据工具结果进行回复总结,并输出functioncall参数。llmSkill输出流式话术。最终结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案toolsAgentSkill解析code,调用calculate_time_distance api 获取工具结果。toolsAgentSkill根据api结果构造prompt,调用结果满足模型进行回复总结。", + "function_candidate": "TimeDistance类型:Function功能:时间距离计算参数:type:枚举类型,时间粒度start_time: Optional[str] 开始时间end_time: Optional[str] 结束时间", + "name": "时间距离计算", + "old_tag": "时间距离计算", + "path": "knowledge/标签/工具类/时间距离计算.md", + "principles": "原则2:timeDistance(),依赖实时时间结果的时间计算都给时间问答>数学,不管时间和个性化是否相关,包括个性化生日,个性化纪念日等(类比:导航到我家,我家在哪,北京到洛杉矶的距离,北京到上海的距离)节假日、具体事件的时间距离计算,中控planning会识别到timeDistance(start, end) 这个函数下.备注:航班还有多久,外卖还有多长时间到,这些不属于timeDistance离我的生日还有多少天离xxx节日还有多少天离结婚纪念日还有多少天距离毛主席诞辰还有多少天离雷军生日还有多少天离阅兵还有几天原则3:不依赖实时时间的时间计算,如果是时间距离计算出timeDistance(),如果不是距离计算,其他时间相关的计算给QA()8月比7月多几天闰年比平年多几天暑假比寒假多几天原则4:时间常识类给QA一年有多少天8月有多少天五一节有多少天暑假有多少天今年暑假有多少个周末?原则5:精品垂域的时间距离计算离春运还有多久Life skill满足,出timeDistance() functiontime垂域的范围:问答+时间距离计算+其他时间计算(有多少工作日)节日时间节气时间固定假期时间时间点(具体几点)典型示例:五一劳动节--QA五一假期--QA五一假期是哪天--calenderQA五一假期从哪天到哪天--calenderQA五一有周末么--calenderQA五一有几天--calenderQA五月有几天--QA五月刨去五一还有几天--QA五一为什么有5天假期--QA到五一有几天--timeDistance到五一有几个周末--timeDistance五一比十一少几天--QA五一天数多还是十一天数多--QA", + "recommended_output_shape": "待确认。", + "scope": "计算两个时间点的时间间隔" + }, + { + "agent_candidate": "待确认。", + "confusing_labels": "待补充。", + "domain": "工具类", + "examples": "RunAction", + "function_candidate": "待确认。", + "name": "标准身高计算标准体重计算", + "old_tag": "待确认。", + "path": "knowledge/标签/工具类/标准身高计算标准体重计算.md", + "principles": "原则:给mathQA,短线给arith即可", + "recommended_output_shape": "待确认。", + "scope": "身高1.72米,标准体重是多少" + }, + { + "agent_candidate": "Agent(tag=\"留言\")", + "confusing_labels": "无", + "domain": "工具类", + "examples": "创建/录制“我要留言 / 留言 / 创建留言”“给家里留一句:晚饭七点开吃”查看/收听“查看留言 / 打开留言 / 有留言吗 / 今天有留言吗”“播放留言 / 听留言 / 我要听留言”编辑“把第一条留言改成:别忘了带钥匙”“把刚才那条补充一句:顺路买牛奶”删除“删除留言 / 删掉第三条留言 / 删掉刚才那条留言”“删除所有留言”取消录制“取消留言 / 不要了”", + "function_candidate": "暂无迁移计划", + "name": "留言", + "old_tag": "留言", + "path": "knowledge/标签/工具类/留言.md", + "principles": "创建 / 录制 → AddAction触发词:留言/创建/录一条/给××留话/说给家里听…2)查看 / 收听 → CheckAction触发词:查看/打开/有留言吗/今天有留言吗/播放/收听/听留言。3)编辑 → EditAction触发词:编辑/修改/补充/改成…定位规则:优先按“刚才/最新/第N条/时间点/关键词”匹配;未给出时默认“最新一条”。4)删除(单条) → DeleteAction触发词:删除/移除/把第N条删了/删掉刚才那条。5)删除全部 → DeleteAction(mode=all)触发词:删除所有留言/清空留言。6)取消录制(进行中) → 结束录制并不保存触发词:取消留言/不要了/重来。7)唤醒留言能力 → ReceiveAction[object@Message](mailto:object@Message)触发词:打开/进入留言(模块)/唤醒留言功能。", + "recommended_output_shape": "待确认。", + "scope": "小爱音箱的语音留言管理:创建/收听/查看/编辑/删除单条留言,以及删除全部留言与唤醒留言能力。" + }, + { + "agent_candidate": "Agent(tag=\"竖式计算\")", + "confusing_labels": "待补充。", + "domain": "工具类", + "examples": "22乘55列竖式计算", + "function_candidate": "query:一加二加三加到九十九等于多少当前结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案小爱llmSkill使用query和session调用智谱模型。智谱调用series_of_numbers api 获取工具结果。智谱模型根据工具结果进行回复总结,并输出functioncall参数。llmSkill根据functioncall参数展示卡片,并输出流式话术。最终结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案toolsAgentSkill解析code,调用series_of_numbers api 获取工具结果。toolsAgentSkill根据api结果构造prompt,调用结果满足模型进行回复总结。toolsAgentSkill根据api参数和结果输出精品卡。", + "name": "竖式计算", + "old_tag": "竖式计算", + "path": "knowledge/标签/工具类/竖式计算.md", + "principles": "原则1:必须明确表达要“列竖式”计算,其他可以认为是公式计算或mathQA", + "recommended_output_shape": "待确认。", + "scope": "竖式计算类型:Function功能:数列计算参数:from: str 起始值to: str 最终值step: str 步长symbol: 枚举,运算符号" + }, + { + "agent_candidate": "Agent(tag=\"简单数学问题\")", + "confusing_labels": "待补充。", + "domain": "工具类", + "examples": "身高150,体重150计算BMI", + "function_candidate": "待确认。", + "name": "简单数学问题", + "old_tag": "简单数学问题", + "path": "knowledge/标签/工具类/简单数学问题.md", + "principles": "原则:给mathQA,短线给arith即可", + "recommended_output_shape": "待确认。", + "scope": "计算BMI" + }, + { + "agent_candidate": "Agent(tag=\"翻译功能操作\")", + "confusing_labels": "应用控制", + "domain": "工具类", + "examples": "关闭翻译(只有眼镜端20250716)", + "function_candidate": "x0=XiaoAiTranslation(name=\"REALTIME\")Close(object=x0)", + "name": "翻译功能操作", + "old_tag": "翻译功能操作", + "path": "knowledge/标签/工具类/翻译功能操作.md", + "principles": "1、工具类的控制都属于工具,例如打开翻译,打开运动健康等2、应用控制涉及的query是打开关闭带有具体app应用名称的,例如有道翻译、百度翻译,属于应用控制", + "recommended_output_shape": "待确认。", + "scope": "打开、关闭(只有眼镜端20250716)各类翻译工具,调节翻译字体大小、字幕大小,翻译操作目前可以打开和关闭的小爱的翻译工具有:翻译对话翻译中英文互译同声传译(面对面翻译)每日英语AI字幕" + }, + { + "agent_candidate": "Agent(tag=\"课程表\")", + "confusing_labels": "-", + "domain": "工具类", + "examples": "查询课程内容“帮我查一下明天的课程”“这周三我有什么课”查询课程时间“我的英语课几点上”“下节课什么时候开始”查询课程地点“今天的数学课在哪上”查询课程数量“我这周有几节课”查询课程教师“谁教我的物理课”添加课程“帮我在周三上午10点加一节日语课”“按第3节课的时间添加一节化学实验”课程表操作“开启课程表”“关闭课程表”“打开课程表设置”", + "function_candidate": "无", + "name": "课程表", + "old_tag": "课程表", + "path": "knowledge/标签/工具类/课程表.md", + "principles": "查询类包含“查/什么时候/在哪/谁上/有几节”等 → 对应 search_course 子功能根据关键词进一步路由:“内容” → search_course_content“时间” → search_course_time“地点” → search_course_location“数量” → search_course_count“老师/教师” → search_course_teacher添加类包含“添加/加课/加一门”等 → 对应 add_course 子功能若出现“第几节/按节次” → add_course_by_section若出现“几点/按时间” → add_course_by_time操作类包含“开启/关闭/打开设置”等 → 对应 class_schedule_operation“开启” → open_class_schedule“关闭” → close_class_schedule“打开设置” → set_class_schedule", + "recommended_output_shape": "待确认。", + "scope": "快速获取、管理和调整课程安排提供课程表相关的功能:查询课程:课程内容、时间、地点、数量、教师)添加课:按节次或按时间课程表操作:启用、关闭、打开设置" + }, + { + "agent_candidate": "Agent(tag=\"通讯录\")", + "confusing_labels": "待补充。", + "domain": "工具类", + "examples": "同步通讯录", + "function_candidate": "SynchronizeContacts()", + "name": "通讯录", + "old_tag": "通讯录", + "path": "knowledge/标签/工具类/通讯录.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "同步通讯录" + }, + { + "agent_candidate": "Agent(tag=\"闹钟\")", + "confusing_labels": "提醒系统定时控制(自动任务)提醒", + "domain": "工具类", + "examples": "查询我的闹钟查询此次小憩时间我休息多长时间", + "function_candidate": "x0 = Alarm()Search(alarm=[x0])x0 = Alarm(type=\"RESTMODE\")Search(alarm=[x0])", + "name": "闹钟", + "old_tag": "闹钟闹钟/小憩定时闹钟的增、删、改、查、打开、关闭,倒计时和闹钟都在时钟App中", + "path": "knowledge/标签/工具类/闹钟.md", + "principles": "原则1:睡觉叫醒我属于闹钟叫醒我的过程是把我从睡觉的状态叫醒,需要用到闹钟,所以给到闹钟垂域叫我、叫醒我、喊我都是闹钟,需要连续响铃提醒我,是提醒-备忘录原则2:提醒和闹钟的边界在于query中是否明确包含闹钟,如果明确包含闹钟,给到闹钟,否则给到提醒优先级:闹钟>提醒原则3:小憩模式/休息等类似表述+时间(待讨论,控制类问题)一部分是控制(打开关闭),一部分是tools,区分有困难打开小憩模式打开小憩模式30分钟小憩模式是一种独立功能,是一种让用户睡觉休息的模式这种要给闹钟,因为这种query的主要目的是要在固定时间后休息结束,闹钟响起。但是反过来,时间+小憩模式/休息,这种是固定时间后打开小憩模式的目的,所以要给到系统定时控制", + "recommended_output_shape": "待确认。", + "scope": "查询闹钟" + }, + { + "agent_candidate": "Agent(tag=\"应用定时控制\")", + "confusing_labels": "待补充。", + "domain": "应用控制和搜索", + "examples": "20分钟之后关闭音乐", + "function_candidate": "待确认。", + "name": "应用定时控制", + "old_tag": "应用定时控制", + "path": "knowledge/标签/应用控制和搜索/应用定时控制.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "有时间限制的进行App的操作" + }, + { + "agent_candidate": "Agent(tag=\"应用控制\")", + "confusing_labels": "tag:应用控制系统控制设备控制Agent:地图导航Agent生活服务Agent内容Agent", + "domain": "应用控制和搜索", + "examples": "打开微信查看微信消息打开QQ给李胜打电话打开微信朋友圈", + "function_candidate": "function定义:参数定义:app: 对应的应用名page: 打开的对应的页面Action: 具体的操作,如:open, close示例:Query:打开微信查看朋友圈", + "name": "应用控制", + "old_tag": "应用控制", + "path": "knowledge/标签/应用控制和搜索/应用控制.md", + "principles": "边界原则:与内容类Agent冲突:播放类的给到内容类,打开类给到控制Agent共识原则:精品垂域优先召回,召回原则:根据用户主需求应用控制兜底,如果query中提到APP名字,则走APP应用控制", + "recommended_output_shape": "待确认。", + "scope": "独立应用(App)进行操作,如打开,关闭,以及具体的操作等;生活服务App内的相关操作,属于生活服务Agent地图App内的相关导航操作,属于地图Agent内容类App的播放类的,属于内容类Agent" + }, + { + "agent_candidate": "Agent(tag=\"搜索|应用名(搜索|QQ音乐)\")", + "confusing_labels": "tag:搜索|应用名浏览器搜索应用播放餐饮服务地图导航Agent:地图导航Agent生活服务Agent内容Agent", + "domain": "应用控制和搜索", + "examples": "QQ音乐搜索刘德华的歌曲东方财富搜索外汇交易动态打开抖音帮我搜一下起风了打开快手搜索情侣头像百度地图搜索附近的公园大众点评搜索附近的海底捞", + "function_candidate": "function定义:参数定义:app: 对应的应用名content: 需要搜索的内容示例:Query:打开快手搜索情侣头像浏览器搜索手机发烫怎么办线上示例:打开抖音帮我搜一下起风了", + "name": "搜索|应用名(搜索|QQ音乐)", + "old_tag": "搜索|应用名(搜索|QQ音乐)", + "path": "knowledge/标签/应用控制和搜索/搜索-应用名-QQ音乐.md", + "principles": "边界原则:明确:app+(搜|查|找) ,统一类别:搜索|app分发原则:planning模型原则:浏览器搜索:控制Agent搜索|应用名:按照映射名进行不同Agent的映射", + "recommended_output_shape": "待确认。", + "scope": "独立应用(App)进行内部的搜索操作背景:应用进行内部的搜索,由于不同APP不能统一归属给控制Agent,所以单独出来App的名字类别,便于不同app的搜索给到不同Agent;搜索|QQ音乐->控制Agent搜索|百度地图->地图Agent搜索|美团外卖->生活服务Agent" + }, + { + "agent_candidate": "Agent(tag=\"浏览器搜索\")", + "confusing_labels": "待补充。", + "domain": "应用控制和搜索", + "examples": "百度搜索感冒了怎么办浏览器搜索手机发烫怎么办", + "function_candidate": "待确认。", + "name": "浏览器搜索", + "old_tag": "浏览器搜索", + "path": "knowledge/标签/应用控制和搜索/浏览器搜索.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "利用通用搜索引擎与浏览器进行搜索,获取知识背景:浏览器搜索是从search垂域进行分拆,所以给出了独立的标签;" + }, + { + "agent_candidate": "Agent(tag=\"交通购票\")", + "confusing_labels": "边界Agent:控制Agent地图Agent工具Agent边界Tag:应用控制地图问答时间航班信息查询", + "domain": "生活服务", + "examples": "帮我查看一下火车票我要抢火车票订一张9月4号从青海到武汉的高铁票什么时候可以预定十月一日的火车票可以预定中秋节的火车票么距离国庆节抢票还有多久距离抢十一的票还有多久今天可以抢几号的火车票今天可以抢几号的飞机票距离春运还有多久今年什么时候是春运", + "function_candidate": "function定义:参数定义:", + "name": "交通购票", + "old_tag": "交通购票", + "path": "knowledge/标签/生活服务/交通购票.md", + "principles": "planning模型分发原则生活服务Agent春运相关都给生活服务,不走工具时间类A到B坐什么车如果明确提到火车、飞机、高铁,是生活服务默认是导航A到B坐飞机多长时间,边界问题,QA和生活服务互相兜底北京飞洛杉矶的航班要飞多久——生活服务中国飞美国要飞多久——QA", + "recommended_output_shape": "待确认。", + "scope": "查询/购买交通车票 查询火车票开售日期查询距离火车票开售还有多久 查询可抢票时间 查询车次查询春运时间" + }, + { + "agent_candidate": "Agent(tag=\"商品信息对比\")", + "confusing_labels": "边界Tag:通用对话", + "domain": "生活服务", + "examples": "帮我对比下小米15和iphone16的区别分析下小米15和iphone16手机镜头的区别", + "function_candidate": "function定义:参数定义:", + "name": "商品信息对比", + "old_tag": "商品信息对比", + "path": "knowledge/标签/生活服务/商品信息对比.md", + "principles": "planning模型分发原则明确提到小米产品是产品问答有购买意图的,同商品比价,属于商品购买无购买意图属于QA购买类意图不区分商品品类", + "recommended_output_shape": "待确认。", + "scope": "获取不同商品规格参数信息对比" + }, + { + "agent_candidate": "Agent(tag=\"商品推荐\")", + "confusing_labels": "边界Tag:平台比价", + "domain": "生活服务", + "examples": "推荐一款 3000 元左右的小米手机推荐一款 3000 元左右的手机", + "function_candidate": "function定义:参数定义:goods_name: 产品名,购买的物品名goods_brand: 品牌名,物品的品牌", + "name": "商品推荐", + "old_tag": "商品推荐", + "path": "knowledge/标签/生活服务/商品推荐.md", + "principles": "planning模型分发原则生活服务Agent", + "recommended_output_shape": "待确认。", + "scope": "明确的pattern,进行物品的推荐" + }, + { + "agent_candidate": "Agent(tag=\"商品购买\")", + "confusing_labels": "边界Tag:外卖交通购票", + "domain": "生活服务", + "examples": "我要买小米十三我要买小米汽车我要买三千左右的手机", + "function_candidate": "function定义:参数定义:goods_name: 产品名,购买的物品名goods_brand: 品牌名,物品的品牌app:应用名,表示去哪个app购买", + "name": "商品购买", + "old_tag": "商品购买", + "path": "knowledge/标签/生活服务/商品购买.md", + "principles": "planning模型分发原则生活服务Agent", + "recommended_output_shape": "待确认。", + "scope": "明确的pattern,进行物品的购买,明确不包含:购票类外卖类(实时可送的)" + }, + { + "agent_candidate": "Agent(tag=\"商品购买|应用名\")", + "confusing_labels": "待补充。", + "domain": "生活服务", + "examples": "我要去京东买小米十三打开点评我要买咖啡", + "function_candidate": "同上", + "name": "商品购买|应用名", + "old_tag": "商品购买|应用名", + "path": "knowledge/标签/生活服务/商品购买、应用名.md", + "principles": "planning模型分发原则生活服务Agent", + "recommended_output_shape": "待确认。", + "scope": "明确的pattern,进行物品的购买" + }, + { + "agent_candidate": "Agent(tag=\"团购\")", + "confusing_labels": "团购,能力还未建设,先都给生活服务,但不额外区分", + "domain": "生活服务", + "examples": "给我找一下笨豆馆的团购搜索一下兰赛夫的团购活动哪里团购华莱士的券最便宜", + "function_candidate": "function定义:", + "name": "团购", + "old_tag": "团购", + "path": "knowledge/标签/生活服务/团购.md", + "principles": "(TODO)", + "recommended_output_shape": "待确认。", + "scope": "查找团购的活动,明确有团购的pattern;" + }, + { + "agent_candidate": "Agent(tag=\"外卖\")", + "confusing_labels": "边界tag:商品购买快递服务", + "domain": "生活服务", + "examples": "帮我点个外卖帮我订份烤肉拌饭我的外卖到哪了我的外卖什么时候到", + "function_candidate": "function定义:参数定义:app:应用名type:外卖的类别", + "name": "外卖", + "old_tag": "外卖", + "path": "knowledge/标签/生活服务/外卖.md", + "principles": "只支持点外卖,查外卖点外卖可以指定外卖员帮我送吗——QA我现在想点外卖又想吃凉拌猪耳朵但是外卖没有凉拌猪耳朵我该怎么办——生活服务", + "recommended_output_shape": "待确认。", + "scope": "点外卖,有明确的pattern外卖相关信息查询,如到哪了,什么时候到" + }, + { + "agent_candidate": "Agent(tag=\"平台比价->商品比价\")", + "confusing_labels": "边界Tag:小米产品帮助应用控制产品购买航班信息查询外卖酒店", + "domain": "生活服务", + "examples": "小米15全网最低价", + "function_candidate": "function定义:参数定义:", + "name": "平台比价->商品比价", + "old_tag": "平台比价->商品比价", + "path": "knowledge/标签/生活服务/平台比价-、商品比价.md", + "principles": "边界结论:明确不包括:酒店比价(酒店)外卖比价(外卖)美食比价(美食)planning模型分发原则生活服务Agent没有比价功能,比价算在商品购买;酒店/外卖/机票 > 购物小米产品问答 > 购物", + "recommended_output_shape": "待确认。", + "scope": "针对商品进行比价,选择最便宜,或者最贵的商品,明确不包括:酒店比价(酒店)外卖比价(外卖)美食比价(美食)" + }, + { + "agent_candidate": "Agent(tag=\"快递服务\")", + "confusing_labels": "边界tag:应用控制外卖、闪送", + "domain": "生活服务", + "examples": "查看我的快递查看京东物流寄快递发快递我的快递到哪了", + "function_candidate": "function定义:参数定义:app: 对应的应用名attribute: 快递的属性,比如:查询,邮寄示例数据:Query:打开淘宝查看我的订单", + "name": "快递服务", + "old_tag": "快递服务", + "path": "knowledge/标签/生活服务/快递服务.md", + "principles": "能否通过手机号查快递——QA订单编号是250815的一般是哪个快递——QA现有只支持:寄快递,查快递,满足是打开某APP(支付宝)(TODO)", + "recommended_output_shape": "待确认。", + "scope": "快递邮寄,以及快递信息查询" + }, + { + "agent_candidate": "Agent(tag=\"打车\")", + "confusing_labels": "边界Agent:控制Agent通用对话Agent", + "domain": "生活服务", + "examples": "帮我打个车去五彩城帮我打个顺风车打开地图进行打车到石家庄东广场网约车", + "function_candidate": "function定义:参数定义:location: 地址信息,包括目的地,起点等app: 使用打车的应用名", + "name": "打车", + "old_tag": "打车", + "path": "knowledge/标签/生活服务/打车.md", + "principles": "planning模型分发原则生活服务Agent", + "recommended_output_shape": "待确认。", + "scope": "明确的用第三车出去的需求;" + }, + { + "agent_candidate": "Agent(tag=\"找同款\")", + "confusing_labels": "边界tag:应用控制商品购买", + "domain": "生活服务", + "examples": "推荐同款的手机我要买同款找同款我要买同款的手机在拼多多找同款物品找屏幕这件衣服的同款", + "function_candidate": "function定义:参数定义:app: 对应的应用名goods_name: 产品名,购买的物品名attribute: 物品的属于,如:颜色,大小等等", + "name": "找同款", + "old_tag": "找同款", + "path": "knowledge/标签/生活服务/找同款.md", + "principles": "planning模型分发原则生活服务Agent", + "recommended_output_shape": "待确认。", + "scope": "针对当前信息,查找同款的物品,主要有明显的patter:同款" + }, + { + "agent_candidate": "Agent(tag=\"旅游\")", + "confusing_labels": "边界Agent:通用对话地图Agent", + "domain": "生活服务", + "examples": "附近有什么好玩的广州有什么好玩的熊猫基地几点开门颐和园简介天安门广场的面积是多少故宫的门票价格故宫的游玩季节北海道怎么玩成都游玩时长购买黄山风景区门票", + "function_candidate": "function定义:参数定义:", + "name": "旅游", + "old_tag": "旅游", + "path": "knowledge/标签/生活服务/旅游.md", + "principles": "planning模型分发原则生活服务Agent旅游问答,景区问答,给生活服务", + "recommended_output_shape": "待确认。", + "scope": "附近景点推荐非附近景点推荐 搜索景区营业时间 搜索景区介绍 搜索景区占地面积 搜索景区门票价格 搜索景区适合游玩的季节 查询目的地旅游攻略 搜索景区适合游玩的时长 购买景区门票 (产品购买)景点相关问答" + }, + { + "agent_candidate": "Agent(tag=\"汽车服务\")", + "confusing_labels": "待补充。", + "domain": "生活服务", + "examples": "待补充。", + "function_candidate": "待确认。", + "name": "汽车服务", + "old_tag": "汽车服务", + "path": "knowledge/标签/生活服务/汽车服务.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "修车,洗车,4S店服务等" + }, + { + "agent_candidate": "Agent(tag=\"生活服务\")", + "confusing_labels": "边界tag:景点美食外卖冲突的Agent:地图Agent", + "domain": "生活服务", + "examples": "附近的娱乐场所搜索附近的台球厅给我寻找附近的羽毛球馆帮我查找我附近可以打疫苗的宠物医店帮我找一下附近的采耳团购店附近专修空调这附近有没有什么手工活附近有什么舞蹈班附近有什么可以学习乐器的地方", + "function_candidate": "待确认。", + "name": "生活服务", + "old_tag": "生活服务", + "path": "knowledge/标签/生活服务/生活服务.md", + "principles": "planning模型分发原则生活服务Agent", + "recommended_output_shape": "待确认。", + "scope": "关于生活休闲相关的周边生活的查询,以及问答非美食(餐饮)非外卖非景点生活服务类搜索:如运动场馆、按摩、足疗、洗浴、汗蒸、KTV、酒吧、台球、网吧电竞、电玩等初期垂域只针对车服进行建设(TODO 附近的xxx)车服电影院" + }, + { + "agent_candidate": "Agent(tag=\"生活缴费\")", + "confusing_labels": "边界Agent冲突:控制Agent", + "domain": "生活服务", + "examples": "我要交电费打开支付宝进行生活缴费", + "function_candidate": "待确认。", + "name": "生活缴费", + "old_tag": "生活缴费", + "path": "knowledge/标签/生活服务/生活缴费.md", + "principles": "planning模型分发原则生活服务Agent", + "recommended_output_shape": "待确认。", + "scope": "生活缴费:交电费交水费" + }, + { + "agent_candidate": "Agent(tag=\"电影票购买\")", + "confusing_labels": "边界Tag:商品购买内容问答导航", + "domain": "生活服务", + "examples": "我要买一张明天的电影票买五彩城CGV影院的电影票柯南独眼的残像今天有票吗帮我查一下中南方影院南京照相馆现在的电影票是多少钱帮我查一下今天晚上还有什么电影", + "function_candidate": "function定义:参数定义:cinema:影院名示例query:买五彩城CGV影院的电影票", + "name": "电影票购买", + "old_tag": "电影票购买", + "path": "knowledge/标签/生活服务/电影票购买.md", + "principles": "planning模型分发原则生活服务Agent电影票问答相关——生活服务电影问答——内容问答TODO:找附近的电影院? ——生活 或 导航", + "recommended_output_shape": "待确认。", + "scope": "进行电影票的购买电影票信息的查询" + }, + { + "agent_candidate": "Agent(tag=\"航班信息查询\")", + "confusing_labels": "待补充。", + "domain": "生活服务", + "examples": "这个航班几点落地屏幕中这个航班还有多久到这个航班延误了么这个航班晚点了没这个飞机在哪个航站楼落地?这个航班落地的航站楼是哪一个?这个航班几点起飞这个航班还有多久从北京起飞订一张10月31号从武汉飞往重庆的飞机票帮我查看一下飞机票", + "function_candidate": "function定义:参数定义:name:航班名", + "name": "航班信息查询", + "old_tag": "航班信息查询", + "path": "knowledge/标签/生活服务/航班信息查询.md", + "principles": "planning模型分发原则生活服务Agent", + "recommended_output_shape": "待确认。", + "scope": "对航班信息进行查询查询航班到达信息查询航班延误状态查询航班落地航站楼查询航班起飞信息机票查询与购买" + }, + { + "agent_candidate": "Agent(tag=\"话费流量服务\")", + "confusing_labels": "边界Agent冲突:控制Agent", + "domain": "生活服务", + "examples": "我要充话费流量包办理我要办流量包帮我办流量包我要买流量帮我查话费余额帮我查一下流量打开中国移动查看套餐去中国移动查流量/查余量", + "function_candidate": "待确认。", + "name": "话费流量服务", + "old_tag": "话费流量服务", + "path": "knowledge/标签/生活服务/话费流量服务.md", + "principles": "planning模型分发原则生活服务Agent", + "recommended_output_shape": "待确认。", + "scope": "手机充值与查询充话费充流量查话费余额查流量查套餐" + }, + { + "agent_candidate": "Agent(tag=\"购物\")", + "confusing_labels": "边界tag:应用控制", + "domain": "生活服务", + "examples": "打开淘宝查看我的订单我有哪些购物订单查找我的购物订单打开我的订单查一下淘宝的订单", + "function_candidate": "function定义:参数定义:app: 对应的应用名attribute: 订单的属性,如:未付款,未收货等等示例数据:Query:打开淘宝查看我的订单", + "name": "购物", + "old_tag": "购物订单查询", + "path": "knowledge/标签/生活服务/购物.md", + "principles": "边界结论:订单类的统一都给到生活服务Agent承接,不用管对应App;planning模型分发原则生活服务Agent", + "recommended_output_shape": "待确认。", + "scope": "查询自己所有消费相关的订单" + }, + { + "agent_candidate": "Agent(tag=\"酒店\")", + "confusing_labels": "边界Agent:通用对话", + "domain": "生活服务", + "examples": "帮我订个明天晚上武汉的如家附近的酒店", + "function_candidate": "function定义:参数定义:name:酒店名location: 酒店地址", + "name": "酒店", + "old_tag": "酒店", + "path": "knowledge/标签/生活服务/酒店.md", + "principles": "planning模型分发原则生活服务Agent酒店问答、评价、推荐——生活服务单实体——偏向QA(先不动),长线出综合卡片单实体问题,美食、旅游、酒店都是类似(TODO)", + "recommended_output_shape": "待确认。", + "scope": "订酒店查找酒店酒店问答酒店评价" + }, + { + "agent_candidate": "Agent(tag=\"餐厅订座排号\")", + "confusing_labels": "待补充。", + "domain": "生活服务", + "examples": "帮我订一个明天下午三点的10个的包间帮我进行海底捞的排号", + "function_candidate": "function定义:参数定义:num_person: 人数的多少open_time: 预定的时间name: 预定的餐厅名", + "name": "餐厅订座排号", + "old_tag": "餐厅订座排号", + "path": "knowledge/标签/生活服务/餐厅订座排号.md", + "principles": "planning模型分发原则生活服务Agent", + "recommended_output_shape": "待确认。", + "scope": "进行餐厅的定订座排号" + }, + { + "agent_candidate": "Agent(tag=\"餐饮服务\")", + "confusing_labels": "边界Agent:通用对话Agent,美食的相关问答,是否承接;地图Agent", + "domain": "生活服务", + "examples": "附近有什么好吃的附近的餐厅北京有什么好吃的附近的海底捞", + "function_candidate": "function定义:参数定义:location : 地址信息", + "name": "餐饮服务", + "old_tag": "餐饮服务", + "path": "knowledge/标签/生活服务/餐饮服务.md", + "principles": "边界结论:按照POI的属性类别,如果是美食,给到生活服务;planning模型分发原则生活服务Agent菜谱-菜谱问答相关问题——QA美食查找,餐厅查找类——生活服务美食问答和餐厅问答——生活服务q=世界上最顶级的餐厅有哪些附近的海底捞--海底捞什么东西好吃--哪个海底捞好吃--海底捞为什么好吃--海底捞评分怎么样岱山最好吃的海鲜菜在哪里兰州拉面来源于哪里保定特色美食有什么鲁菜菜系有哪些名菜", + "recommended_output_shape": "待确认。", + "scope": "美食查找推荐附近的美食推荐非附近的美食美食问答" + }, + { + "agent_candidate": "Agent(tag=\"声纹\")", + "confusing_labels": "个人信息记忆", + "domain": "系统控制和IOT设备控制", + "examples": "录入声纹识别我的声纹注册声音记录声纹", + "function_candidate": "Query:录入声纹code:(未共识)满足:录入用户声纹信息并存储,后续每次ASR识别会带上用户的声纹特征,基于此特征可以识别用户身份", + "name": "声纹", + "old_tag": "声纹", + "path": "knowledge/标签/系统控制和IOT设备控制/声纹.md", + "principles": "和声纹的记录需要给声纹,其他场景的记录给记忆或个人信息", + "recommended_output_shape": "待确认。", + "scope": "声纹指的是基于用户的声音特征识别用户身份的能力,理论上声纹特征和指纹一样,拥有唯一性小爱在音箱、电视、车载等设备上支持通过声纹来识别用户的身份,以此来实现特定用户的功能满足。声纹类别主要用于处理声纹的识别、录入。声纹识别的打开、关闭:声纹识别:识别声音、识别声纹声纹录入:声音注册、录入声纹声纹识别打开:打开声音识别、打开声纹锁声纹识别关闭:关掉声音识别、关闭声纹锁" + }, + { + "agent_candidate": "Agent(tag=\"家庭传声\")", + "confusing_labels": "闲聊", + "domain": "系统控制和IOT设备控制", + "examples": "对全家说生日快乐对屋里人说今天外卖自己点对家庭讲下冰箱门开着", + "function_candidate": "Query:对全家说生日快乐code:(未共识)满足:语义理解:明确是家庭传声需求通过米家成员信息接口获取家庭成员信息融合米家设备信息和小爱设备信息获取全部成员设备信息音频截取:根据ASR 提供的offest生成音频截取参数调用音频截取接口截取家庭传声语音消息内容provider(等同于skill)通过小爱长连接通道推送语音消息", + "name": "家庭传声", + "old_tag": "家庭传声", + "path": "knowledge/标签/系统控制和IOT设备控制/家庭传声.md", + "principles": "有歧义的都认为是闲聊,只有明确语义的是家庭传声query中明确包含家庭传声场景关键字的才给到家庭传声,例如:包含房间或房屋信息:向屋里传个声门没关包含家庭、家人等关键字:跟家里人说洗澡水好了", + "recommended_output_shape": "待确认。", + "scope": "家庭传声功能描述:家庭成员利用小爱的语音通道实现消息传递。例如,在手机端对着小爱说“和家里的音箱说一下今晚不回去吃饭了”,此时家庭传声链路会截取用户query中“今晚不回去吃饭了”的音频,然后将其转发给家里的音箱进行播报家庭传声支持的设备:被传声设备支持音箱和电视,主要支持家庭场景家庭传声的case语义特征较为明显,通常会包含“对xx说”,或者家庭关键字参考文档:【小爱研发项目】家庭传声" + }, + { + "agent_candidate": "Agent(tag=\"相机\")", + "confusing_labels": "应用控制", + "domain": "系统控制和IOT设备控制", + "examples": "设置照相机快捷键打开相机倒计时拍个照片打开相机关闭相机返回相机", + "function_candidate": "Query:打开相机倒计时code:(未共识)Query:打开相机code:(未共识)满足:调用系统级能力,打开相机或设置相机倒计时", + "name": "相机", + "old_tag": "相机", + "path": "knowledge/标签/系统控制和IOT设备控制/相机.md", + "principles": "针对第三方相机,无法在系统层面进行控制。因此只有原生相机才给到“相机”tag,第三方相机的操作给应用控制", + "recommended_output_shape": "待确认。", + "scope": "操作客户端执行和相机相关的操作录视频或者拍照:例如“录视频”、“拍个照片”设置拍摄模式或拍摄参数:例如“关掉中心坐标”、“打开相机倒计时”需要客户端有拍摄能力才能执行相机操作,有拍摄能力的客户端包括手机、车载、眼镜" + }, + { + "agent_candidate": "Agent(tag=\"系统定时控制\")", + "confusing_labels": "自动任务系统定时控制设备定时控制备忘录-提醒设备控制", + "domain": "系统控制和IOT设备控制", + "examples": "十分钟后关机五点后关机五点后关闭音乐", + "function_candidate": "Query:五分钟后关机code:(未共识)满足:调用系统层接口传输“定时” or “延时”参数,需要系统层支持才能实现此功能", + "name": "系统定时控制", + "old_tag": "系统定时控制", + "path": "knowledge/标签/系统控制和IOT设备控制/系统定时控制.md", + "principles": "长线:全端都统一为自动任务的表示方式短线:适配区分支持自动化和不支持的场景(中控推进)", + "recommended_output_shape": "待确认。", + "scope": "在系统控制的基础上增加时间相关的条件:定时控制:设定具体时间点,执行设备控制操作,例如“五点关机”延时控制:设定延时时间段,执行设备控制操作,例如“十分钟后关机”" + }, + { + "agent_candidate": "Agent(tag=\"系统控制\")", + "confusing_labels": "设备控制车载控制应用控制声纹相机控制设备查找闲聊", + "domain": "系统控制和IOT设备控制", + "examples": "音量大一点音色设置为青葱眼镜颜色调深一点", + "function_candidate": "Query:音量大一点code:(未共识)Query:打开蓝牙code:(未共识)满足:调用系统层面接口完成对应控制,并返回TTS", + "name": "系统控制", + "old_tag": "系统控制", + "path": "knowledge/标签/系统控制和IOT设备控制/系统控制.md", + "principles": "控制类和端类型强相关,收音设备优先原则系统控制是偏向兜底控制的选择,其他类型的控制偏向白名单实现优先级高于系统控制。例如“声纹”、“相机控制”等功能本质也是调用当前设备系统层面的能力", + "recommended_output_shape": "待确认。", + "scope": "通用系统层能力控制:小米设备系统层能力控制,此类系统层能力的特点是不区分端,各端能力通用。例如“音量”、“屏幕亮度”、“音色”等除车载端外其他端特有控制也属于系统控制例如:眼镜端,query = 镜片颜色调深一点例如:扫地机,query = 充电控制的操作包括:打开or关闭系统功能:关机、打开护眼模式设置功能属性:音量大一点、亮度调到百分之五十" + }, + { + "agent_candidate": "Agent(tag=\"自动任务\")", + "confusing_labels": "待补充。", + "domain": "系统控制和IOT设备控制", + "examples": "上车时打开空调和座椅加热主驾下车时提醒我拿手机", + "function_candidate": "Query:上车时打开空调和座椅加热code:(未共识)Query:主驾下车时提醒我拿手机code:(未共识)满足:planning模型输出对应的function code,拆分条件和要执行的动作其中ConditionParser函数中的query会请求条件理解大模型,条件理解大模型对条件进行二次理解Agent函数中的query会请求对应Agent获取语义理解结果结果满足阶段会调用脚本生成服务,基于条件理解大模型和Agent的语义理解结果,生成可以在客户端执行创建自动任务的脚本客户端执行对应脚本完成自动任务创建目前仅车载端支持此功能", + "name": "自动任务", + "old_tag": "自动任务", + "path": "knowledge/标签/系统控制和IOT设备控制/自动任务.md", + "principles": "如果query中的条件部分和定时或延时相关,且执行动作和设备控制、系统控制、提醒相关,则自动任务类别不召回。其他场景自动任务召回,自动任务需要召回的典型场景为:十分钟后导航去五彩城下车提醒我拿手机十分钟后关闭空调和座椅加热", + "recommended_output_shape": "待确认。", + "scope": "触发某个条件后执行某个操作,目前存在两个场景:车载场景:触发条件:上下车、智驾开始、下雨、电量低执行操作:车控操作、导航、设置提醒示例query:“上车时打开空调”家庭场景:触发条件:温度/湿度 高于/低于某值,设备控制操作、设备状态、检测器检测结果执行操作:设备控制示例query:“每当关灯时关闭空调”、“每当卧室高于28度的时候打开电风扇”、“客厅有人移动时提醒我家里有人”参考文档:语音创建自动化方案" + }, + { + "agent_candidate": "Agent(tag=\"设备定时控制\")", + "confusing_labels": "待补充。", + "domain": "系统控制和IOT设备控制", + "examples": "二十秒后关灯晚上五点打开空调", + "function_candidate": "Query:二十秒后关灯code:(未共识)Query:晚上五点打开空调code:(未共识)满足:Skill阶段调用米家服务控制对应被控设备,并在当前设备上回复“已经操作了,要是没成功等下再试试”类的引导话术米家服务会调用对应设备,控制结果会通过异步push的方式再发给指令发起设备,通知控制结果", + "name": "设备定时控制", + "old_tag": "设备定时控制", + "path": "knowledge/标签/系统控制和IOT设备控制/设备定时控制.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "在设备控制的基础上增加时间相关的条件:定时控制:设定具体时间点,执行设备控制操作,例如“五点的时候打开空调”延时控制:设定延时时间段,执行设备控制操作,例如“十分钟后打开空调”" + }, + { + "agent_candidate": "Agent(tag=\"设备控制\")", + "confusing_labels": "待补充。", + "domain": "系统控制和IOT设备控制", + "examples": "打开空调扫地机扫一下客厅打开电视", + "function_candidate": "Query:关灯code:(未共识)Query:开空调code:(未共识)满足:Skill阶段调用米家服务控制对应被控设备,并在当前设备上回复“已经操作了,要是没成功等下再试试”类的引导话术米家服务会调用对应设备,控制结果会通过异步push的方式再发给指令发起设备,通知控制结果", + "name": "设备控制", + "old_tag": "设备控制", + "path": "knowledge/标签/系统控制和IOT设备控制/设备控制.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "通过语音控制IOT设备,IOT设备包含两种类型:主控设备:客户端安装小爱,具备语音交互能力,如:电视、扫地机被控设备:客户端没有安装小爱,不具备语音交互能力,如:空调、电饭煲、灯控制操作包括:打开关闭设备:例如“打开空调”、“关闭电视”设置设备属性:例如“洗衣机设置为烘干”、“空调二十六度”房间:对于有多个同类型设备的用户来说,可以通过房间槽位来区分不同设备,例如:“打开主卧空调”、“关闭次卧电视”" + }, + { + "agent_candidate": "Agent(tag=\"设备查找\")", + "confusing_labels": "记忆个人信息", + "domain": "系统控制和IOT设备控制", + "examples": "小爱你在哪找一下我的红米打开查找手机打开查找设备我的手环放哪了", + "function_candidate": "Query:查找我的手机code:(未共识)满足:skill调用查找手机服务,获取设备信息,发送响铃操作等,满足用户意图手机回复:我在这呢,看到我了吗,快来找我吧通过动画、闪光灯、震动、音效回应(仅手机支持)Query:查找我的手环code:(未共识)满足:跳转查找设备页面(除手机外其他设备跳转查找设备页面)Query:打开查找设备页面code:(未共识)满足:打开设备查找页面", + "name": "设备查找", + "old_tag": "设备查找", + "path": "knowledge/标签/系统控制和IOT设备控制/设备查找.md", + "principles": "小爱你在哪——控制xxxx在哪——无法区分设备是否是小米的可以记忆统一处理非小米手机、平板、耳机、手环的查找请求不属于设备查找,属于个人信息(TODO)", + "recommended_output_shape": "待确认。", + "scope": "设备查找功能描述:用户通过语音控制“小爱”来查找设备,此处包含两种情况:待查找设备可唤醒:例如用户找不到手机了,但是手机小爱可以唤醒。此时被唤醒的手机设备会通过声音、光效等方式提醒用户手机位置待查找设备不能唤醒:同样是查找手机,此时手机距离较远,用户无法直接唤醒手机,则可以通过唤醒音箱或电视设备来查找手机。同样会通过声音、光效等方式提醒用户手机位置可查找的设备:手机、平板、耳机。如果设备本身无法通过声音、光效等提醒用户位置(例如耳机),则会打开设备查找页面,告诉用户需要查找设备的位置信息除了直接查找设备,此类别也支持打开设备查找页面参考文档:findPhone功能迁移控制agent技术方案" + }, + { + "agent_candidate": "Agent(tag=\"车载控制\")", + "confusing_labels": "系统控制设备控制应用控制自动任务车载设备状态查询QA", + "domain": "系统控制和IOT设备控制", + "examples": "打开空调打开座椅加热自动泊车", + "function_candidate": "Query:打开车窗code:(未共识)Query:关闭智驾code:(未共识)code:device定义示例:满足:车载端本地执行调用对应设备执行操作,并获取执行结果,基于执行结果生成对应TTS", + "name": "车载控制", + "old_tag": "车载控制", + "path": "knowledge/标签/系统控制和IOT设备控制/车载控制.md", + "principles": "边界1:设备识别统一建模,对全部任意device统一定义,不区分车载还是iot场景,默认device是本机。在device正确的前提下,是否走IOT spec协议或协同响应等由skill或control agent自己判断。(TODO,中控设备决策做到什么程度,音箱端:打开摄像头)目前扫地机、洗衣机、冰箱是3个特例。边界2:条件任务,统一建模,全部按照自动任务的形式出function边界3:在车载端,车控优先", + "recommended_output_shape": "待确认。", + "scope": "车载端设备控制功能:设备类型:可控制的设备约200种,包括空调、雨刮、前备箱、灯等音区:设备和车内音区可以关联,音区包括主驾、副驾、后排、前排等,如果query中不包含音区则默认使用ASR识别音区。query中包含音区的示例为“打开主驾空调”、“关闭副驾车窗”。不包含音区的示例为“打开车窗”、“关闭雨刮”控制的操作包括:打开or关闭设备:例如“打开空调”、打开主驾空调设置设备属性:例如“前备箱最大开度设置为百分之五十”车载端特有控制功能:车载特有功能:智驾、泊车、哨兵、用车习惯、音区、行车记录仪、各类车控功能页面控制的操作包括:打开or关闭功能或页面:打开自动泊车、打开儿童锁页面设置功能属性:充电阈值设置为百分之八十参考文档:全量词表车控全功能梳理" + }, + { + "agent_candidate": "Agent(tag=\"人物问答\")", + "confusing_labels": "待补充。", + "domain": "通用问答", + "examples": "李溪芮是谁艾莎公主", + "function_candidate": "待确认。", + "name": "人物问答", + "old_tag": "人物问答", + "path": "knowledge/标签/通用问答/人物问答.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "人物相关问答,询问名人(互联网可搜索)的信息等" + }, + { + "agent_candidate": "Agent(tag=\"体育赛事问答\")", + "confusing_labels": "待补充。", + "domain": "通用问答", + "examples": "巴萨有哪些球员二零零八年北京冬奥会", + "function_candidate": "待确认。", + "name": "体育赛事问答", + "old_tag": "体育赛事问答", + "path": "knowledge/标签/通用问答/体育赛事问答.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "体育赛事播放--延伸QA运动赛事的相关问答,包括NBA、世锦赛、世界杯、奥运会等等的赛事问答" + }, + { + "agent_candidate": "Agent(tag=\"医疗问答\")", + "confusing_labels": "待补充。", + "domain": "通用问答", + "examples": "感觉甲醛对身体有害应该去医院看什么科测血糖的正确方法眼睛忽然看不见东西了是什么原因", + "function_candidate": "QA()", + "name": "医疗问答", + "old_tag": "医疗问答", + "path": "knowledge/标签/通用问答/医疗问答.md", + "principles": "时间问答见tools的文档Label定义-工具类如果用户query的满足方式是通过生活服务app(类似美团、大众点评等)搜索附近商家、购买食品等,这种要给生活服务中的美食,但是用户query的满足方式是获取做饭方面的知识,这种给到QA处理优先其他问答垂域,如果其他问答垂域不召,给到QA明确时间节点的时间计算的问答给到时间,不明确的时间计算,例如属狗的今年几岁了,龙年出生的人今年多大了,这种由于无法获取到具体时间,所以不能给时间垂域进行计算,只能给到通用问答优先其他搜索垂域,如果其他问答垂域不召,给到QA", + "recommended_output_shape": "待确认。", + "scope": "医疗类相关问答,提供健康咨询、病症解答、治疗建议等相关信息" + }, + { + "agent_candidate": "Agent(tag=\"图片问答\")", + "confusing_labels": "地图问答", + "domain": "通用问答", + "examples": "描述一下这张图这是什么车这是什么动物拍照看看我前面有什么", + "function_candidate": "VisionQA参数:imageSource:枚举类型direction:方位信息。大致为“前”、“后”、“左”、“右”、“左前”、“右前”、“左后”、“右后”、“附近”、“侧方”、“左上”、“右上”、“左下”、“右下”等object:业务加持信息。类别可枚举。Vehicle:车辆信息。包含三个可选参数:color (str): 车辆颜色brand (str): 车辆品牌,如小米、奔驰等type (str): 车辆类型,如救护车、军车等Text:阅读场景Food:食物场景Icon:图标/按钮场景Person:人物场景Animal:动物场景Plant:植物场景", + "name": "图片问答", + "old_tag": "图片问答", + "path": "knowledge/标签/通用问答/图片问答.md", + "principles": "图片问答所使用的信息源只有图片,没有其他方法调用或信息查询,如果使用了其他方法或信息源,给到其他具体垂域(待讨论)图片问答和翻译、文档总结、走哪问哪等边界问题", + "recommended_output_shape": "待确认。", + "scope": "使用VLM对图片内容进行理解并输出文字内容,所使用的信息源只有图片,没有其他方法调用或信息查询" + }, + { + "agent_candidate": "Agent(tag=\"彩票\")", + "confusing_labels": "待补充。", + "domain": "通用问答", + "examples": "二幺幺零八期双色球开奖结果最近一期的双色球昨天福彩双色球", + "function_candidate": "待确认。", + "name": "彩票", + "old_tag": "彩票", + "path": "knowledge/标签/通用问答/彩票.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "彩票相关问答,关于彩票的相关query" + }, + { + "agent_candidate": "Agent(tag=\"搜索\")", + "confusing_labels": "浏览器搜索含“百度/谷歌/搜一下”等 → 浏览器搜索(搜索引擎)。和各精品搜索之间的冲突:媒体资源类(音乐/电台/视频) 用户可能只是要“找”资源,但同时这些领域都有自己的播放类意图。“搜索/找/查” 且目标是歌曲、歌手、电台节目、视频 → 音乐搜索/电台搜索/视频搜索(落资源域的搜索子类,而不是通用搜索)。地图/生活相关搜索:带“地图搜/查找××地点/搜附近的××” → 落 地图|搜索。“搜附近餐厅/搜酒店/搜电影票” → 生活服务|搜索。图片搜索:“找/搜/图片/表情包/动图” → 图片产品/购物类的搜索:“搜小米品牌/型号/买/比价/同款” → 购物/产品推荐。在应用中搜索:在哔哩哔哩中搜索好看视频 搜索|哔哩哔哩", + "domain": "通用问答", + "examples": "“搜索一下牛顿是谁”“搜索水的化学式”", + "function_candidate": "QA()", + "name": "搜索", + "old_tag": "搜索", + "path": "knowledge/标签/通用问答/搜索.md", + "principles": "百科型单个名词实体(人/地/物/书/组织) → 百科(BaikeEntry)。衍生问句型(是谁/是什么/哪里) → Qabot(人物、概念、地理等)。知识类 QA明确对应到兜底知识库(化学式、节日来历、歇后语、古诗词、翻译等) → Qabot。和其他域冲突时图片为主 → 图片搜索导航为主 → 地图导航明确创作意图(写/生成/作文) → 文本创作医疗、菜谱、汽车等有单独垂域时 → 垂域优先", + "recommended_output_shape": "待确认。", + "scope": "搜索,通用性、基础性(其他垂域无法满足)的泛搜索意图当用户请求通用知识 / 网络搜索 / 百科条目 / 特定领域知识时进入本功能。包含:直接打开网站、调用搜索引擎、百科检索、各类兜底知识问答(人物、公司、动物、化学、节日、古诗词、影视、音乐、星座、翻译等)。" + }, + { + "agent_candidate": "Agent(tag=\"星座\")", + "confusing_labels": "时间", + "domain": "通用问答", + "examples": "六月二十一号是什么星座白羊座哪个星座男最顽固", + "function_candidate": "待确认。", + "name": "星座", + "old_tag": "星座", + "path": "knowledge/标签/通用问答/星座.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "星座类相关问答,关于星座的日期、性格特点、相互配对、运势、排名等咨询和讨论" + }, + { + "agent_candidate": "Agent(tag=\"民俗\")", + "confusing_labels": "时间", + "domain": "通用问答", + "examples": "我是孕妇我昨天晚上梦见我抓鱼抓不到十二生肖里的第六个动物是什么动物属龙的今年几岁端午节应该做什么", + "function_candidate": "待确认。", + "name": "民俗", + "old_tag": "民俗", + "path": "knowledge/标签/通用问答/民俗.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "民俗相关问答,具体的包括:梦的解析;属相、生肖相关问答;节日节气习俗;" + }, + { + "agent_candidate": "Agent(tag=\"烹饪指南\")", + "confusing_labels": "美食", + "domain": "通用问答", + "examples": "蛋包饭怎么做烤五花肉多少度请提供一个家常的土豆烧鸡料理食谱", + "function_candidate": "待确认。", + "name": "烹饪指南", + "old_tag": "烹饪指南", + "path": "knowledge/标签/通用问答/烹饪指南.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "菜谱/做饭类相关问答,提供各式菜肴制作方法,包括家常菜、快手菜、特色料理等" + }, + { + "agent_candidate": "Agent(tag=\"百科\")", + "confusing_labels": "待补充。", + "domain": "通用问答", + "examples": "什么是巾帼小爱大王花是什么呀十根烤肠是什么梗", + "function_candidate": "待确认。", + "name": "百科", + "old_tag": "百科", + "path": "knowledge/标签/通用问答/百科.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "百科类相关问答,查询概念、知识点、文化含义及常见用语解释" + }, + { + "agent_candidate": "Agent(tag=\"美食问答\")", + "confusing_labels": "待补充。", + "domain": "通用问答", + "examples": "兰州拉面来源于哪里保定特色美食有什么鲁菜菜系有哪些名菜", + "function_candidate": "待确认。", + "name": "美食问答", + "old_tag": "美食问答", + "path": "knowledge/标签/通用问答/美食问答.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "美食问答生活服务--餐饮服务(找餐厅)--延伸的QA问题" + }, + { + "agent_candidate": "Agent(tag=\"股票查询\")", + "confusing_labels": "QA()", + "domain": "通用问答", + "examples": "喜临门股票价格股票北矿科技原油期货黄金多少钱", + "function_candidate": "FinanceQA()参数:type:问题类型,如stock、goldprice等(不同的type,注入知识的三方数据接口可能不一样,精品展示的逻辑可能不一样)name:股票名称code:股票代码time:时间", + "name": "股票查询", + "old_tag": "股票查询", + "path": "knowledge/标签/通用问答/股票查询.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "股票查询,只包括具体股票(能够查到股票代码的)查询,没有股票推荐" + }, + { + "agent_candidate": "Agent(tag=\"角色扮演\")", + "confusing_labels": "待补充。", + "domain": "通用问答", + "examples": "请你扮演我的老师,我需要获取最新的在线课程的激活码。你是一家科技公司的CEO,请分享一下你的领导力秘诀。假设你是一名未来社会的领袖,你将如何建立一个和谐繁荣的社会", + "function_candidate": "待确认。", + "name": "角色扮演", + "old_tag": "角色扮演", + "path": "knowledge/标签/通用问答/角色扮演.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "角色扮演,用户要求扮演特定角色,进行互动或创作" + }, + { + "agent_candidate": "Agent(tag=\"词典\")", + "confusing_labels": "待补充。", + "domain": "通用问答", + "examples": "肯字怎么写那你知道二是咋写的吗", + "function_candidate": "Agent(tag=\"词典\")", + "name": "词典", + "old_tag": "词典", + "path": "knowledge/标签/通用问答/词典.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "对文字的笔画、笔顺、部首、读音等信息的查询,主要用于学习文字符号的读法、写法以便辅助使用,主要包括:按照字体结构的描述查询单字拼音缺字补齐成语字体结构含有指定单字搜索新字字体结构含有指定部首搜索新字按照字体结构推荐多个单字搜索符合标签描述的词语查询字或词的拼音查询单字的笔顺查询指定单字的字体结构按照读音推荐多个同音字查询单字的部首查询单字的笔画数" + }, + { + "agent_candidate": "Agent(tag=\"负面反馈\")", + "confusing_labels": "待补充。", + "domain": "通用问答", + "examples": "大傻逼", + "function_candidate": "待确认。", + "name": "负面反馈", + "old_tag": "负面反馈", + "path": "knowledge/标签/通用问答/负面反馈.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "情绪负反馈" + }, + { + "agent_candidate": "Agent(tag=\"重说\")", + "confusing_labels": "系统控制", + "domain": "通用问答", + "examples": "跟我学说话小爱对我说我爱你快叫爸爸", + "function_candidate": "待确认。", + "name": "重说", + "old_tag": "重说", + "path": "knowledge/标签/通用问答/重说.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "重说,要求助手重复用户说过的具体话语或指令" + }, + { + "agent_candidate": "Agent(tag=\"问答\")", + "confusing_labels": "时间、数学、天气、内容问答、地图问答、电话、产品问答、生活服务", + "domain": "通用问答", + "examples": "长方体的表面积是什么人固有一死或重于泰山或轻于鸿毛是谁说的", + "function_candidate": "待确认。", + "name": "问答", + "old_tag": "问答", + "path": "knowledge/标签/通用问答/问答.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "问答,各类通用性、基础性(其他垂域无法满足)问题。属于泛知识问答" + }, + { + "agent_candidate": "Agent(tag=\"闲聊\")", + "confusing_labels": "待补充。", + "domain": "通用问答", + "examples": "你认识老板娘吗以后我叫你叫畜生好不好真的期待", + "function_candidate": "chat()参数:type:目前只有一种取值\"wakeup\"(代表唤醒词query),非必填", + "name": "闲聊", + "old_tag": "闲聊", + "path": "knowledge/标签/通用问答/闲聊.md", + "principles": "待补充。", + "recommended_output_shape": "待确认。", + "scope": "闲聊,泛聊天意图,通常闲聊兜底" + } + ], + "objects": [ + { + "allow_unknown_params": false, + "name": "Location", + "params": { + "city": { + "description": "Optional[str] 城市名称", + "enum_values": [] + }, + "country": { + "description": "Optional[str] 国家名称", + "enum_values": [] + }, + "district": { + "description": "Optional[str] 县/区名称", + "enum_values": [] + }, + "poi": { + "description": "Optional[str] 景点或 POI 信息", + "enum_values": [] + }, + "province": { + "description": "Optional[str] 省份名称", + "enum_values": [] + }, + "town": { + "description": "Optional[str] 乡镇名称", + "enum_values": [] + } + }, + "path": "knowledge/输出能力/对象目录.md", + "summary": "获取用户所在或 query 指定的位置信息,包括国家、省份、城市、县/区、乡镇、景点或 POI,用于辅助地点相关查询。" + }, + { + "allow_unknown_params": false, + "name": "PersonalDate", + "params": { + "relation": { + "description": "List[str] 关系人,可以是本人、父母、配偶、子女、朋友姓名等", + "enum_values": [] + }, + "type": { + "description": "枚举:BIRTHDAY(生日),ANNIVERSARY(结婚纪念日)", + "enum_values": [ + "BIRTHDAY" + ] + } + }, + "path": "knowledge/输出能力/对象目录.md", + "summary": "获取用户个人相关的特定时间点,如生日、结婚纪念日,或者亲人、朋友的时间纪念日,用于辅助个人相关时间查询。" + }, + { + "allow_unknown_params": false, + "name": "Resource", + "params": { + "type": { + "description": "枚举:DOC、URL、IMAGE、VIDEO、AUDIO", + "enum_values": [ + "DOC", + "URL", + "IMAGE", + "VIDEO", + "AUDIO" + ] + } + }, + "path": "knowledge/输出能力/对象目录.md", + "summary": "资源类信息,包括文档、图片、视频、音频、网页等,用于辅助总结、问答或资源处理。" + }, + { + "allow_unknown_params": true, + "name": "Vehicle", + "params": {}, + "path": "knowledge/输出能力/对象目录.md", + "summary": "车辆信息,可包含 color、brand、type" + }, + { + "allow_unknown_params": true, + "name": "Food", + "params": {}, + "path": "knowledge/输出能力/对象目录.md", + "summary": "食物场景" + }, + { + "allow_unknown_params": true, + "name": "Icon", + "params": {}, + "path": "knowledge/输出能力/对象目录.md", + "summary": "图标、按钮、界面元素" + }, + { + "allow_unknown_params": true, + "name": "Person", + "params": {}, + "path": "knowledge/输出能力/对象目录.md", + "summary": "人物场景" + }, + { + "allow_unknown_params": true, + "name": "Animal", + "params": {}, + "path": "knowledge/输出能力/对象目录.md", + "summary": "动物场景" + }, + { + "allow_unknown_params": true, + "name": "Plant", + "params": {}, + "path": "knowledge/输出能力/对象目录.md", + "summary": "植物场景" + }, + { + "allow_unknown_params": true, + "name": "Text", + "params": {}, + "path": "knowledge/输出能力/对象目录.md", + "summary": "文字、题目、阅读场景" + }, + { + "allow_unknown_params": true, + "name": "Video", + "params": {}, + "path": "knowledge/输出能力/对象目录.md", + "summary": "视频" + }, + { + "allow_unknown_params": true, + "name": "Image", + "params": {}, + "path": "knowledge/输出能力/对象目录.md", + "summary": "图片" + }, + { + "allow_unknown_params": true, + "name": "Text", + "params": {}, + "path": "knowledge/输出能力/对象目录.md", + "summary": "文本" + } + ], + "schema_version": 1, + "skill": "label-master" +} diff --git a/skills/label-master/knowledge/索引/候选召回索引.md b/skills/label-master/knowledge/索引/候选召回索引.md new file mode 100644 index 0000000..b8d13a3 --- /dev/null +++ b/skills/label-master/knowledge/索引/候选召回索引.md @@ -0,0 +1,38 @@ +# 候选召回索引 + +这个索引用于 Agent 第一步快速缩小候选范围。它不直接给最终标签,只给“应该优先阅读哪些知识”的路线。 + +## 使用方式 + +1. 从 query 中提取动作、对象、资源、设备、上下文信号。 +2. 按下表召回 2-5 个候选标签或能力。 +3. 读取候选标签卡片和高频边界卡。 +4. 再进入输出形态判断,确认是 intent、function program 还是 `Agent(tag="xxx")` 包装。 + +## 召回表 + +| 信号 | 优先候选 | 需要继续读取 | +| --- | --- | --- | +| 导航、带我去、怎么去、路线、途经点、目的地、换路线 | 地图导航、地图问答 | [边界索引](../边界/边界索引.md),[地图导航](../标签/地图导航/地图导航.md),[地图问答](../标签/地图导航/地图问答.md) | +| 附近、周边、沿途、目的地附近 + 餐厅、美食、奶茶、海底捞、团购、排号 | 餐饮服务、餐厅订座排号、团购、地图问答、地图导航 | [地图问答-餐饮服务-旅游](../边界/高频混淆/地图问答-餐饮服务-旅游.md),[餐饮服务](../标签/生活服务/餐饮服务.md) | +| 景点、哪里好玩、门票、攻略、适合玩多久、营业时间、景区 | 旅游、地图问答、QA、餐饮服务 | [地图问答-餐饮服务-旅游](../边界/高频混淆/地图问答-餐饮服务-旅游.md),[旅游](../标签/生活服务/旅游.md) | +| 总结、概括、提炼、分析一下 + 文档、网页、URL、屏幕、附件、这篇文章 | 文档总结、Summarize、QA、文本创作、图片问答 | [通用问答-文档总结-Summarize](../边界/高频混淆/通用问答-文档总结-Summarize.md),[函数目录 Summarize](../输出能力/函数目录.md) | +| 介绍、解释、是什么、为什么、来源、原理、百科、搜索一下 | QA、问答、搜索、具体问答垂域 | [问答](../标签/通用问答/问答.md),[函数目录 QA](../输出能力/函数目录.md) | +| 写、生成、创作、润色、改写、作文、文案、剧本、诗歌 | 文本创作、作文、Generate、QA | [文本创作](../标签/AI创作/文本创作.md),[函数目录 Generate](../输出能力/函数目录.md) | +| 打开、关闭、调节、设置 + 音量、亮度、蓝牙、护眼、关机、截图、朗读屏幕 | 系统控制、应用控制、相机、声纹 | [系统控制-设备控制-车载控制](../边界/高频混淆/系统控制-设备控制-车载控制.md),[系统控制](../标签/系统控制和IOT设备控制/系统控制.md) | +| 打开、关闭、调节、设置 + 家居设备、灯、电视、扫地机、洗衣机、主卧/客厅/厨房 | 设备控制、设备定时控制、系统控制 | [系统控制-设备控制-车载控制](../边界/高频混淆/系统控制-设备控制-车载控制.md),[设备控制](../标签/系统控制和IOT设备控制/设备控制.md) | +| 打开、关闭、调节、设置 + 车窗、座椅、雨刮、前备箱、智驾、泊车、哨兵、驾驶模式 | 车载控制、车载设备状态查询、自动任务、系统控制 | [系统控制-设备控制-车载控制](../边界/高频混淆/系统控制-设备控制-车载控制.md),[车载控制](../标签/系统控制和IOT设备控制/车载控制.md) | +| 当、如果、时候、到达、之后、每、一...就、自动化、智能习惯、超级任务 | 自动任务、提醒、设备控制、车载控制 | [自动任务判断](../判断维度/自动任务判断.md),[自动任务](../标签/系统控制和IOT设备控制/自动任务.md) | +| 播放、放一首、来点、听、看、打开视频、打开音乐 | 音乐播放、视频播放、电台播放、媒体应用播放 | [内容播放-播放器控制-播放状态](../边界/高频混淆/内容播放-播放器控制-播放状态.md) | +| 下一首、上一首、暂停、继续、快进、跳到、循环播放 | 播放器控制、媒体资源切换、音乐播放、视频播放 | [内容播放-播放器控制-播放状态](../边界/高频混淆/内容播放-播放器控制-播放状态.md) | +| 现在放的是什么、这首歌是谁唱的、介绍一下这个歌手、识别一下这首歌 | 播放状态查询、听歌识曲、音乐问答、QA | [内容播放-播放器控制-播放状态](../边界/高频混淆/内容播放-播放器控制-播放状态.md) | +| 今天几号、几点了、星期几、节日、节气、多久、多少天后 | CalendarQA、TimeDistance、TimeCalculate、QA | [函数目录](../输出能力/函数目录.md),[时间](../标签/工具类/时间.md) | +| 天气、温度、空气质量、穿衣、洗车指数 | WeatherQA、天气、QA | [函数目录 WeatherQA](../输出能力/函数目录.md),[天气](../标签/工具类/天气.md) | +| 股票、基金、黄金、期货、A 股、推荐股票 | FinanceQA、股票查询、QA | [函数目录 FinanceQA](../输出能力/函数目录.md),[股票查询](../标签/通用问答/股票查询.md) | +| 这张图、屏幕上、前面的、拍照看看、图片里、第二题 | VisionQA、图片问答、图像编辑、相机 | [函数目录 VisionQA](../输出能力/函数目录.md),[图片问答](../标签/通用问答/图片问答.md) | + +## 注意 + +- 召回索引只做第一步缩小范围,不作为最终规则。 +- 如果召回表和当前用户定义冲突,以当前用户定义为准。 +- 如果某类混淆反复出现,但召回表没有覆盖,应新增一行并补充高频边界卡。 diff --git a/skills/label-master/knowledge/索引/标签索引.md b/skills/label-master/knowledge/索引/标签索引.md new file mode 100644 index 0000000..86610ca --- /dev/null +++ b/skills/label-master/knowledge/索引/标签索引.md @@ -0,0 +1,131 @@ +# 标签索引 + +这个索引用于 Agent 第一阶段快速判断候选标签和输出形态。详细边界仍需读取具体标签卡片和边界文件。 + +| 领域 | 标签 | 旧 tag 标签 | Agent 形式候选 | Function 形式候选 | 知识卡片 | +| --- | --- | --- | --- | --- | --- | +| AI创作 | 代码创作 | 代码创作 | Agent(tag="代码创作") | Object = Code and Function = Create用python写一段快排的代码code:满足:@a... | [代码创作](../标签/AI创作/代码创作.md) | +| AI创作 | 作文 | 应该属于文本创作 | Agent(tag="文本创作") | 待确认 | [作文](../标签/AI创作/作文.md) | +| AI创作 | 图像创作 | 图像创作 | Agent(tag="图像创作") | 文生图:query:画一个钢铁侠code:满足:@aicreative-agent 对于该语义构造 largemodel... | [图像创作](../标签/AI创作/图像创作.md) | +| AI创作 | 图像编辑 | 图像编辑 | Agent(tag="图像编辑") | Object = Image and (Function = Adjust or Add or Remove or Ex... | [图像编辑](../标签/AI创作/图像编辑.md) | +| AI创作 | 图片搜索(图片) | 图片搜索(图片) | Agent(tag="图片搜索(图片)") | #query1:搜一下钢铁侠的图片、钢铁侠长什么样(歧义)code:满足:@aicreative-agent 对于该语义... | [图片搜索(图片)](../标签/AI创作/图片搜索-图片.md) | +| AI创作 | 文本创作 | 文本创作 | Agent(tag="文本创作") | 写一个都市剧剧本code:满足:@aicreative-agent 对于该语义构造 largemodelParamsll... | [文本创作](../标签/AI创作/文本创作.md) | +| AI创作 | 视频创作 | 视频创作 | Agent(tag="视频创作") | 视频生成:code:满足:@暂不支持该功能视频剪辑/智能成片:剪辑视频泛意图:编辑素材泛意图:将素材剪辑成视频:导出视频 | [视频创作](../标签/AI创作/视频创作.md) | +| 内容和媒体播放 | 体育赛事播放 | 体育赛事播放 | Agent(tag="体育赛事播放") | Query: 播放英超直播 | [体育赛事播放](../标签/内容和媒体播放/体育赛事播放.md) | +| 内容和媒体播放 | 体育赛事问答 | 体育赛事问答 | Agent(tag="体育赛事问答") | Query: 湖人现在排名第几? | [体育赛事问答](../标签/内容和媒体播放/体育赛事问答.md) | +| 内容和媒体播放 | 体育赛事预约 | 体育赛事预约 | Agent(tag="体育赛事预约") | Query: 提醒我今晚 8 点看国足比赛 | [体育赛事预约](../标签/内容和媒体播放/体育赛事预约.md) | +| 内容和媒体播放 | 古诗播放 | 古诗播放 | Agent(tag="古诗播放") | 按诗歌名搜索#query1: 播放静夜思按诗句、诗人搜索#query2: 李白写的白发三千尺按题材推荐#query3: ... | [古诗播放](../标签/内容和媒体播放/古诗播放.md) | +| 内容和媒体播放 | 古诗词问答 | 古诗词问答 | Agent(tag="古诗词问答") | #query1: 床前明月光出自哪首诗/遥想公瑾当年是谁写的/一夫当关万夫莫开的意思code:结果满足(同老垂域):全设... | [古诗词问答](../标签/内容和媒体播放/古诗词问答.md) | +| 内容和媒体播放 | 听歌识曲 | 听歌识曲 | Agent(tag="听歌识曲") | #query: 现在放的是什么歌(后台没有音乐播放)#query: 听歌识曲/识别一下这首歌code:结果满足:手机: ... | [听歌识曲](../标签/内容和媒体播放/听歌识曲.md) | +| 内容和媒体播放 | 声音博物馆 | 声音博物馆 | Agent(tag="声音博物馆") | Query: 播放老北京叫卖录音 | [声音博物馆](../标签/内容和媒体播放/声音博物馆.md) | +| 内容和媒体播放 | 媒体应用播放 | 媒体应用播放 | Agent(tag="媒体应用播放") | Query: 用爱奇艺播放《狂飙》 | [媒体应用播放](../标签/内容和媒体播放/媒体应用播放.md) | +| 内容和媒体播放 | 媒体资源切换(内容控制) | 媒体资源切换(内容控制) | Agent(tag="媒体资源切换(内容控制)") | 待确认 | [媒体资源切换(内容控制)](../标签/内容和媒体播放/媒体资源切换(内容控制).md) | +| 内容和媒体播放 | 播放器控制(系统控制) | 播放器控制(系统控制) | Agent(tag="播放器控制(系统控制)") | Query: 下一首 | [播放器控制(系统控制)](../标签/内容和媒体播放/播放器控制(系统控制).md) | +| 内容和媒体播放 | 播放状态查询 | 播放状态查询 | Agent(tag="播放状态查询") | #query: 现在放的是什么歌(后台有音乐播放)code:结果满足:ContentAgentSkill通用注入当前音频... | [播放状态查询](../标签/内容和媒体播放/播放状态查询.md) | +| 内容和媒体播放 | 新闻 | 新闻 | Agent(tag="新闻") | Query: 播放最新财经新闻 | [新闻](../标签/内容和媒体播放/新闻.md) | +| 内容和媒体播放 | 歌单 | 歌单 | Agent(tag="歌单") | Query: 播放我的晨跑歌单 | [歌单](../标签/内容和媒体播放/歌单.md) | +| 内容和媒体播放 | 电台播放 | 电台播放 | Agent(tag="电台播放") | 单实体(非明确播放意图)#query1: 默读、完美世界(非明确播放意图)#query2: 米小圈上学记(明确播放意图)... | [电台播放](../标签/内容和媒体播放/电台播放.md) | +| 内容和媒体播放 | 电台问答 | 电台问答 | Agent(tag="电台问答") | code:结果满足:ContentAgentSkill通用注入当前音频播放信息及session信息根据具体电台的cpRe... | [电台问答](../标签/内容和媒体播放/电台问答.md) | +| 内容和媒体播放 | 电视频道 | 电视频道 | Agent(tag="电视频道") | Query: 切到 CCTV-5 | [电视频道](../标签/内容和媒体播放/电视频道.md) | +| 内容和媒体播放 | 视频播放 | 视频播放 | Agent(tag="视频播放") | 单实体(非明确播放意图)#query1: 公主、一九四二(非明确播放意图)#query2: 战狼2、陈情令(明确播放意图... | [视频播放](../标签/内容和媒体播放/视频播放.md) | +| 内容和媒体播放 | 视频问答 | 视频问答 | Agent(tag="视频问答") | 典型query类别1code:结果满足:ContentAgentSkill通用注入当前视频播放信息、列表页资源信息及se... | [视频问答](../标签/内容和媒体播放/视频问答.md) | +| 内容和媒体播放 | 讲笑话 | 讲笑话 | Agent(tag="讲笑话") | Query: 给我讲个冷笑话 | [讲笑话](../标签/内容和媒体播放/讲笑话.md) | +| 内容和媒体播放 | 音乐播放 | 音乐播放 | Agent(tag="音乐播放") | 单实体(非明确播放意图)#query1: 不必太在乎、天下的乌鸦一般黑 (非明确播放意图)#query2: 七里香、忘情... | [音乐播放](../标签/内容和媒体播放/音乐播放.md) | +| 内容和媒体播放 | 音乐问答 | 音乐问答 | Agent(tag="音乐问答") | 典型query类别1:code:结果满足:ContentAgentSkill通用注入当前音频播放信息及session信息... | [音乐问答](../标签/内容和媒体播放/音乐问答.md) | +| 地图导航 | 地图导航 | 地图导航 | Agent(tag="地图导航") | 待确认 | [地图导航](../标签/地图导航/地图导航.md) | +| 地图导航 | 地图设置 | 地图设置 | Agent(tag="地图设置") | 待确认 | [地图设置](../标签/地图导航/地图设置.md) | +| 地图导航 | 地图问答 | 地图问答 | Agent(tag="地图问答") | 1.AnswerTrafficJam()查询拥堵2.SearchRoute查询路线3.AnswerTransport查询... | [地图问答](../标签/地图导航/地图问答.md) | +| 地图导航 | 地址设置 | 地址设置b1fa3050279749969615eaacab3f... | Agent(tag="地址设置") | 待确认 | [地址设置](../标签/地图导航/地址设置.md) | +| 地图导航 | 走哪问哪 | 走哪问哪 | Agent(tag="走哪问哪") | AnswerGoAsk走哪问哪AnswerKnowledgeSearch走问qa | [走哪问哪](../标签/地图导航/走哪问哪.md) | +| 地图导航 | 违章查询 | 违章查询 | Agent(tag="违章查询") | AnswerRestrictRegion指定区域查询限行AnswerRestrictOuter指定区域查询外地车牌限行A... | [违章查询](../标签/地图导航/违章查询.md) | +| 地图导航 | 限号查询 | 限号查询 | Agent(tag="限号查询") | AnswerDeduction查询城市限行扣分规则 | [限号查询](../标签/地图导航/限号查询.md) | +| 小米产品问答 | 家用设备状态查询(IoT) | 家用设备状态查询(IoT) | Agent(tag="家用设备状态查询(IoT)") | 待确认 | [家用设备状态查询(IoT)](../标签/小米产品问答/家用设备状态查询(IoT).md) | +| 小米产品问答 | 小爱帮助 | 小爱帮助 | Agent(tag="小爱帮助") | 待确认 | [小爱帮助](../标签/小米产品问答/小爱帮助.md) | +| 小米产品问答 | 小米产品帮助 | 小米产品帮助 | Agent(tag="小米产品帮助") | 参数:goods:产品名关键词,例:小米十三、SU7brand: 产品品牌,比如: "小米,华为"attribute: ... | [小米产品帮助](../标签/小米产品问答/小米产品帮助.md) | +| 小米产品问答 | 手车互联 | 手车互联 | Agent(tag="手车互联") | 待确认 | [手车互联](../标签/小米产品问答/手车互联.md) | +| 小米产品问答 | 系统状态查询 | 系统状态查询 | Agent(tag="系统状态查询") | deviceType:用户查询的设备场景,例:车载、眼镜、通用、unknownQuery: 这辆车还有多少点电code:... | [系统状态查询](../标签/小米产品问答/系统状态查询.md) | +| 小米产品问答 | 车载设备状态查询 | 车载设备状态查询 | Agent(tag="车载设备状态查询") | 待确认 | [车载设备状态查询](../标签/小米产品问答/车载设备状态查询.md) | +| 工具类 | Kinship | 待确认 | 待确认 | 待确认 | [Kinship](../标签/工具类/Kinship.md) | +| 工具类 | 主动记忆 | 主动记忆主动记忆的增、删、改功能 | Agent(tag="主动记忆") | x0=Memory(type="DEFAULT",category="身份证",attributes=["号码"],re... | [主动记忆](../标签/工具类/主动记忆.md) | +| 工具类 | 倒数日 | 倒数日倒数日的增、删、改、查、打开、关闭、继续、暂停等等超过24... | Agent(tag="倒数日") | x0 = Timer(type="COUNTDOWN")Search(timer=[x0]) | [倒数日](../标签/工具类/倒数日.md) | +| 工具类 | 倒计时 | 倒计时倒计时/秒表的增、删、改、查、打开、关闭、继续、暂停等等,... | Agent(tag="倒计时") | x0 = Timer()Search(timer=[x0])x0 = Timer(type="STOPWATCH")Se... | [倒计时](../标签/工具类/倒计时.md) | +| 工具类 | 健康控制 | 健康控制打开关闭某运动健康功能界面开始停止暂停继续某运动模式开始... | Agent(tag="健康控制") | x0=FitnessHealth(category="SPORTCOURSE")Open(fitness=x0) | [健康控制](../标签/工具类/健康控制.md) | +| 工具类 | 单位换算 | 单位换算 | Agent(tag="单位换算") | query:三千米等于多少毫米类型:Function功能:单位转换参数:value: str 数值source: str... | [单位换算](../标签/工具类/单位换算.md) | +| 工具类 | 发短信 | 发短信 | Agent(tag="发短信") | x0 = Contact(type="DEFAULT", name="张三", category="NORMAL")Se... | [发短信](../标签/工具类/发短信.md) | +| 工具类 | 地震 | 地震 | Agent(tag="地震") | EarthquakeQA()参数 | [地震](../标签/工具类/地震.md) | +| 工具类 | 外语翻译 | 外语翻译 | Agent(tag="外语翻译") | Translate类型:Function功能:翻译信息参数:type:枚举类型,翻译内容的来源content: Opti... | [外语翻译](../标签/工具类/外语翻译.md) | +| 工具类 | 外语词典查询 | 外语词典查询 | Agent(tag="外语词典查询") | 待确认 | [外语词典查询](../标签/工具类/外语词典查询.md) | +| 工具类 | 外语造句 | 外语造句 | Agent(tag="外语造句") | 待确认 | [外语造句](../标签/工具类/外语造句.md) | +| 工具类 | 外语问答 | 外语问答 | Agent(tag="外语问答") | 待确认 | [外语问答](../标签/工具类/外语问答.md) | +| 工具类 | 天气 | 天气 | Agent(tag="天气") | WeatherQA()参数 | [天气](../标签/工具类/天气.md) | +| 工具类 | 实数性质与计算 | 待确认 | 待确认 | 待确认 | [实数性质与计算](../标签/工具类/实数性质与计算.md) | +| 工具类 | 小学数学应用题 | 待确认 | 待确认 | 待确认 | [小学数学应用题](../标签/工具类/小学数学应用题.md) | +| 工具类 | 工资税收计算 | 待确认 | 待确认 | 待确认 | [工资税收计算](../标签/工具类/工资税收计算.md) | +| 工具类 | 打电话 | 打电话 | Agent(tag="打电话") | x0 = Contact(type="SCREEN")MakeCall(object=x0) | [打电话](../标签/工具类/打电话.md) | +| 工具类 | 提醒 | 提醒提醒/日程的增、删、改、查、打开、关闭等等关于日期的提醒、记... | Agent(tag="提醒") | x0 = Reminder()Search(reminder=[x0])x0 = Reminder(type="CALE... | [提醒](../标签/工具类/提醒.md) | +| 工具类 | 数学计算 | 数学计算 | Agent(tag="数学计算") | 工具类问答介绍和优化方案formula参数:query:2的3次方等于几当前结果满足:【手机/平板端】时间/计算器 大模... | [数学计算](../标签/工具类/数学计算.md) | +| 工具类 | 文档总结 | 文档总结关于文档、url的总结与内容问答,如果文档的文字以图片形... | Agent(tag="文档总结") | x0 = Resource(type="DOC")Summarize(object=x0) | [文档总结](../标签/工具类/文档总结.md) | +| 工具类 | 时间 | 时间 | Agent(tag="时间") | CalendarQA类型:Object功能:日历信息查询参数:type: 枚举类型,查询的时间类型target_time... | [时间](../标签/工具类/时间.md) | +| 工具类 | 时间距离计算 | 时间距离计算 | Agent(tag="时间距离计算") | TimeDistance类型:Function功能:时间距离计算参数:type:枚举类型,时间粒度start_time:... | [时间距离计算](../标签/工具类/时间距离计算.md) | +| 工具类 | 标准身高计算标准体重计算 | 待确认 | 待确认 | 待确认 | [标准身高计算标准体重计算](../标签/工具类/标准身高计算标准体重计算.md) | +| 工具类 | 留言 | 留言 | Agent(tag="留言") | 暂无迁移计划 | [留言](../标签/工具类/留言.md) | +| 工具类 | 竖式计算 | 竖式计算 | Agent(tag="竖式计算") | query:一加二加三加到九十九等于多少当前结果满足:【手机/平板端】时间/计算器 大模型结果展示精品卡片-技术方案小爱... | [竖式计算](../标签/工具类/竖式计算.md) | +| 工具类 | 简单数学问题 | 简单数学问题 | Agent(tag="简单数学问题") | 待确认 | [简单数学问题](../标签/工具类/简单数学问题.md) | +| 工具类 | 翻译功能操作 | 翻译功能操作 | Agent(tag="翻译功能操作") | x0=XiaoAiTranslation(name="REALTIME")Close(object=x0) | [翻译功能操作](../标签/工具类/翻译功能操作.md) | +| 工具类 | 课程表 | 课程表 | Agent(tag="课程表") | 无 | [课程表](../标签/工具类/课程表.md) | +| 工具类 | 通讯录 | 通讯录 | Agent(tag="通讯录") | SynchronizeContacts() | [通讯录](../标签/工具类/通讯录.md) | +| 工具类 | 闹钟 | 闹钟闹钟/小憩定时闹钟的增、删、改、查、打开、关闭,倒计时和闹钟... | Agent(tag="闹钟") | x0 = Alarm()Search(alarm=[x0])x0 = Alarm(type="RESTMODE")Sea... | [闹钟](../标签/工具类/闹钟.md) | +| 应用控制和搜索 | 应用定时控制 | 应用定时控制 | Agent(tag="应用定时控制") | 待确认 | [应用定时控制](../标签/应用控制和搜索/应用定时控制.md) | +| 应用控制和搜索 | 应用控制 | 应用控制 | Agent(tag="应用控制") | function定义:参数定义:app: 对应的应用名page: 打开的对应的页面Action: 具体的操作,如:ope... | [应用控制](../标签/应用控制和搜索/应用控制.md) | +| 应用控制和搜索 | 搜索\|应用名(搜索\|QQ音乐) | 搜索\|应用名(搜索\|QQ音乐) | Agent(tag="搜索\|应用名(搜索\|QQ音乐)") | function定义:参数定义:app: 对应的应用名content: 需要搜索的内容示例:Query:打开快手搜索情侣... | [搜索\|应用名(搜索\|QQ音乐)](../标签/应用控制和搜索/搜索-应用名-QQ音乐.md) | +| 应用控制和搜索 | 浏览器搜索 | 浏览器搜索 | Agent(tag="浏览器搜索") | 待确认 | [浏览器搜索](../标签/应用控制和搜索/浏览器搜索.md) | +| 生活服务 | 交通购票 | 交通购票 | Agent(tag="交通购票") | function定义:参数定义: | [交通购票](../标签/生活服务/交通购票.md) | +| 生活服务 | 商品信息对比 | 商品信息对比 | Agent(tag="商品信息对比") | function定义:参数定义: | [商品信息对比](../标签/生活服务/商品信息对比.md) | +| 生活服务 | 商品推荐 | 商品推荐 | Agent(tag="商品推荐") | function定义:参数定义:goods_name: 产品名,购买的物品名goods_brand: 品牌名,物品的品牌 | [商品推荐](../标签/生活服务/商品推荐.md) | +| 生活服务 | 商品购买 | 商品购买 | Agent(tag="商品购买") | function定义:参数定义:goods_name: 产品名,购买的物品名goods_brand: 品牌名,物品的品牌... | [商品购买](../标签/生活服务/商品购买.md) | +| 生活服务 | 商品购买、应用名 | 商品购买、应用名 | Agent(tag="商品购买、应用名") | 同上 | [商品购买、应用名](../标签/生活服务/商品购买、应用名.md) | +| 生活服务 | 团购 | 团购 | Agent(tag="团购") | function定义: | [团购](../标签/生活服务/团购.md) | +| 生活服务 | 外卖 | 外卖 | Agent(tag="外卖") | function定义:参数定义:app:应用名type:外卖的类别 | [外卖](../标签/生活服务/外卖.md) | +| 生活服务 | 平台比价->商品比价 | 平台比价->商品比价 | Agent(tag="平台比价->商品比价") | function定义:参数定义: | [平台比价->商品比价](../标签/生活服务/平台比价-、商品比价.md) | +| 生活服务 | 快递服务 | 快递服务 | Agent(tag="快递服务") | function定义:参数定义:app: 对应的应用名attribute: 快递的属性,比如:查询,邮寄示例数据:Que... | [快递服务](../标签/生活服务/快递服务.md) | +| 生活服务 | 打车 | 打车 | Agent(tag="打车") | function定义:参数定义:location: 地址信息,包括目的地,起点等app: 使用打车的应用名 | [打车](../标签/生活服务/打车.md) | +| 生活服务 | 找同款 | 找同款 | Agent(tag="找同款") | function定义:参数定义:app: 对应的应用名goods_name: 产品名,购买的物品名attribute: ... | [找同款](../标签/生活服务/找同款.md) | +| 生活服务 | 旅游 | 旅游 | Agent(tag="旅游") | function定义:参数定义: | [旅游](../标签/生活服务/旅游.md) | +| 生活服务 | 汽车服务 | 汽车服务 | Agent(tag="汽车服务") | 待确认 | [汽车服务](../标签/生活服务/汽车服务.md) | +| 生活服务 | 生活服务 | 生活服务 | Agent(tag="生活服务") | 待确认 | [生活服务](../标签/生活服务/生活服务.md) | +| 生活服务 | 生活缴费 | 生活缴费 | Agent(tag="生活缴费") | 待确认 | [生活缴费](../标签/生活服务/生活缴费.md) | +| 生活服务 | 电影票购买 | 电影票购买 | Agent(tag="电影票购买") | function定义:参数定义:cinema:影院名示例query:买五彩城CGV影院的电影票 | [电影票购买](../标签/生活服务/电影票购买.md) | +| 生活服务 | 航班信息查询 | 航班信息查询 | Agent(tag="航班信息查询") | function定义:参数定义:name:航班名 | [航班信息查询](../标签/生活服务/航班信息查询.md) | +| 生活服务 | 话费流量服务 | 话费流量服务 | Agent(tag="话费流量服务") | 待确认 | [话费流量服务](../标签/生活服务/话费流量服务.md) | +| 生活服务 | 购物 | 购物订单查询 | Agent(tag="购物") | function定义:参数定义:app: 对应的应用名attribute: 订单的属性,如:未付款,未收货等等示例数据:... | [购物](../标签/生活服务/购物.md) | +| 生活服务 | 酒店 | 酒店 | Agent(tag="酒店") | function定义:参数定义:name:酒店名location: 酒店地址 | [酒店](../标签/生活服务/酒店.md) | +| 生活服务 | 餐厅订座排号 | 餐厅订座排号 | Agent(tag="餐厅订座排号") | function定义:参数定义:num_person: 人数的多少open_time: 预定的时间name: 预定的餐厅... | [餐厅订座排号](../标签/生活服务/餐厅订座排号.md) | +| 生活服务 | 餐饮服务 | 餐饮服务 | Agent(tag="餐饮服务") | function定义:参数定义:location : 地址信息 | [餐饮服务](../标签/生活服务/餐饮服务.md) | +| 系统控制和IOT设备控制 | 声纹 | 声纹 | Agent(tag="声纹") | Query:录入声纹code:(未共识)满足:录入用户声纹信息并存储,后续每次ASR识别会带上用户的声纹特征,基于此特征... | [声纹](../标签/系统控制和IOT设备控制/声纹.md) | +| 系统控制和IOT设备控制 | 家庭传声 | 家庭传声 | Agent(tag="家庭传声") | Query:对全家说生日快乐code:(未共识)满足:语义理解:明确是家庭传声需求通过米家成员信息接口获取家庭成员信息融... | [家庭传声](../标签/系统控制和IOT设备控制/家庭传声.md) | +| 系统控制和IOT设备控制 | 相机 | 相机 | Agent(tag="相机") | Query:打开相机倒计时code:(未共识)Query:打开相机code:(未共识)满足:调用系统级能力,打开相机或设... | [相机](../标签/系统控制和IOT设备控制/相机.md) | +| 系统控制和IOT设备控制 | 系统定时控制 | 系统定时控制 | Agent(tag="系统定时控制") | Query:五分钟后关机code:(未共识)满足:调用系统层接口传输“定时” or “延时”参数,需要系统层支持才能实现... | [系统定时控制](../标签/系统控制和IOT设备控制/系统定时控制.md) | +| 系统控制和IOT设备控制 | 系统控制 | 系统控制 | Agent(tag="系统控制") | Query:音量大一点code:(未共识)Query:打开蓝牙code:(未共识)满足:调用系统层面接口完成对应控制,并... | [系统控制](../标签/系统控制和IOT设备控制/系统控制.md) | +| 系统控制和IOT设备控制 | 自动任务 | 自动任务 | Agent(tag="自动任务") | Query:上车时打开空调和座椅加热code:(未共识)Query:主驾下车时提醒我拿手机code:(未共识)满足:pl... | [自动任务](../标签/系统控制和IOT设备控制/自动任务.md) | +| 系统控制和IOT设备控制 | 设备定时控制 | 设备定时控制 | Agent(tag="设备定时控制") | Query:二十秒后关灯code:(未共识)Query:晚上五点打开空调code:(未共识)满足:Skill阶段调用米家... | [设备定时控制](../标签/系统控制和IOT设备控制/设备定时控制.md) | +| 系统控制和IOT设备控制 | 设备控制 | 设备控制 | Agent(tag="设备控制") | Query:关灯code:(未共识)Query:开空调code:(未共识)满足:Skill阶段调用米家服务控制对应被控设... | [设备控制](../标签/系统控制和IOT设备控制/设备控制.md) | +| 系统控制和IOT设备控制 | 设备查找 | 设备查找 | Agent(tag="设备查找") | Query:查找我的手机code:(未共识)满足:skill调用查找手机服务,获取设备信息,发送响铃操作等,满足用户意图... | [设备查找](../标签/系统控制和IOT设备控制/设备查找.md) | +| 系统控制和IOT设备控制 | 车载控制 | 车载控制 | Agent(tag="车载控制") | Query:打开车窗code:(未共识)Query:关闭智驾code:(未共识)code:device定义示例:满足:车... | [车载控制](../标签/系统控制和IOT设备控制/车载控制.md) | +| 通用问答 | 人物问答 | 人物问答 | Agent(tag="人物问答") | 待确认 | [人物问答](../标签/通用问答/人物问答.md) | +| 通用问答 | 体育赛事问答 | 体育赛事问答 | Agent(tag="体育赛事问答") | 待确认 | [体育赛事问答](../标签/通用问答/体育赛事问答.md) | +| 通用问答 | 医疗问答 | 医疗问答 | Agent(tag="医疗问答") | QA() | [医疗问答](../标签/通用问答/医疗问答.md) | +| 通用问答 | 图片问答 | 图片问答 | Agent(tag="图片问答") | VisionQA参数:imageSource:枚举类型direction:方位信息。大致为“前”、“后”、“左”、“右”... | [图片问答](../标签/通用问答/图片问答.md) | +| 通用问答 | 彩票 | 彩票 | Agent(tag="彩票") | 待确认 | [彩票](../标签/通用问答/彩票.md) | +| 通用问答 | 搜索 | 搜索 | Agent(tag="搜索") | QA() | [搜索](../标签/通用问答/搜索.md) | +| 通用问答 | 星座 | 星座 | Agent(tag="星座") | 待确认 | [星座](../标签/通用问答/星座.md) | +| 通用问答 | 民俗 | 民俗 | Agent(tag="民俗") | 待确认 | [民俗](../标签/通用问答/民俗.md) | +| 通用问答 | 烹饪指南 | 烹饪指南 | Agent(tag="烹饪指南") | 待确认 | [烹饪指南](../标签/通用问答/烹饪指南.md) | +| 通用问答 | 百科 | 百科 | Agent(tag="百科") | 待确认 | [百科](../标签/通用问答/百科.md) | +| 通用问答 | 美食问答 | 美食问答 | Agent(tag="美食问答") | 待确认 | [美食问答](../标签/通用问答/美食问答.md) | +| 通用问答 | 股票查询 | 股票查询 | Agent(tag="股票查询") | FinanceQA()参数:type:问题类型,如stock、goldprice等(不同的type,注入知识的三方数据接... | [股票查询](../标签/通用问答/股票查询.md) | +| 通用问答 | 角色扮演 | 角色扮演 | Agent(tag="角色扮演") | 待确认 | [角色扮演](../标签/通用问答/角色扮演.md) | +| 通用问答 | 词典 | 词典 | Agent(tag="词典") | Agent(tag="词典") | [词典](../标签/通用问答/词典.md) | +| 通用问答 | 负面反馈 | 负面反馈 | Agent(tag="负面反馈") | 待确认 | [负面反馈](../标签/通用问答/负面反馈.md) | +| 通用问答 | 重说 | 重说 | Agent(tag="重说") | 待确认 | [重说](../标签/通用问答/重说.md) | +| 通用问答 | 问答 | 问答 | Agent(tag="问答") | 待确认 | [问答](../标签/通用问答/问答.md) | +| 通用问答 | 闲聊 | 闲聊 | Agent(tag="闲聊") | chat()参数:type:目前只有一种取值"wakeup"(代表唤醒词query),非必填 | [闲聊](../标签/通用问答/闲聊.md) | diff --git a/skills/label-master/knowledge/索引/维度索引.md b/skills/label-master/knowledge/索引/维度索引.md new file mode 100644 index 0000000..4d7248a --- /dev/null +++ b/skills/label-master/knowledge/索引/维度索引.md @@ -0,0 +1,17 @@ +# 维度索引 + +这个索引用于 Agent 在第一阶段判断是否需要加载额外维度知识。不要把这些维度混入业务标签树。 + +| 维度 | 何时读取 | 文件 | +| --- | --- | --- | +| 标注输出形态 | 需要生成训练/评测 target,或卡片中同时存在旧 tag 与 Function 定义时 | [标注输出形态](../判断维度/标注输出形态.md),并继续读取 [输出能力](../输出能力/README.md) | +| 复杂度判断 | 需要判断 complex / 快慢系统,或 query 可能需要规划、推理、多步骤处理时 | [复杂度判断](../判断维度/复杂度判断.md) | +| 多指令判断 | query 包含多个动作、并列连接、多个设备/位置/方向,或需要拆分 subquery 时 | [多指令判断](../判断维度/多指令判断.md) | +| 自动任务判断 | query 包含“当/如果/时候/之后/到达/每/一...就”等条件触发结构,或涉及超级任务/提醒/自动化时 | [自动任务判断](../判断维度/自动任务判断.md) | + +## 推荐加载策略 + +1. 先读 `决策流程.md`,判断是否需要结构维度。 +2. 如果只是普通标签边界,不一定读取维度文件。 +3. 如果 query 结构复杂,按需读取 `复杂度判断.md`、`多指令判断.md`、`自动任务判断.md`。 +4. 如果要写最终 target,必须读取 `标注输出形态.md` 和 `输出能力/输出组合规范.md`。 diff --git a/skills/label-master/knowledge/输出能力/README.md b/skills/label-master/knowledge/输出能力/README.md new file mode 100644 index 0000000..fd953a0 --- /dev/null +++ b/skills/label-master/knowledge/输出能力/README.md @@ -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。 diff --git a/skills/label-master/knowledge/输出能力/函数目录.md b/skills/label-master/knowledge/输出能力/函数目录.md new file mode 100644 index 0000000..44668f4 --- /dev/null +++ b/skills/label-master/knowledge/输出能力/函数目录.md @@ -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大特征。 diff --git a/skills/label-master/knowledge/输出能力/对象目录.md b/skills/label-master/knowledge/输出能力/对象目录.md new file mode 100644 index 0000000..33a0d4b --- /dev/null +++ b/skills/label-master/knowledge/输出能力/对象目录.md @@ -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) +``` diff --git a/skills/label-master/knowledge/输出能力/意图目录.md b/skills/label-master/knowledge/输出能力/意图目录.md new file mode 100644 index 0000000..210362f --- /dev/null +++ b/skills/label-master/knowledge/输出能力/意图目录.md @@ -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分钟 +暂停所有倒计时 +``` diff --git a/skills/label-master/knowledge/输出能力/输出组合规范.md b/skills/label-master/knowledge/输出能力/输出组合规范.md new file mode 100644 index 0000000..177dad4 --- /dev/null +++ b/skills/label-master/knowledge/输出能力/输出组合规范.md @@ -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 是否作为独立字段输出。 diff --git a/skills/label-master/knowledge/边界/README.md b/skills/label-master/knowledge/边界/README.md new file mode 100644 index 0000000..ceecb42 --- /dev/null +++ b/skills/label-master/knowledge/边界/README.md @@ -0,0 +1,37 @@ +# 边界说明 + +这里维护跨标签、跨领域的易混淆边界。边界知识的优先级高于自动迁移出来的标签卡片片段,但低于用户在当前任务中明确给出的新规则。 + +## 目录结构 + +- `边界索引.md`:边界层的入口,告诉 Agent 遇到哪类 query 应该读哪个边界文件。 +- `高频混淆/`:人工维护的高频混淆边界,是运行时优先读取的边界知识。 +- `领域概览/`:从旧标签资料自动迁移出来的领域边界概览,信息有价值,但粒度较粗,主要用于补充背景。 + +## 读取顺序 + +1. 先读 `../索引/候选召回索引.md` 或 `边界索引.md`,判断是否命中高频混淆。 +2. 如果命中,优先读 `高频混淆/` 下的具体边界文件。 +3. 如果没有命中,再读候选标签卡片。 +4. 如果候选仍然不清楚,再读 `领域概览/` 对应领域文件。 + +不要直接全量读取 `边界/`。自动领域概览不能替代高频混淆卡片。 + +## 高频混淆卡片格式 + +每个高频混淆文件建议包含: + +- 适用场景:哪些 query 或任务会触发这个边界。 +- 候选集合:列出容易混淆的标签、intent 或 function。 +- 决策顺序:Agent 应该按什么问题逐步排除。 +- 关键区分点:动作诉求、资源类型、设备端、上下文、是否需要执行。 +- 输出建议:在 Agent 包装、intent、function program 之间如何处理。 +- 正例/反例:尽量贴近真实 query。 +- 仍需确认:哪些信息缺失时必须问用户。 + +## 维护原则 + +- 高频边界要写成“判断流程”,不要只写结论。 +- 边界卡片可以引用标签卡片,但不要复制整段标签定义。 +- 当线上 badcase 或数据生成反复撞到同一类混淆时,应新增或更新 `高频混淆/` 文件。 +- 自动生成的 `领域概览/` 可以保留,但不要在其中人工维护精细规则。 diff --git a/skills/label-master/knowledge/边界/边界索引.md b/skills/label-master/knowledge/边界/边界索引.md new file mode 100644 index 0000000..5b5b7ee --- /dev/null +++ b/skills/label-master/knowledge/边界/边界索引.md @@ -0,0 +1,35 @@ +# 边界索引 + +这个索引用于 Agent 在候选标签阶段快速定位高频混淆边界。边界索引不是标签定义本身,只负责告诉 Agent “遇到这类表达,应该优先读哪张边界卡”。 + +## 高频混淆入口 + +| 触发表达或任务 | 常见候选 | 优先读取 | +| --- | --- | --- | +| “总结一下”“概括一下”“分析这个文档/网页/内容”,尤其带文档、网页、屏幕、图片、附件等资源 | 文档总结 / Summarize / QA / 文本创作 / 图片问答 | [通用问答-文档总结-Summarize](高频混淆/通用问答-文档总结-Summarize.md) | +| 附近、周边、沿途、目的地附近 + 美食、餐厅、奶茶、景点、酒店、POI;或者“导航去/怎么去/带我去” | 地图导航 / 地图问答 / 餐饮服务 / 旅游 / 酒店 | [地图问答-餐饮服务-旅游](高频混淆/地图问答-餐饮服务-旅游.md),[地图导航-餐饮服务](高频混淆/地图导航-餐饮服务.md) | +| 打开、关闭、调节、设置 + 空调、灯、音量、车窗、座椅、蓝牙、相机、App 页面 | 系统控制 / 设备控制 / 车载控制 / 应用控制 / 相机 / 声纹 / 自动任务 | [系统控制-设备控制-车载控制](高频混淆/系统控制-设备控制-车载控制.md) | +| 播放、换一首、下一首、现在放的是什么、识别一下这首歌、用某 App 播放 | 音乐播放 / 视频播放 / 电台播放 / 播放器控制 / 媒体资源切换 / 播放状态查询 / 听歌识曲 / 媒体应用播放 | [内容播放-播放器控制-播放状态](高频混淆/内容播放-播放器控制-播放状态.md) | +| 当、如果、时候、之后、到达、每、一...就、设置自动化、智能习惯、超级任务 | 自动任务 / 设备控制 / 车载控制 / 提醒 / 闹钟计时器 / 系统控制 | [自动任务判断](../判断维度/自动任务判断.md),必要时继续读 [系统控制-设备控制-车载控制](高频混淆/系统控制-设备控制-车载控制.md) | +| 多个动作、多个设备、多个方向、然后、再、同时、并且 | 多指令 / 单意图 / 设备控制 / 系统控制 / 车载控制 | [多指令判断](../判断维度/多指令判断.md) | + +## 使用规则 + +1. 先根据 query 的动作和对象命中上表。 +2. 只读取命中的 1-2 个边界文件,不要全量读边界目录。 +3. 边界文件只帮助收敛候选;最终仍需结合标签卡片和输出能力目录。 +4. 如果用户当前任务给出了新的边界定义,以用户当前定义为准,并可在产物中建议更新边界卡片。 + +## 领域概览 + +`领域概览/` 下的文件来自旧标签资料自动整理,适合补充背景: + +- [AI创作边界](领域概览/AI创作边界.md) +- [内容和媒体播放边界](领域概览/内容和媒体播放边界.md) +- [地图导航边界](领域概览/地图导航边界.md) +- [小米产品问答边界](领域概览/小米产品问答边界.md) +- [工具类边界](领域概览/工具类边界.md) +- [应用控制和搜索边界](领域概览/应用控制和搜索边界.md) +- [生活服务边界](领域概览/生活服务边界.md) +- [系统控制和IOT设备控制边界](领域概览/系统控制和IOT设备控制边界.md) +- [通用问答边界](领域概览/通用问答边界.md) diff --git a/skills/label-master/knowledge/边界/领域概览/AI创作边界.md b/skills/label-master/knowledge/边界/领域概览/AI创作边界.md new file mode 100644 index 0000000..131f18d --- /dev/null +++ b/skills/label-master/knowledge/边界/领域概览/AI创作边界.md @@ -0,0 +1,51 @@ +# AI创作边界 + +## 代码创作 + +- 易混淆:QA + +- 划分原则:代码生成代码相关问答(研发/产品评估可以满足)长线计划:代码所有需求迁移到dialog agent + +- 满足边界问题:代码生成和代码问答之间的边界:用python写一段快排代码 : 代码生成下面这段快排代码有什么问题: 代码问答“写一个快排代码,并解释原理”:同时有生成和问答建议后续代码生成和代码问答通用由代码创作来承接,不做区分 + +## 视频创作 + +- 划分原则:视频的剪辑和导出:剪辑视频泛意图、编辑素材泛意图、将素材剪辑成视频、导出视频视频生成:生成各类风格的视频,当前未支持 + +- 满足边界问题:目前边界只局限在剪辑视频和导出视频,后续的视频创作也应该归入到这个意图中帮我生成一个搞笑视频 给视频创作 + +## 图片搜索(图片) + +- 易混淆:APP搜索QA地图导航浏览器搜索 + +- 划分原则:图片(静态/动态)、表情包、地图、手抄报、简笔画搜索原则1:xxx长什么样等——图片搜索怎么画xxx——出视频教程--QA + +- 满足边界问题:1 图片搜索和在APP中搜索图片目前没有做区分小红书搜索风景壁纸——APP控制搜索好看风景壁纸——图片搜索2 QA边界: 钢铁侠长什么样——图片搜索搜索一下钢铁侠长什么样——图片搜索怎么画猫的简笔画——QA3 浏览器搜索百度一下西二旗地图——浏览器搜索(APP)搜索西二旗地图——图片搜索4 地图导航类中国地图——图片搜索北京地图——图片搜索海淀区地图——图片搜索搜索海淀地图——图片搜索西二旗地图——图片搜索 + +## 图像编辑 + +- 易混淆:相机图片创作 + +- 划分原则:语义范围为:图片基础处理、色彩与光影调整、人像美化问题1:图像创作的风格转换--图片编辑的风格转换:图片编辑:修改RGB参数,修改色彩,亮度,某些图片中的特征值图片创作:1、全新生成一张图片2、根据已知图片,生成另一张图片(不是编辑图片的参数)问题2:图片编辑和相机设置项根据系统上下文判断在照相机界面——相机设置,控制类相册界面——图片编辑其他界面——图片编辑 + +- 满足边界问题:图像创作的风格转换--图片编辑的风格转换语义上混淆:“把我的照片改成漫画风”:既是风格迁移(创作)又像滤镜(编辑)——图片编辑“给人像加温暖怀旧滤镜”:和换风格很像,但只是滤镜覆盖——图片编辑甚至"瘦脸/美颜"等图片编辑功能,后续是不是也可以由图片创作承接——图片编辑图片编辑和相机设置项之间的边界问题:“让照片更亮一点” :可能是拍前(相机曝光补偿)或拍后(编辑调亮)“人像要更清晰”: 可能是相机分辨率设置,也可能是后期锐化“拍出来像漫画”:可用相机滤镜拍,也可后期风格转换 + +## 图像创作 + +- 易混淆:图像编辑 + +- 划分原则:文生图——图片创作风格转换——图像编辑扩图——图像编辑原则1:文字出图片是文生图,基于图片输入的修改都是图片编辑不是生成 + +- 满足边界问题:在已实现功能中,风格转换会和图片编辑中的风格转换语义上混淆:“把我的照片改成漫画风”:既是风格迁移(创作)又像滤镜(编辑)——图片编辑“给人像加温暖怀旧滤镜”:和换风格很像,但只是滤镜覆盖——图片编辑 + +## 文本创作 + +- 易混淆:QA生活服务 + +- 划分原则:明确的创作或改写指令用户提供的主题、体裁、风格、格式要求等约束条件生成原创性、结构化文本内容长线计划:文本生成所有需求迁移到dialog agent短线:输入图片的走图片问答,其他未定义的文本生成先给文本创作,外语写作需求也是文本创作 + +- 满足边界问题:文本创作和通用问答存在意图划分的灰区:和QA存在边界冲突,如果一个写作需求,需要依赖大量事实/时新知识的查询,给到通用问答更加合适:推荐北京旅游攻略 ——生活服务“写一个北京旅游攻略,包含2025年最新开放时间和票价” → 二段式(通用查 → 创作写)“北京旅游有哪些必去景点?” → 通用边界1:其他精品垂域>文本生成边界2:文本生成--QA旅游攻略——生活服务菜谱——QA健康报告计划指定某种格式的文书某种文体边界3:根据这张图片创作一篇作文边界4:总结类根据这篇文章(文件/截屏/图片问答)的内容生成一段评论(文档总结-生成)边界5:外语创作是否支持用英语描写青岛栈桥美丽风景——文本创作 + +## 作文 + +- 满足边界问题:暂无 diff --git a/skills/label-master/knowledge/边界/领域概览/内容和媒体播放边界.md b/skills/label-master/knowledge/边界/领域概览/内容和媒体播放边界.md new file mode 100644 index 0000000..b121ecc --- /dev/null +++ b/skills/label-master/knowledge/边界/领域概览/内容和媒体播放边界.md @@ -0,0 +1,109 @@ +# 内容和媒体播放边界 + +## 视频播放 + +- 划分原则:属于“视频播放”的请求(应触发):明示播放:“播放/放一下/我想看《流浪地球》” → name=流浪地球“放吴京演的《战狼》” → name=战狼,artist=吴京“看一下‘夏洛特’这个角色相关的电影” → character=夏洛特,type=电影通过人物/角色/标签/类型检索后播放:“放几个悬疑片看看” → tag=悬疑“播放王家卫的电影” → artist=王家卫,type=电影MV/演唱会录像等视频(非纯音频):“播放周杰伦《晴天》MV” → name=晴天,type=MV,artist=周杰伦原则1:单实体问题,走Redis,查词表,其他的走QA + +- 满足边界问题:内容agent垂域之间互相混淆单实体单实体默认出QA视频、音乐单实体互相混淆:比如q=小猪佩奇,可能是视频或者音乐,不同端满足形式不一样;或者视频与音乐难以区分,需要注入知识。非单实体和其他agent的混淆和图片的满足边界:q=播放单依纯的照片,歌曲优先和QA的满足边界:高热单实体给歌曲播放,比如青花瓷;否则给QA用户说了一句歌词、或者表达了一个电影片段,给QA歌曲、电影推荐,q=推荐几首歌,都属于播放和帮助的满足边界,类似如下query,直接满足和间接满足的区别,(待讨论--此问题已经记录)可以来首歌吗?你能播放一首歌吗?可以来个电影吗和控制的边界:本质的区别是,是否要经过媒体内容的搜索推荐娱乐app名称+媒体资源名称,比如:用 Bilibili 播放《三体》动画,给媒体应用播放;而非应用控制仅娱乐媒体app名称,比如打开爱奇艺,给应用控制q=打开音乐,把音乐给我打开,把音乐打开给音乐播放而非控制。可以先走top_q车载端(待讨论):打开音乐不能播放 @谢曹东q=播放qq音乐,音乐播放q=打开qq音乐,应用控制q=歌词?其余控制边界在底下【内容控制】部分,此处仅涵盖【媒体应用播放】与控制之间的边界。 + +## 音乐播放 + +- 易混淆:容易和音乐问答冲突 + +- 划分原则:明示播放:“播放《稻香》”“放朴树的《平凡之路》”通过人物/专辑/标签检索后播放:“放周杰伦的歌”“来点轻音乐助眠”“播放《三体》OST” + +## 古诗播放 + +- 易混淆:QA + +- 划分原则:古诗词搜索检索相关,是出古诗,包括按照诗句、诗人、题材等搜索。如果是古诗词问答,给QA诗歌名:将进酒(古诗词播放--单实体)诗句定位:会当凌绝顶(古诗词播放/QA都可以)以诗人/朝代/体裁/标签筛选后播放:唐代边塞诗 + +- 满足边界问题:古诗、QA意图边界:按诗歌名搜索、按诗句、诗人搜索、按题材推荐、泛推荐优先给古诗播放而非QA;举头望明月是什么意思--QA举头望明月翻译成白话文--QA举头望明月表达了什么--QA古诗播放满足形式:优先走精品卡,朗读对应古诗内容(精品卡底部有大模型回复链接可点击)如果无对应精品卡但存在TTS文本,走卡片展示和TTS生成如资源库无资源,采用大模型卡片兜底 边界1:容易和古诗问答冲突列query诗人问答古诗词含义、赏析、字词问答 + +## 讲笑话 + +- 划分原则:输出段子或幽默内容,可指定类型或时长 + +## 声音博物馆 + +- 易混淆:音乐播放 + +## 新闻 + +- 易混淆:音乐播放:播放xxxQA + +- 划分原则:播放或查询新闻内容:整点新闻、专题报道、实时头条等 + +- 满足边界问题:整体原则:只要是新闻需求,优先给新闻。可能会有音乐、视频、歌手、歌曲、体育赛事相关的新闻问答续期,统一给新闻。 + +## 歌单 + +- 满足边界问题:歌单仅指音乐、电台增删改查,涉及音乐、电台列表的添加、删除、创建、播放的优先给歌单满足。视频收藏给smartApp + +## 体育赛事播放 + +- 满足边界问题:语义范围:赛事预约、赛事播放、赛事问答是从sports中拆出来的3个标签,均指官方体育比赛,一般而言不涵盖民间自己组织的比赛,不在收录范围之内。设备范围:目前仅电视端生效。赛事播放:即在电视端点播体育赛事,会切换频道或者节目。满足形式:满足形式:各场景:频道页、赛程表、赛事详情页、预约管理 + +## 电视频道 + +- 易混淆:控制agent + +- 满足边界问题:问题1:协同响应指定被控设备,同:控制-设备控制问题2:和控制类边界问题(类似播放器控制)换台,是不是和音乐的下一首类似,没提到实体或描述就是纯控制指令切到频道1下一个频道控制query列出来 + +## 音乐问答 + +- 易混淆:QA音乐 + +- 划分原则:音乐静态知识类问答给音乐问答,否则给音乐播放 + +- 满足边界问题:内容问答易和QA混淆:歌手、演员等人物是边界问题,给QA,属于QA人物问答介绍这个歌手,介绍周杰伦围绕“歌曲、电影、电视剧”的问答,优先给内容问答,会出精品卡片,QA可兜底。内容问答容易和播放状态查询混淆,如下query优先给播放状态查询,这首歌是谁唱的这是什么歌内容问答和产品问答、控制类边界:你会听歌识曲吗打开听歌识曲 + +## 视频问答 + +- 易混淆:容易和视频播放冲突容易和通用问答冲突 + +- 划分原则:视频知识问答类给视频问答视频点播类给视频播放20251111共识:1、query中带有影视作品名称或明显影视相关pattern的给内容问答;2、询问剧情细节的,或者剧情相关问题,给内容问答;3、动漫或影视作品中虚拟人物相关问题,给内容问答; + +## 电台问答 + +- 易混淆:容易和电台播放冲突容易和通用问答冲突 + +- 划分原则:电台知识类问题给电台问答电台播放类问题给电台播放。 + +## 古诗词问答 + +- 易混淆:容易和古诗播放冲突容易和通用问答冲突 + +- 划分原则:诗词类问答给QA诗词类音频点播给PlayPoem + +- 满足边界问题:古诗词问答直接由QA满足 + +## 体育赛事问答 + +- 易混淆:QA + +- 划分原则:查询体育赛程、比分、排名、历史数据等 + +- 满足边界问题:和QA的满足边界,运动问答由QA满足,和QA没有边界。和个人运动监控的边界,体育赛事侧重于官方比赛,个人运动监控侧重于个人进行的运动,围绕智能手表、手机、跳绳、跑步机等智能设备监控各类运动时心率、热量消耗等功能,边界很清晰QA的边界:赛后:比分、排名、得分数据、技术统计运动项目:覆盖哪些?端午节划龙舟个人运动健康,学校的比赛个人运动身体健康湖人现在排名第几?上届世界杯冠军是谁?今天中超有什么比赛? + +## 播放状态查询 + +- 满足边界问题:给到播放状态查询后的,满足方式ContentAgentSkill通用注入当前音频播放信息及session信息调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表边界和QA的边界:侧重于当前播放内容的信息问答,偏动态类内容问答,应该给内容播放状态查询;如果是静态类内容查询,不需要指代消解,那么就给QA和听歌识曲的边界,依赖context注入:本机当前是否在播放歌曲,如果在播放歌曲,优先播放状态查询;否则听歌识曲。 + +## 听歌识曲 + +- 满足边界问题:给到播放状态查询后的,满足方式ContentAgentSkill通用注入当前音频播放信息及session信息调用内容类回复大模型生成回复并输出对应资源类型及关键信息,调用对应资源检索服务展示(或播放)资源列表边界和QA的边界:侧重于当前播放内容的信息问答,偏动态类内容问答,应该给内容播放状态查询;如果是静态类内容查询,不需要指代消解,那么就给QA和听歌识曲的边界,依赖context注入:本机当前是否在播放歌曲,如果在播放歌曲,优先播放状态查询;否则听歌识曲。 + +## 播放器控制(系统控制) + +- 划分原则:需要重新走搜索推荐的,如换一个版本,给内容控制;完全不依赖搜索推荐,播放器控制直接满足的给系统控制 + +- 满足边界问题:原来的内容控制属于媒体资源切换,需要走一次搜索推荐策略。新增的播放器控制是纯系统控制拆分的分支。和系统控制的边界,多轮对话中内容资源版本的切换,如下给内容控制(媒体资源切换)播放晴天->换个版本播放xxx新闻->换个版本'换一首'---等于下一首,播放器控制;换一首歌曲---媒体资源切换和系统控制的边界,如下功能给系统控制(播放器控制),播放器控制为新建标签。下一个(播放器控制)['下一首', '下一集', '下一曲']播放(播放器控制)['播放', '继续播放', '继续', '放', '请播放']选项选择/可见即可说(播放器控制)['第一个', '第二个', '播放第一个', '确定', '第三个']播放第三首歌,如果屏幕未显示,可见即可说没上报,给内容控制上一个 (播放器控制)['上一首', '播放上一首', '上一曲', '上一集', '播放上一首歌']从头重新播放(播放器控制)['重新播放', '重播', '再来一遍', '从头播放', '再唱一遍']连接-连接蓝牙['连接蓝牙播放音乐(多指令)', '蓝牙连接', '连蓝牙', '连接手机蓝牙', '连接我的蓝牙']设置系统控制项参数值-单曲循环(播放器控制)['设为单曲循环模式', '设为单曲循环', '开启单曲循环模式', '循环模式', '单曲重复']播放器倍速前进 (播放器控制)['快进', '快进两分钟', '快进三分钟', '快进一分钟', '快进五分钟']['切换两倍速播放',"xx"]播放器跳到指定位置播放 (播放器控制)['快进到十分钟', '播放二十二秒', '快进到两分钟', '十分钟', '播放十分钟']播放器倍速后退 (播放器控制)['后退', '退回', '后退一分钟', '后退两分钟', '后退五分钟']和应用控制的边界,知名音乐app的top页面由应用控制满足,如下query给应用控制,详情:车载APP控制 - APP页面词表数据整理每日三十首——音乐播放热歌榜——音乐播放打开每日三十首——APP控制播放每日三十首——音乐播放打开热歌榜——APP控制播放热歌榜——音乐播放歌词——APP控制还是内容问答? + +## 体育赛事预约 + +- 易混淆:备忘录 + +- 划分原则:如下query都给赛事预约我想取消比赛预约取消预约中超比赛我想取消预约山东泰山的比赛请帮我取消预约NBA比赛我想取消预约勇士队的比赛我想取消预约詹姆斯的比赛把我预约的乒乓球比赛取消之前预约了UFC比赛,帮我取消取消预约明晚辽宁队比赛取消预约后天的CBA比赛“帮我取消明天篮球比赛的预约。”“我要取消后天下午足球比赛的预约。”“请帮我取消本周日羽毛球赛事的预约。”“取消下周六乒乓球比赛的预约。”“帮我取消明晚电竞比赛的预约。”“我想取消本月 20 号网球比赛的预约。”“请帮我取消下周五田径比赛的预约。”“取消后天上午游泳比赛的预约。”“帮我取消之前预约的排球比赛。”“我要取消最近预约的射箭比赛。” + +- 满足边界问题:生效设备:目前仅在电视端生效,后续可能迁移到其他端满足形式:各场景:频道页、赛程表、赛事详情页、预约管理提醒类边界问题:q=提醒我今晚 8 点看国足比赛,给备忘录q=预约今晚8点国足比赛,给赛事预约 diff --git a/skills/label-master/knowledge/边界/领域概览/地图导航边界.md b/skills/label-master/knowledge/边界/领域概览/地图导航边界.md new file mode 100644 index 0000000..325df7c --- /dev/null +++ b/skills/label-master/knowledge/边界/领域概览/地图导航边界.md @@ -0,0 +1,43 @@ +# 地图导航边界 + +## 地图导航 + +- 易混淆:地图问答QA收藏和记忆生活服务 + +- 划分原则:边界1:导航-地图问答-QA执行上:地图问答先给导航,导航不召回,给QA(走哪问哪拆出来给导航)短线现状:导航需求,A到B路线查询可以。公交地铁站点查询等都不支持。问题:多轮下针对现有路线提问,很容易出现此类问题长线:原则1:依赖导航app接口查询结果的是地图问答,路线、公交地铁站等,现有接口不支持,走大模型兜底,而不是回复不支持产品问题@张睿@李循边界2:“在哪”,“去xxx”优先给导航,其他都是生活服务优先长线,计划“在哪”不区分导航和生活服务,统一满足边界3:单实体,默认QA,如果是导航需求则给导航和QA都算对。选项1:出富媒体卡片:百科+旅游+导航选项2:询问是否要去哪里单实体难以分端区分,应该在车载端满足时,单实体走poi搜索,有结果出一个导航的卡片。中控不做区分。各端的导航和生活服务单实体,都给导航优先,且QA满足应该调用搜索后出导航或生活类卡片。 + +- 满足边界问题:边界1:导航-地图问答-QA导航:偏控制类需求,明确的导航需求地图问答:跟导航、路线、当前位置信息相关的问答昆明地铁经过呈贡区吗(地图不支持)北京火车经过海淀区吗(地图不支持)13号线经过西二旗吗(地图不支持)13号线在海淀区吗(地图不支持)我们会经过临沂吗(城市可以支持,其他都不支持,这类问题都给导航)帮我查一下当地有哪些传统手工艺品(典型走问QA,偏向通用QA-槽位识别当地)通用问答:地理知识成都有多大——QA成都离北京有多远——导航能满足,车载默认开车,手机会区分飞机火车等怎么从北京去成都——优先导航,多轮下可能是生活服务/QA边界2:生活服务的酒店美食店铺的POI相关问题杭州乐园什么时候关门——旅游景点途虎养车在哪——地图而不是生活服务 (xxx在哪,优先导航)同帮巴顿火锅——生活服务>QA大观原点酒店——生活服务我要去评分最高的鄂菜——生活服务从重庆飞到上海要几个小时——地图问答可以满足,同QA边界3:POI单实体问题,QA-美食-旅游-地图,单实体POI,地图的优先级最低,默认都是给QA兜底武当山边界4:POI搜索与搜索的区别,默认都给QA搜索香格里拉、搜索九寨沟边界5:特殊POI,如下几个特例,和开车导航关系非常密切的优先地图:附近的加油站, 搜索加油站,q=加油站附近的充电桩,q=充电桩,q=充电(车载)附近的服务区,q=服务器停车场边界6:规划A到B的旅游路线——旅游,只有路线是导航,如果有旅游游玩相关需求是旅游边界7:A附近的Bq=北京有没有山姆——没有明确导航意图,出QA如果是导航过程中,目的地或途径点有没有xxx,给导航(目的地附近有没有大悦城) + +## 地图问答 + +- 易混淆:车载设备状态查询 + +- 满足边界问题:与车控的边界:已经跑的里程&时间是车载设备状态查询;预估里程&时间是地图问答出发到现在开了多久了-车载设备状态查询上次充满电跑多少公里了-车载设备状态查询已经开了多久-车载设备状态查询到北京有多少里程-地图问答导航显示还需要开多久-地图问答 + +## 限号查询 + +- 易混淆:违章问答限号问答交通规则问答 + +- 划分原则:原则1:查询和问答全部给导航(方案1:查询和问答,区分开查询是searchXXX或者queryXXX问答是answerXXX,但是统一给QA方案2:不区分问答和查询,全部算问答类,统一给地图导航) + +- 满足边界问题:边界1:以下情况都给导航违章查询限号查询违章问答限号问答交通规则问答示例query:天津大大大的前天汽车限行尾号是多少(查询类)(AnswerRestrictInfo)外地车在北京高峰期可以上五环吗(问答类)(AnswerRestrictOuter)元旦时上海的限行区域是哪些(AnswerRestrictRegion)尾号是三限行扣多少分呢(AnswerDeduction) + +## 走哪问哪 + +- 易混淆:AnswerGoAskAnswerKnowledgeSearch图片问答屏幕问答照片问答 + +- 满足边界问题:边界1:区分AnswerGoAsk和AnswerKnowledgeSearch走问和走问QA区别在于,走问预期回答一个poi的名字,而走问qa回答与这个poi相关的其他信息。比如:前方隧道叫什么 - 走问前方隧道有多长 - 走问qa走哪问哪与通用问答晓月隧道有多长【通用问答】前边的隧道有多长【走哪问哪】边界2:走问在眼镜端和图片问答的边界【TODO 图片问答边界】 + +## 地图设置 + +- 易混淆:系统控制 + +- 满足边界问题:边界1:地图设置和控制:高德百度地图APP内部功能属于地图设置,APP外部功能属于控制。地图设置和控制的边界问题:导航窗口放大--应用窗口控制 + +## 地址设置 + +- 易混淆:结构记忆 + +- 划分原则:原则1:地址增删改功能【TODO @乔国辉】车载端-导航其他端-工具 + +- 满足边界问题:边界:【待讨论】与结构记忆的区别修改我家地址 修改公司的地址 diff --git a/skills/label-master/knowledge/边界/领域概览/小米产品问答边界.md b/skills/label-master/knowledge/边界/领域概览/小米产品问答边界.md new file mode 100644 index 0000000..819d090 --- /dev/null +++ b/skills/label-master/knowledge/边界/领域概览/小米产品问答边界.md @@ -0,0 +1,17 @@ +# 小米产品问答边界 + +## 系统状态查询 + +- 易混淆:系统状态查询车载设备状态查询家用设备状态查询小米产品问答QA + +- 划分原则:1、静态状态是硬件或系统属性,属于小米产品问答。动态状态是实时状态,属于控制查询。2、动态状态分为系统的状态和设备的状态,设备分为车载和家用IOT场景。3、分发原则:老模型原则:小米产品问答>IOT查询>系统控制查询(当前线上策略:看3个谁打分高给谁)planning模型原则:车载设备状态查询:全端优先给小米产品问答家用设备状态查询:全端IOT优先系统控制查询:车载端:都给小米产品问答(已覆盖)其他端:都给小米产品问答(正在做) + +- 满足边界问题:1、动态状态查询和静态状态查询动态-实时状态:空调现在多少度?静态-硬件或系统属性:空调最高多少度?2、设备功能造成歧义空调-状态查询和天气问答q=现在多少度,有歧义:车内温度,车外,室内,室外,手机多少度?涉及多个设备,室内空调、车空调、室内温度计、室外温度计、体温计等。3、目标设备歧义分端同2,空调、灯、冰箱,都是车载、家庭和手机等多个设备同时可以控制或查询的:例如,车内灯,车外灯,家里灯,手机闪光灯,路由器信号灯,都是灯,到底是哪个设备电视询问其他电视手机设置项参考:用机助手设置项数据 + +## 小米产品帮助 + +- 易混淆:系统状态查询车载设备状态查询家用设备状态查询小米产品问答购物类控制IOT类QA + +- 划分原则:详见:小米产品问答边界问题1、如何界定什么是“小米”产品,以及如何界定什么功能是小米产品功能1、用户明确提到“小米”相关或指代消解后知道是小米产品,给到productQA2、小米+其他品牌对比,认为是购物类需求,给LifeAgent,其他品牌之间对比给QA3、结合场景给知识,不同端给不同agent例如“水杯应该放哪”,车载给productAgent,手机给QA2、购买类需求,包括购物信息对比、购物比价,全部给生活服务agent。如果query中出现app名字的,给app控制兜底。3、可执行类的控制相关问答优先给产品,媒体播放类询问题待定(待讨论)边界问题1:可执行action和产品问答边界:直接执行出引导+卡片小米产品问答能否帮我【控制指令】能否帮我【播放媒体资源指令】能否帮我【某可执行指令】你能【控制指令】吗你能【播放媒体资源指令】吗你能【某可执行指令】吗你会不会【控制指令】你会不会【播放媒体资源指令】你会不会【某可执行指令】1、产品和通用问答边界问题:1.1 网易云音乐为什么打不开:因为默认用户在问小米手机系统,或小米车载系统,所以是产品问答1.2 洗衣机、空调为什么坏了:因为产品agent新增支持IOT类问题问答,产品agent会区分用户是否有小米空调或小米洗衣机,因此满足上都给产品agent,也属于产品问答 2、可执行指令和产品问答边界问题:@李彦婵 拉产品老师统一梳理类似需求,给出统一解决方案并发起技术评审,有结论之前,中控线上维持现状 + +- 满足边界问题:车载产品问答车载端case类型1眼镜应该放哪水杯应该放哪车载端case类型2雨天开车是胎压高好还是胎压低好开空调要打开内循环还是外循环电动汽车怎么充电车载端case类型3query=那个卡皮巴拉是干嘛的?query=嘤嘤是谁query=中间的那个萌宠能不能给我跳个舞以下query,不同端给不同的agent车载NFC功能如何使用天幕如何打开NFC功能如何使用手机NFC功能如何使用空调多久需要清洗一次扫地机怎么充电牙刷怎么充电牙刷如何开启震动模式枕头怎么洗运动鞋怎么刷完全和小米无关给QA华为汽车续航怎么样Vivo NFC功能如何使用指代理解为小米设备是product你有哪些功能是华为没有的你比华为手机强在哪你跟华为手机谁比较贵手车互联--在车载端给Product,其他端是QAOPPO手机怎么投屏车机iPhone投屏失败怎么解决iPhone无线CarPlay怎么连vivo手机如何进入投屏到汽车三星手机车机镜像怎么操作华为车机和荣耀手机镜像方式媒体播放问答边界---待定你能来首音乐么你能播放音乐么你会播放音乐么你可以来首歌么你可以播放音乐么你能播放音乐吗?你能唱歌吗?---直接播放音乐你会讲故事吗?---直接station讲故事你能连一下wifi吗?你能把屏幕调亮吗?你能打开飞行模式吗?你能调大音量吗?控制边界--给productQA能否帮我将微信从外屏删除?能否帮我打开热点?可以帮我把音量调高20%吗?你能否帮我将微信从外屏删除?你能否帮我打开热点?你可以帮我把音量调高20%吗?IOT单实体--给QA空调冰箱电视 diff --git a/skills/label-master/knowledge/边界/领域概览/工具类边界.md b/skills/label-master/knowledge/边界/领域概览/工具类边界.md new file mode 100644 index 0000000..949c601 --- /dev/null +++ b/skills/label-master/knowledge/边界/领域概览/工具类边界.md @@ -0,0 +1,185 @@ +# 工具类边界 + +## 外语翻译 + +- 易混淆:QA() + +- 划分原则:1、只有“外语相关”+“翻译是主需求”两个条件同时满足才是翻译2、保准确不保召回,用户明确说了是英语、日语或单词等表达,才认为是翻译,重点是是否明确是外语相关的问题或外语单词相关问题。3、如果用户只说了“翻译”,不一定是翻译意图,如:文言文、古诗翻译。翻译成繁体字,拼音等。4、通用问答中和小米产品名词相关的问题,给产品问答 + +- 满足边界问题:通用问答:VPN是什么意思不如言,刑从之古文翻译你好用四川话怎么说我想你了用河南话怎么说忧伤的乌龟翻译成繁体【某文言文古诗】怎么翻译 + +## 外语词典查询 + +- 易混淆:词典 + +- 划分原则:5、中文、拼音查词典给到词典,没有明确的查词典需求给到QA6、近义词反义词等,因为存在和中文,以及通用问答“买PUT”等的混淆问题,没有明确是外语或单词的给QA7、XX怎么读,字母怎么读给到翻译,汉字怎么读,给到词典 + +- 满足边界问题:中文词典:biangbiang面的biang怎么写 + +## 外语问答 + +- 易混淆:QA() + +- 划分原则:中文的语言结构、语法、词汇用法等等的问答给到QA同上,没有外语/单词等表达的都给QA + +- 满足边界问题:QA: PUT和CALL的区别QA:BIT和A FEW的区别QA:harmonyos和hyperos的区别外语问答:英语中BIT和A FEW的区别 + +## 外语造句 + +- 易混淆:QA()AI文本创作 + +- 划分原则:1、外语的文本创作类,给文本创作或qa2、外语问答类和QA边界模糊的,给谁都可以,都是大模型满足 + +- 满足边界问题:文本创作:描写青岛栈桥美丽风景的句子 qa:用ride造句文本创作/外语问答:描写青岛栈桥美丽风景的英文句子 + +## 翻译功能操作 + +- 易混淆:应用控制 + +- 划分原则:1、工具类的控制都属于工具,例如打开翻译,打开运动健康等2、应用控制涉及的query是打开关闭带有具体app应用名称的,例如有道翻译、百度翻译,属于应用控制 + +- 满足边界问题:关闭有道翻译--APP控制 + +## 文档总结 + +- 易混淆:拍照问答、图片问答 + +- 划分原则:文档总结有多模态能力,在各个端都是文档总结。本地文档、屏幕上文字、URL、图片、视频、音频,这些已知来源的总结是总结,其他是QA。其他类型的总结可以出resource(type="unknown"),则工具agent调大模型总结。 + +- 满足边界问题:1、总结和图片问答边界:总结/分析+文档眼镜端:x0 = Resource(type="photo")其他端:x0 = Resource(type="picture")总结一下这幅图【TODO】2、可能需要联网搜索拿不到文档实体的(待讨论-国辉,产品满足问题)总结一下这本书总结一下孔乙己这篇文章3、(待讨论-国辉,产品满足问题)现在只支持文档和URL总结,图片、音频、视频还没有,看后续是否支持还是给其他垂域 + +## 闹钟 + +- 易混淆:提醒系统定时控制(自动任务)提醒 + +- 划分原则:原则1:睡觉叫醒我属于闹钟叫醒我的过程是把我从睡觉的状态叫醒,需要用到闹钟,所以给到闹钟垂域叫我、叫醒我、喊我都是闹钟,需要连续响铃提醒我,是提醒-备忘录原则2:提醒和闹钟的边界在于query中是否明确包含闹钟,如果明确包含闹钟,给到闹钟,否则给到提醒优先级:闹钟>提醒原则3:小憩模式/休息等类似表述+时间(待讨论,控制类问题)一部分是控制(打开关闭),一部分是tools,区分有困难打开小憩模式打开小憩模式30分钟小憩模式是一种独立功能,是一种让用户睡觉休息的模式这种要给闹钟,因为这种query的主要目的是要在固定时间后休息结束,闹钟响起。但是反过来,时间+小憩模式/休息,这种是固定时间后打开小憩模式的目的,所以要给到系统定时控制 + +- 满足边界问题:边界1:clock,reminder,自动任务3个功能是互相覆盖,有一定边界问题边界2:小憩模式打开小憩模式30分钟(控制?自动任务?)小憩模式30分钟边界3:叫醒,闹钟和提醒创建早晨6点的提醒用白噪声喊我八点遛狗边界4:自动任务30分钟后叫我30分钟后提醒我充满电的时候叫醒我 + +## 倒数日 + +- 易混淆:记忆 + +- 划分原则:倒数日>记忆>提醒 + +- 满足边界问题:倒数日>记忆>提醒 + +## 提醒 + +- 易混淆:QA() + +- 划分原则:原则1:个性化的生日、纪念日都属于记忆只有查询我的提醒,才是提醒查询原则2:明确表述记一下就是主动记忆有“提醒”类明确表述是提醒两者都有,提醒>记一下提醒我记一下下周一是我妈生日原则3:距离爷爷生日还有几天,是时间距离计算 + +- 满足边界问题:【爷爷】的生日什么时候:family纪念日【毛泽东】的生日是什么时候:qa【节日】是什么时候:全给时间[人名]的生日是什么时候 + +## 时间 + +- 易混淆:QA提醒记忆personalData + +- 划分原则:原则1:个性化信息的时间给QA或personalData自己召回,非个性信息中,只有依赖日历作为满足的,给时间问答,只包括节日、节气、假期,其他都是QA公共考试时间:中考、高考、法考、托福、雅思,给QA名人生日问答:全部给QA张三生日问答:给QA(personal data自己召回)节日时间——时间问答CalendarQA节气时间——时间问答CalendarQA假期时间——时间问答CalendarQA暑假寒假时间——时间问答CalendarQA要查黄历的——QA阅兵是哪天——QA + +- 满足边界问题:中考是什么时候雷军的生日是什么时候三湾改编是什么时候我的生日是什么时候五一劳动节 + +## 时间距离计算 + +- 易混淆:提醒 + +- 划分原则:原则2:timeDistance(),依赖实时时间结果的时间计算都给时间问答>数学,不管时间和个性化是否相关,包括个性化生日,个性化纪念日等(类比:导航到我家,我家在哪,北京到洛杉矶的距离,北京到上海的距离)节假日、具体事件的时间距离计算,中控planning会识别到timeDistance(start, end) 这个函数下.备注:航班还有多久,外卖还有多长时间到,这些不属于timeDistance离我的生日还有多少天离xxx节日还有多少天离结婚纪念日还有多少天距离毛主席诞辰还有多少天离雷军生日还有多少天离阅兵还有几天原则3:不依赖实时时间的时间计算,如果是时间距离计算出timeDistance(),如果不是距离计算,其他时间相关的计算给QA()8月比7月多几天闰年比平年多几天暑假比寒假多几天原则4:时间常识类给QA一年有多少天8月有多少天五一节有多少天暑假有多少天今年暑假有多少个周末?原则5:精品垂域的时间距离计算离春运还有多久Life skill满足,出timeDistance() functiontime垂域的范围:问答+时间距离计算+其他时间计算(有多少工作日)节日时间节气时间固定假期时间时间点(具体几点)典型示例:五一劳动节--QA五一假期--QA五一假期是哪天--calenderQA五一假期从哪天到哪天--calenderQA五一有周末么--calenderQA五一有几天--calenderQA五月有几天--QA五月刨去五一还有几天--QA五一为什么有5天假期--QA到五一有几天--timeDistance到五一有几个周末--timeDistance五一比十一少几天--QA五一天数多还是十一天数多--QA + +- 满足边界问题:(已共识)我的生日还有多久 + +## 数学计算 + +- 划分原则:结论1:所有的数学公式,可计算的,都可以接。是公式计算功能,需要给出一个可计算的公式,而不是公式问答或者列公式。 + +- 满足边界问题:边界1:数学计算的范围 + +## 竖式计算 + +- 划分原则:原则1:必须明确表达要“列竖式”计算,其他可以认为是公式计算或mathQA + +## 数学计算 + +- 划分原则:原则1:这个功能由于很难判断一个计算是否是数列计算,因此把这个标签拆分为公式计算和mathQA。此类别如果符合公式计算的特征给formula计算,否则给MathQA。 + +## 简单数学问题 + +- 划分原则:原则:给mathQA,短线给arith即可 + +## 标准身高计算标准体重计算 + +- 划分原则:原则:给mathQA,短线给arith即可 + +## 工资税收计算 + +- 易混淆:QA + +- 划分原则:原则:给mathQA,短线给arith即可 + +- 满足边界问题:(待讨论)边界1:除了工资税收计算,其他税收问题谁负责?买一套120万的房子能要交多少税 + +## Kinship + +- 易混淆:音乐 + +- 划分原则:原则:给mathQA,短线给arith即可 + +- 满足边界问题:边界1:单实体歧义的不给音乐,没有明确说播放的,缺少明确意图的,默认是关系计算爸爸的爸爸叫什么 + +## 实数性质与计算 + +- 易混淆:QA + +- 划分原则:原则:给mathQA,短线给arith即可 + +- 满足边界问题:(待讨论,范围太小了,全部走mathQA()))生成一个随机数 + +## 主动记忆 + +- 易混淆:Chat地图导航 + +- 满足边界问题:(@乔国辉)1、主动记忆,必须说记一下或收藏xxx,是tools实现结构化记忆,tools召回我的家庭地址是xxxx我的身份证号是xxxx非结构化记忆,必须明确记忆关键词,记一下我喜欢吃苹果2、被动记忆,tools不接(dialogAgent)。 我喜欢吃苹果边界1:和聊天、地图边界我的学校在xxxx我的地址xxxx(手机和车载有区别,车载给地图,手机给记忆)我学校的地址是xxxx我爸的地址是xxxxx我女儿学校地址是xxxx记忆只关注结构化记忆,但记忆关键字相关的都给记忆:证件、邮箱、手机号、地址;边界2:记一下xxx,收藏xxxx,所有垂域的收藏功能和记忆的关系记一下这个加油站(地图导航)收藏这首歌收藏这个地址收藏这个电台 + +## 打电话 + +- 易混淆:应用控制 + +- 划分原则:原则1:如果没说微信,但是打视频电话,打语音电话,默认是走APP微信电话 + +- 满足边界问题:拨打微信视频电话 + +## 发短信 + +- 划分原则:原则1:明确说了是发短信,才是发短信,如果发消息,发信息,默认微信APP + +## 健康控制 + +- 易混淆:应用控制 + +- 划分原则:原则1:打开运动健康类需求,和打开翻译类似,属于系统APP功能,优先给工具,而不是APP + +- 满足边界问题:运动健康:打开小米运动健康运动健康:小米运动健康是一个 + +## 天气 + +- 易混淆:QA + +- 划分原则:详见天气问答边界问题 + +- 满足边界问题:【待讨论】线上的weatherQA实际上是weatherforecast,是需要根据实时天气预报接口来回答问题,应该是天气预报需求,参考标签修改细则天气问答边界问题中定义的泛问答类属于weatherQA,weatherQA属于QA子集北京什么时候雨多海南的台风叫什么名字以下是QA:12度的天气可以出去玩吗北京3月份热不热武汉什么时候进入雨季明天能看到流星雨吗 + +## 课程表 + +- 易混淆:- + +- 划分原则:查询类包含“查/什么时候/在哪/谁上/有几节”等 → 对应 search_course 子功能根据关键词进一步路由:“内容” → search_course_content“时间” → search_course_time“地点” → search_course_location“数量” → search_course_count“老师/教师” → search_course_teacher添加类包含“添加/加课/加一门”等 → 对应 add_course 子功能若出现“第几节/按节次” → add_course_by_section若出现“几点/按时间” → add_course_by_time操作类包含“开启/关闭/打开设置”等 → 对应 class_schedule_operation“开启” → open_class_schedule“关闭” → close_class_schedule“打开设置” → set_class_schedule + +- 满足边界问题:课程表查询/添加/操作均属于清晰的意图范围,没有很混淆的边界问题 + +## 留言 + +- 易混淆:无 + +- 划分原则:创建 / 录制 → AddAction触发词:留言/创建/录一条/给××留话/说给家里听…2)查看 / 收听 → CheckAction触发词:查看/打开/有留言吗/今天有留言吗/播放/收听/听留言。3)编辑 → EditAction触发词:编辑/修改/补充/改成…定位规则:优先按“刚才/最新/第N条/时间点/关键词”匹配;未给出时默认“最新一条”。4)删除(单条) → DeleteAction触发词:删除/移除/把第N条删了/删掉刚才那条。5)删除全部 → DeleteAction(mode=all)触发词:删除所有留言/清空留言。6)取消录制(进行中) → 结束录制并不保存触发词:取消留言/不要了/重来。7)唤醒留言能力 → ReceiveAction[object@Message](mailto:object@Message)触发词:打开/进入留言(模块)/唤醒留言功能。 + +- 满足边界问题:无本域仅处理家庭语音留言 diff --git a/skills/label-master/knowledge/边界/领域概览/应用控制和搜索边界.md b/skills/label-master/knowledge/边界/领域概览/应用控制和搜索边界.md new file mode 100644 index 0000000..fe50019 --- /dev/null +++ b/skills/label-master/knowledge/边界/领域概览/应用控制和搜索边界.md @@ -0,0 +1,17 @@ +# 应用控制和搜索边界 + +## 搜索|应用名(搜索|QQ音乐) + +- 易混淆:tag:搜索|应用名浏览器搜索应用播放餐饮服务地图导航Agent:地图导航Agent生活服务Agent内容Agent + +- 划分原则:边界原则:明确:app+(搜|查|找) ,统一类别:搜索|app分发原则:planning模型原则:浏览器搜索:控制Agent搜索|应用名:按照映射名进行不同Agent的映射 + +- 满足边界问题:与地图Agent的冲突:打开地图搜索附近的超市,模型的标签:搜索|地图,映射给地图Agent与生活服务Agent的冲突:打开点评搜索美食打开点评搜索附近的美食, 打开点评找美食,统一:搜索|点评,映射生活Agent; + +## 应用控制 + +- 易混淆:tag:应用控制系统控制设备控制Agent:地图导航Agent生活服务Agent内容Agent + +- 划分原则:边界原则:与内容类Agent冲突:播放类的给到内容类,打开类给到控制Agent共识原则:精品垂域优先召回,召回原则:根据用户主需求应用控制兜底,如果query中提到APP名字,则走APP应用控制 + +- 满足边界问题:与精品垂域的边界怎么定义,精品Agent优先,还是打开对应的App的都给到应用控制打开导航——导航打开秒表——工具打开翻译——工具打开有道翻译——APP打开地图——导航打开百度地图——APP打开大众点评——APP打开外卖——生活服务打开美团外卖——APP垂域内部的专有操作,按照对应主需求的结果映射对应的垂域打开百度地图的电子狗(控制Agent)打开百度地图的街景图层(控制Agent)打开百度地图的3D模式(控制Agent)打开大众点评点咖啡(生活服务Agent)内容类冲突:带App,播放类的给到内容类,打开类给到控制Agent打开QQ音乐我的收藏(控制Agent)打开QQ音乐播放我的收藏(内容Agent) diff --git a/skills/label-master/knowledge/边界/领域概览/生活服务边界.md b/skills/label-master/knowledge/边界/领域概览/生活服务边界.md new file mode 100644 index 0000000..868e0cd --- /dev/null +++ b/skills/label-master/knowledge/边界/领域概览/生活服务边界.md @@ -0,0 +1,159 @@ +# 生活服务边界 + +## 购物 + +- 易混淆:边界tag:应用控制 + +- 划分原则:边界结论:订单类的统一都给到生活服务Agent承接,不用管对应App;planning模型分发原则生活服务Agent + +- 满足边界问题:主要是冲突为应用控制,如:打开淘宝查看我的订单 + +## 平台比价->商品比价 + +- 易混淆:边界Tag:小米产品帮助应用控制产品购买航班信息查询外卖酒店 + +- 划分原则:边界结论:明确不包括:酒店比价(酒店)外卖比价(外卖)美食比价(美食)planning模型分发原则生活服务Agent没有比价功能,比价算在商品购买;酒店/外卖/机票 > 购物小米产品问答 > 购物 + +- 满足边界问题:酒店:附近最便宜的酒店航班信息查询帮我查下北京到上海航班的最低价商品购买给我买最便宜小米手机小米产品帮助小米15最低价是多少钱;冲突类别应用控制,给到:商品比价打开京东查找最便宜的小米手机; + +## 商品购买 + +- 易混淆:边界Tag:外卖交通购票 + +- 划分原则:planning模型分发原则生活服务Agent + +- 满足边界问题:外卖类的购买(外卖)我要买麦当劳我要买咖啡火车票,飞机票的购买等等,都属于生活服务类(交通购票)我要买火车票我要买从北京到上海的飞机票 + +## 商品购买|应用名 + +- 划分原则:planning模型分发原则生活服务Agent + +## 商品推荐 + +- 易混淆:边界Tag:平台比价 + +- 划分原则:planning模型分发原则生活服务Agent + +- 满足边界问题:平台比价,给到:商品推荐推荐一个最便宜的小米手机 + +## 商品信息对比 + +- 易混淆:边界Tag:通用对话 + +- 划分原则:planning模型分发原则明确提到小米产品是产品问答有购买意图的,同商品比价,属于商品购买无购买意图属于QA购买类意图不区分商品品类 + +- 满足边界问题:边界1:商品的范围是什么,非硬件设备类的对比,是否需要进行召回,给到生活服务Agent如:车厘子和樱桃有什么区别如:汤圆和元宵有什么区别边界2:你和劳斯莱斯哪个开着舒服(YU7和劳斯莱斯对比) + +## 找同款 + +- 易混淆:边界tag:应用控制商品购买 + +- 划分原则:planning模型分发原则生活服务Agent + +- 满足边界问题:产品购买类,给到:找同款我要买同款的手机应用控制的冲突,带APP的找同款,给到:找同款:打开小书红找同款的衣服 + +## 餐厅订座排号 + +- 划分原则:planning模型分发原则生活服务Agent + +- 满足边界问题:暂无 + +## 餐饮服务 + +- 易混淆:边界Agent:通用对话Agent,美食的相关问答,是否承接;地图Agent + +- 划分原则:边界结论:按照POI的属性类别,如果是美食,给到生活服务;planning模型分发原则生活服务Agent菜谱-菜谱问答相关问题——QA美食查找,餐厅查找类——生活服务美食问答和餐厅问答——生活服务q=世界上最顶级的餐厅有哪些附近的海底捞--海底捞什么东西好吃--哪个海底捞好吃--海底捞为什么好吃--海底捞评分怎么样岱山最好吃的海鲜菜在哪里兰州拉面来源于哪里保定特色美食有什么鲁菜菜系有哪些名菜 + +- 满足边界问题:与地图Agent的冲突,如果POI是美食的操作,给到:生活服务附近的海底捞附近的美食餐厅通用对话Agent主要是美食的相关问答,到底谁来承接——生活服务优先(标签:美食问答-菜谱,给QA)岱山最好吃的海鲜菜在哪里——生活服务兰州拉面来源于哪里——生活服务保定特色美食有什么——生活服务鲁菜菜系有哪些名菜——生活服务 + +## 打车 + +- 易混淆:边界Agent:控制Agent通用对话Agent + +- 划分原则:planning模型分发原则生活服务Agent + +- 满足边界问题:带有打车并且带有App数据,后续给到生活服务承接打开美团打车打车的相关问答——生活服务从家到公司打车需要多少钱 + +## 电影票购买 + +- 易混淆:边界Tag:商品购买内容问答导航 + +- 划分原则:planning模型分发原则生活服务Agent电影票问答相关——生活服务电影问答——内容问答TODO:找附近的电影院? ——生活 或 导航 + +- 满足边界问题:找附近的电影院?产品购买类,都是生活服务承接,电影票购买给到电影票我要买一张明天的电影票内容问答:**的电影票房是多少**电影什么时间上映 + +## 航班信息查询 + +- 划分原则:planning模型分发原则生活服务Agent + +## 交通购票 + +- 易混淆:边界Agent:控制Agent地图Agent工具Agent边界Tag:应用控制地图问答时间航班信息查询 + +- 划分原则:planning模型分发原则生活服务Agent春运相关都给生活服务,不走工具时间类A到B坐什么车如果明确提到火车、飞机、高铁,是生活服务默认是导航A到B坐飞机多长时间,边界问题,QA和生活服务互相兜底北京飞洛杉矶的航班要飞多久——生活服务中国飞美国要飞多久——QA + +- 满足边界问题:应用控制类冲突,主要是打开12306进行火车票相关的查询与购买,确认先给到生活服务用12306查一下明天从平顶山到苏州的火车票(生活服务)打开12306查看我的车票(控制Agent)边界数据与地图Agent,确认给到地图Agent; 从北京到上海坐火车需要多久;工具Agent(时间)的边界数据:——生活服务距离春运还有多久-——生活服务今年什么时候是春运——生活服务航班信息查询,确认:关于机票,给到航班信息查询;订一张10月31号从武汉飞往重庆的飞机票帮我查看一下飞机票 + +## 酒店 + +- 易混淆:边界Agent:通用对话 + +- 划分原则:planning模型分发原则生活服务Agent酒店问答、评价、推荐——生活服务单实体——偏向QA(先不动),长线出综合卡片单实体问题,美食、旅游、酒店都是类似(TODO) + +- 满足边界问题:酒店相关介绍或通用问答问答,给到生活服务Agent,如:如家酒店好不好介绍一下如家酒店如家酒店哪个房型比较舒服如家酒店(单实体)——QA + +## 快递服务 + +- 易混淆:边界tag:应用控制外卖、闪送 + +- 划分原则:能否通过手机号查快递——QA订单编号是250815的一般是哪个快递——QA现有只支持:寄快递,查快递,满足是打开某APP(支付宝)(TODO) + +- 满足边界问题:应用控制内的快递服务,确认给到生活服务Agent打开支持宝查看我的快递查看京东物流外卖类别:我的蛋糕到哪了?(边界数据) + +## 旅游 + +- 易混淆:边界Agent:通用对话地图Agent + +- 划分原则:planning模型分发原则生活服务Agent旅游问答,景区问答,给生活服务 + +- 满足边界问题:通用对话Agent主要是景点的相关问答,到底谁来承接——旅游问答,给生活服务湖北省博物馆要预约吗贵州千户苗寨适合推婴儿车去不赣州有摩天轮吗总统府可以自己带水或者零食吗八月份去哪里不热宁波有什么特色与地图Agent的冲突,给到生活服务Agent; 附近的公园附近的景点 + +## 生活服务 + +- 易混淆:边界tag:景点美食外卖冲突的Agent:地图Agent + +- 划分原则:planning模型分发原则生活服务Agent + +- 满足边界问题:与地图类的主要冲突,在于附近POI的查找,边界冲突未解决(生活服务Agent)给我寻找附近的羽毛球馆与景点,美食,外卖冲突的优先给具体的类别:附近的美食附近有什么好玩的帮忙点个外卖 + +## 团购 + +- 易混淆:团购,能力还未建设,先都给生活服务,但不额外区分 + +- 划分原则:(TODO) + +- 满足边界问题:与生活服务,购物相关全部都会有冲突;团购火车票团购麦当劳团购故宫门票 + +## 外卖 + +- 易混淆:边界tag:商品购买快递服务 + +- 划分原则:只支持点外卖,查外卖点外卖可以指定外卖员帮我送吗——QA我现在想点外卖又想吃凉拌猪耳朵但是外卖没有凉拌猪耳朵我该怎么办——生活服务 + +- 满足边界问题:商品购买冲突,都属于生活服务我要订外卖买咖啡快递服务,都属于生活服务我在美团上买的手机到哪了 + +## 话费流量服务 + +- 易混淆:边界Agent冲突:控制Agent + +- 划分原则:planning模型分发原则生活服务Agent + +- 满足边界问题:应用控制冲突,此类给到生活服务Agent打开支付宝交话费 + +## 生活缴费 + +- 易混淆:边界Agent冲突:控制Agent + +- 划分原则:planning模型分发原则生活服务Agent + +- 满足边界问题:应用控制冲突,此类给到生活服务Agent打开支付宝进行生活缴费打开支付宝交电费 diff --git a/skills/label-master/knowledge/边界/领域概览/系统控制和IOT设备控制边界.md b/skills/label-master/knowledge/边界/领域概览/系统控制和IOT设备控制边界.md new file mode 100644 index 0000000..d65aa1b --- /dev/null +++ b/skills/label-master/knowledge/边界/领域概览/系统控制和IOT设备控制边界.md @@ -0,0 +1,61 @@ +# 系统控制和IOT设备控制边界 + +## 车载控制 + +- 易混淆:系统控制设备控制应用控制自动任务车载设备状态查询QA + +- 划分原则:边界1:设备识别统一建模,对全部任意device统一定义,不区分车载还是iot场景,默认device是本机。在device正确的前提下,是否走IOT spec协议或协同响应等由skill或control agent自己判断。(TODO,中控设备决策做到什么程度,音箱端:打开摄像头)目前扫地机、洗衣机、冰箱是3个特例。边界2:条件任务,统一建模,全部按照自动任务的形式出function边界3:在车载端,车控优先 + +- 满足边界问题:(待讨论)边界1:车载设备和家庭设备区分车载既有设备属性又有房间属性,因此车载设备可能和家庭设备存在冲突,例如“空调”、“冰箱”、“灯”边界2:车载控制和自动任务(见下面自动任务)车载控制部分指令也存在条件,和自动任务语义存在冲突倒车时后视镜自动下翻需要明确定义出来到底哪些是车载控制,哪些是自动任务手机端等如果要接入自动任务存在相似问题边界3:车载端特有的控制功能,和其他端语义存在冲突 打开360——APP/车控——长线都是控制(只区分控制和IOT)打开监控——IOT/车控(device区分)驾驶模式——QA/车控(分端)以下问题同边界1:车载端特有的控制功能定义为“车载控制”,其他端特有的控制功能会定义成“xx控制”么(其他端暂不定义新的标签)如果把IOT设备拿到车上进行语控,是否属于车载控制(同边界1)对于主控设备的操作是否属于设备控制:(对手机说和对车说不一样,协同响应如何迁移planning模型?)打开车窗打开车辆座椅加热打开车辆方向盘加热打开电视电视播放小猪佩奇跟手机说——IOT电视跟电视说——主控设备跟车说——车载后排电视在当前设备上的系统级别控制请求,但是带设备关键字,是否属于设备控制:电视发起请求:query = 电视音量大一点电视发起请求:query = 电视亮一点手机控车、家控车不属于设备控制,任何控车场景都属于车载控制。例如手机或音箱端发起如下请求:打开车窗打开座椅加热打开方向盘加热主控设备(例如电视、音箱)只有支持spec协议的功能才支持IOT控制,其他不支持的功能需要走协同响应,但是两种场景query类别均属于“设备控制”。例如音箱控电视场景:走IOT控制的功能:打开电视走协同响应的功能:电视播放小猪佩奇在当前设备发起控制当前设备的指令属于系统控制,不属于设备控制:电视发起请求:query = 电视音量大一点音箱发起请求:query = 电视音量大一点 + +## 系统控制 + +- 易混淆:设备控制车载控制应用控制声纹相机控制设备查找闲聊 + +- 划分原则:控制类和端类型强相关,收音设备优先原则系统控制是偏向兜底控制的选择,其他类型的控制偏向白名单实现优先级高于系统控制。例如“声纹”、“相机控制”等功能本质也是调用当前设备系统层面的能力 + +- 满足边界问题:边界1:系统控制和闲聊边界(TODO @苏会钰)q=再见,q=拜拜,认为是退出q=好了,再见吧q=睡觉了q=谢谢q=谢谢,拜拜q=休息吧部分设备端特有的控制功能可能和其他端存在冲突:镜片颜色调深一点眼镜端:tag = 系统控制手机端:tag = 相机这个内容帮我读一遍眼镜端:tag = 图片问答手机端:tag = 系统控制 + +## 系统定时控制 + +- 易混淆:自动任务系统定时控制设备定时控制备忘录-提醒设备控制 + +- 划分原则:长线:全端都统一为自动任务的表示方式短线:适配区分支持自动化和不支持的场景(中控推进) + +- 满足边界问题:自动任务和设备定时控制 & 系统定时控制的冲突:(全部统一成:条件任务,基于该前提重新review function定义)条件统一定义,时间或操作条件执行的action包括:控制、提醒、autotaskquery五分钟后关空调五点关空调五点关机倒车时后视镜自动下翻自动任务和提醒的冲突:早上五点提醒我吃饭十分钟后提醒我吃药 + +## 自动任务 + +- 划分原则:如果query中的条件部分和定时或延时相关,且执行动作和设备控制、系统控制、提醒相关,则自动任务类别不召回。其他场景自动任务召回,自动任务需要召回的典型场景为:十分钟后导航去五彩城下车提醒我拿手机十分钟后关闭空调和座椅加热 + +## 设备查找 + +- 易混淆:记忆个人信息 + +- 划分原则:小爱你在哪——控制xxxx在哪——无法区分设备是否是小米的可以记忆统一处理非小米手机、平板、耳机、手环的查找请求不属于设备查找,属于个人信息(TODO) + +- 满足边界问题:边界1:是否支持非小米设备:设备查找只支持小米手机、平板、耳机、手环。不支持其他品牌设备或其他物品查找,如下case不属于设备查找:我的苹果手机在哪我的袜子在哪帮我记住我的ipad放书包里了,之后问我的Ipad放哪了 + +## 家庭传声 + +- 易混淆:闲聊 + +- 划分原则:有歧义的都认为是闲聊,只有明确语义的是家庭传声query中明确包含家庭传声场景关键字的才给到家庭传声,例如:包含房间或房屋信息:向屋里传个声门没关包含家庭、家人等关键字:跟家里人说洗澡水好了 + +- 满足边界问题:边界1:和闲聊场景可能存在冲突对小红说你好(小红是音箱)让小红说你好(小红是音箱)对音箱说你好(小红是音箱)告诉小明记得吃饭 + +## 声纹 + +- 易混淆:个人信息记忆 + +- 划分原则:和声纹的记录需要给声纹,其他场景的记录给记忆或个人信息 + +- 满足边界问题:和个人信息、记忆存在冲突:记录电话记录外卖地址 + +## 相机 + +- 易混淆:应用控制 + +- 划分原则:针对第三方相机,无法在系统层面进行控制。因此只有原生相机才给到“相机”tag,第三方相机的操作给应用控制 + +- 满足边界问题:和相机相关的app边界存在冲突:打开黄油相机返回美图相机 diff --git a/skills/label-master/knowledge/边界/领域概览/通用问答边界.md b/skills/label-master/knowledge/边界/领域概览/通用问答边界.md new file mode 100644 index 0000000..95fcc6b --- /dev/null +++ b/skills/label-master/knowledge/边界/领域概览/通用问答边界.md @@ -0,0 +1,55 @@ +# 通用问答边界 + +## 医疗问答 + +- 划分原则:时间问答见tools的文档Label定义-工具类如果用户query的满足方式是通过生活服务app(类似美团、大众点评等)搜索附近商家、购买食品等,这种要给生活服务中的美食,但是用户query的满足方式是获取做饭方面的知识,这种给到QA处理优先其他问答垂域,如果其他问答垂域不召,给到QA明确时间节点的时间计算的问答给到时间,不明确的时间计算,例如属狗的今年几岁了,龙年出生的人今年多大了,这种由于无法获取到具体时间,所以不能给时间垂域进行计算,只能给到通用问答优先其他搜索垂域,如果其他问答垂域不召,给到QA + +## 星座 + +- 易混淆:时间 + +- 满足边界问题:六月二十一日是什么日子/节日 + +## 烹饪指南 + +- 易混淆:美食 + +- 满足边界问题:我附近有什么好吃的 + +## 问答 + +- 易混淆:时间、数学、天气、内容问答、地图问答、电话、产品问答、生活服务 + +- 满足边界问题:优先其他问答垂域,如果其他问答垂域不召,给到QA + +## 民俗 + +- 易混淆:时间 + +- 满足边界问题:2000年出生的今年是几岁 + +## 股票查询 + +- 易混淆:QA() + +- 满足边界问题:推荐一只股票查询一下今年涨的最好的医疗股 + +## 重说 + +- 易混淆:系统控制 + +- 满足边界问题:你刚才说什么 + +## 搜索 + +- 易混淆:浏览器搜索含“百度/谷歌/搜一下”等 → 浏览器搜索(搜索引擎)。和各精品搜索之间的冲突:媒体资源类(音乐/电台/视频) 用户可能只是要“找”资源,但同时这些领域都有自己的播放类意图。“搜索/找/查” 且目标是歌曲、歌手、电台节目、视频 → 音乐搜索/电台搜索/视频搜索(落资源域的搜索子类,而不是通用搜索)。地图/生活相关搜索:带“地图搜/查找××地点/搜附近的××” → 落 地图|搜索。“搜附近餐厅/搜酒店/搜电影票” → 生活服务|搜索。图片搜索:“找/搜/图片/表情包/动图” → 图片产品/购物类的搜索:“搜小米品牌/型号/买/比价/同款” → 购物/产品推荐。在应用中搜索:在哔哩哔哩中搜索好看视频 搜索|哔哩哔哩 + +- 划分原则:百科型单个名词实体(人/地/物/书/组织) → 百科(BaikeEntry)。衍生问句型(是谁/是什么/哪里) → Qabot(人物、概念、地理等)。知识类 QA明确对应到兜底知识库(化学式、节日来历、歇后语、古诗词、翻译等) → Qabot。和其他域冲突时图片为主 → 图片搜索导航为主 → 地图导航明确创作意图(写/生成/作文) → 文本创作医疗、菜谱、汽车等有单独垂域时 → 垂域优先 + +## 图片问答 + +- 易混淆:地图问答 + +- 划分原则:图片问答所使用的信息源只有图片,没有其他方法调用或信息查询,如果使用了其他方法或信息源,给到其他具体垂域(待讨论)图片问答和翻译、文档总结、走哪问哪等边界问题 + +- 满足边界问题:【大原则】图片问答、拍照问答、屏幕问答、前车识别不做区分,未来都给VisionQA,图片来源通过imagesource来区分。备注:imagesource从qurey中提取,不会考虑设备类型。如果query中无法体现来源信息:屏幕、拍照、图片之一,则值为unknown,由下游skill满足侧决策。如果有精品垂域能满足,优先给能满足的精品垂域,否则给图片问答或者QA兜底。【和其他垂域的边界】地图问答和图片问答的边界:【方位指示代词】+【建筑、楼、poi】给地图问答,地图问答的实际满足能力分端,但是语义code层面不用分端,具体如下:车载、眼镜:地图问答有多模态能力,结合location、图片进行满足。对应意图标签:拍照问答。手机:地图问答没有多模态能力,结合location进行普通文本问答。QA和图片问答的边界:主要是模糊类query,不同端不一致,比如:q=比如我前边是什么东西?手机端:应该给QA兜底。因为【东西】非建筑等宏观物体,因此不给地图问答;手机没有view视野,因此没有前边的概念,不能给拍照问答。眼镜端:拍照问答,有实时视野画面,需要进行视觉理解。车载端:QA,歧义query,图片问答、地图问答都不接。记忆和图片问答的边界,记忆有多模态能力,优先给记忆精品垂域。举例:记一下这个卡路里。打电话和图片问答的边界,打电话有多模态能力,如果这个是指屏幕上的电话,优先给电话。举例:打给这个电话和文档总结的边界,文档总结有多模态能力,文档总结的多模态问答优先给文档总结和其他Agent,由于如下Agent没有多模态能力,因此按照原则由图片问答兜底,由于理解用户query需要视觉能力,因此图片问答优先级高于QA,包括如下,内容agent,举例:屏幕上这歌原唱是谁、播放这部电影WeatherQA,举例:照片中城市最近的天气lifeAgent,举例:图中景点门票多少钱、图中手机多少钱、帮我买屏幕上这款汽车controlAgent:安装这个app diff --git a/skills/label-master/knowledge/边界/高频混淆/内容播放-播放器控制-播放状态.md b/skills/label-master/knowledge/边界/高频混淆/内容播放-播放器控制-播放状态.md new file mode 100644 index 0000000..e059653 --- /dev/null +++ b/skills/label-master/knowledge/边界/高频混淆/内容播放-播放器控制-播放状态.md @@ -0,0 +1,68 @@ +# 内容播放-播放器控制-播放状态 + +## 适用场景 + +当 query 涉及播放音乐、视频、电台、有声内容、播放器控制、当前播放内容查询、听歌识曲或指定 App 播放时,容易在内容类标签之间混淆。 + +## 候选集合 + +- `音乐播放`:播放歌曲、歌手、专辑、音乐风格,或听歌识曲之外的音乐播放需求。 +- `视频播放`:播放电影、电视剧、综艺、动画、短视频等视频内容。 +- `电台播放`:播放播客、有声书、相声、评书、电台、故事等有声内容。 +- `媒体应用播放`:明确指定第三方影音 App 并要求播放内容。 +- `播放器控制`:暂停、继续、上一首、下一首、快进、跳到指定位置、循环播放等不需要重新搜索的播放器按钮操作。 +- `媒体资源切换`:换一个版本、换一首歌曲等需要重新推荐或搜索的资源切换。 +- `播放状态查询`:对当前正在播放内容进行查询。 +- `听歌识曲`:识别外部环境或非本机播放歌曲。 +- `QA()`:静态内容知识问答,不依赖当前播放状态。 + +## 决策顺序 + +1. 先判断是否是播放动作: + - “播放/放/听/看 + 内容名”:按内容类型进入音乐、视频、电台。 + - “用某 App 播放”:优先 `媒体应用播放`。 +2. 再判断是否是播放器控制: + - “暂停、继续、下一首、上一集、快进、跳到十分钟、单曲循环”:优先 `播放器控制`。 +3. 再判断是否需要重新搜索/推荐: + - “换一首歌曲、换个版本、来个别的”:偏 `媒体资源切换`。 +4. 再判断是否是状态查询: + - “这首歌是谁唱的、现在放的是什么歌、这个演员是谁”:如果依赖当前播放内容,优先 `播放状态查询`。 +5. 再判断是否是听歌识曲: + - “识别一下这首歌、听歌识曲”且不是本机播放内容,优先 `听歌识曲`。 +6. 如果只是知识问答: + - “周杰伦是谁、甄嬛传滴血认亲是哪一集”:按具体内容问答或 `QA()`。 + +## 正例 + +| query | 推荐 | 原因 | +| --- | --- | --- | +| 播放周杰伦的晴天 | 音乐播放 | 明确播放歌曲 | +| 看一段猫咪搞笑视频 | 视频播放 | 明确播放视频 | +| 我要听斗破苍穹 | 电台播放 | 有声内容 | +| 用 Bilibili 播放三体动画 | 媒体应用播放 | 指定 App 播放 | +| 下一首 | 播放器控制 | 按钮级控制,不重新搜索 | +| 换一首歌曲 | 媒体资源切换 | 需要重新换资源 | +| 现在放的是什么歌 | 播放状态查询 | 查询当前播放内容 | +| 识别一下这首歌 | 听歌识曲 | 识别环境音乐 | + +## 反例 + +| query | 不应给 | 推荐 | +| --- | --- | --- | +| 下一首我的大学 | 播放器控制 | 音乐播放,带资源名称 | +| 甄嬛传滴血认亲是哪一集 | 视频播放 | 媒体资源问答或 QA | +| 周杰伦是谁 | 音乐播放 | QA 或音乐问答 | +| 打开热歌榜 | 音乐播放 | 应用控制或内容入口,需看端侧能力 | +| 播放热歌榜 | 应用控制 | 音乐播放 | + +## 输出建议 + +- 播放动作和控制动作必须分开判断。 +- “换一首”这类短句需要看上下文:如果是播放器按钮行为,偏 `播放器控制`;如果是资源推荐,偏 `媒体资源切换`。 +- 当前播放状态查询依赖上下文,不要把静态百科问答误判为播放状态查询。 + +## 仍需确认 + +- 当前是否有本机播放内容。 +- 用户是否指定了 App。 +- “换一首/下一个”是按钮操作还是重新推荐。 diff --git a/skills/label-master/knowledge/边界/高频混淆/地图导航-餐饮服务.md b/skills/label-master/knowledge/边界/高频混淆/地图导航-餐饮服务.md new file mode 100644 index 0000000..276255e --- /dev/null +++ b/skills/label-master/knowledge/边界/高频混淆/地图导航-餐饮服务.md @@ -0,0 +1,56 @@ +# 地图导航-餐饮服务 + +这个边界用于判断“找附近 POI / 美食 / 奶茶 / 餐厅”和“导航去某地”之间的标签归属。 + +## 核心判断 + +- 明确要求导航、带路、路线规划、去某个地点:优先 `地图导航`。 +- 查找、推荐、比较附近或某地的餐饮 POI,但没有明确导航动作:优先 `餐饮服务`。 +- 单实体 POI 只说名字或问知识时,需要结合上下文;没有动作诉求时不要只因为是地点就强行给地图导航。 + +## 地图导航 + +适合: + +- 导航去附近的奶茶店。 +- 带我去最近的海底捞。 +- 怎么去评分最高的鄂菜馆。 +- 去公司附近的充电站。 + +判断依据: + +- query 中出现“导航去”“带我去”“怎么去”“去 xxx”“路线”“途经点”等动作。 +- 用户目标是到达某地点,而不是了解、推荐或比较餐饮信息。 + +## 餐饮服务 + +适合: + +- 附近有什么好吃的。 +- 附近的奶茶店推荐一下。 +- 北京有什么好吃的。 +- 附近的海底捞评分怎么样。 + +判断依据: + +- query 的核心是餐饮 POI 查询、推荐、问答或比较。 +- 没有明确要求开始导航或规划路线。 + +## 易混淆点 + +- “附近的海底捞”如果只是查找或推荐,偏餐饮服务;如果说“导航到附近的海底捞”,偏地图导航。 +- “xxx 在哪”在旧规则里常偏地图,但如果 xxx 是餐饮/酒店/旅游 POI,且用户意图是生活服务信息,也可能需要结合端侧和上下文判断。 +- 车载端和导航上下文中,和当前位置、路线、目的地强相关的问题更容易进入地图导航。 + +## 输出建议 + +分析边界样本时,不要只看关键词“附近”或 POI 名称。先判断用户要的是“找/推荐/了解”还是“去/导航/路线”。 + +如果当前任务要求旧 Agent 包装,输出可以是: + +```text +Agent(tag="地图导航") +Agent(tag="餐饮服务") +``` + +如果当前任务要求 intent,输出 intent 名即可。不要在没有确认 function 化定义时编造地图或餐饮 function。 diff --git a/skills/label-master/knowledge/边界/高频混淆/地图问答-餐饮服务-旅游.md b/skills/label-master/knowledge/边界/高频混淆/地图问答-餐饮服务-旅游.md new file mode 100644 index 0000000..4e1ec59 --- /dev/null +++ b/skills/label-master/knowledge/边界/高频混淆/地图问答-餐饮服务-旅游.md @@ -0,0 +1,65 @@ +# 地图问答-餐饮服务-旅游 + +## 适用场景 + +当 query 涉及 POI、附近、周边、沿途、目的地附近、餐饮、景点、酒店、路线信息时,容易在 `地图问答`、`地图导航`、`餐饮服务`、`旅游`、`酒店`、`QA()` 之间混淆。 + +## 候选集合 + +- `地图导航`:用户要去某地、导航、带路、路线规划。 +- `地图问答`:用户问路线、当前位置、限速、路况、到达时间、距离、途经城市、目的地信息等地图上下文问题。 +- `餐饮服务`:餐饮 POI 查找、推荐、比较、问答。 +- `旅游`:景点、游玩、门票、攻略、开放时间、适合季节、景区问答。 +- `酒店`:订酒店、找酒店、酒店价格/位置/评价。 +- `QA()`:泛知识,不依赖当前位置、地图上下文或生活服务能力。 + +## 决策顺序 + +1. 先判断动作诉求: + - “导航去、带我去、怎么去、去 xxx、路线、途经点”:优先 `地图导航`。 + - “到目的地多久、堵不堵、限速、沿途城市、这里是哪”:优先 `地图问答`。 + - “推荐、找、附近有什么、评分、营业时间、排队”:继续看 POI 类型。 +2. 再判断 POI 类型: + - 餐厅、美食、奶茶、海底捞、火锅、咖啡:优先 `餐饮服务`。 + - 景点、公园、博物馆、攻略、门票、游玩:优先 `旅游`。 + - 酒店、民宿、住宿:优先 `酒店`。 +3. 再看上下文和设备: + - 导航中、车载端、query 依赖当前位置或路线,地图类候选权重更高。 + - 无地图上下文,只是知识问答,生活服务或 `QA()` 权重更高。 +4. 最后判断输出形态: + - 如果使用旧 tag 体系,可能是 `Agent(tag="餐饮服务")` / `Agent(tag="地图导航")`。 + - 如果使用 intent 体系,输出 intent 名。 + - 如果 function 化定义不完整,不要伪造 function。 + +## 正例 + +| query | 推荐 | 原因 | +| --- | --- | --- | +| 导航去附近的奶茶店 | 地图导航 | 明确导航动作 | +| 附近有什么好吃的 | 餐饮服务 | 餐饮 POI 推荐,没有导航动作 | +| 前面怎么走比较好 | 地图问答 | 路线/导航上下文问答 | +| 途径哪些城市 | 地图问答 | 路线途经信息 | +| 广州有什么好玩的 | 旅游 | 旅游/景点推荐 | +| 故宫门票多少钱 | 旅游 | 景区门票信息 | +| 附近的酒店 | 酒店 | 住宿 POI | + +## 反例 + +| query | 不应给 | 推荐 | +| --- | --- | --- | +| 附近的海底捞评分怎么样 | 地图导航 | 餐饮服务 | +| 怎么去最近的海底捞 | 餐饮服务 | 地图导航 | +| 兰州拉面来源于哪里 | 餐饮服务 | QA 或美食问答,需按当前标签体系确认 | +| 襄阳古城位于我们的西边吗 | 旅游 | 地图问答 | +| 颐和园简介 | 地图导航 | 旅游或 QA,按当前生活服务优先规则确认 | + +## 输出建议 + +- “找/推荐/问答”不等于地图,“去/导航/路线”才强指向地图导航。 +- POI 类型优先用于区分生活服务类候选;动作诉求优先用于区分地图导航。 +- 如果 query 同时包含生活服务 POI 和导航动作,导航动作优先。 + +## 仍需确认 + +- 当前任务是否要求 `Agent(tag="xxx")` 包装。 +- 生活服务问答是否统一进入 `餐饮服务` / `旅游`,还是回退 `QA()`。 diff --git a/skills/label-master/knowledge/边界/高频混淆/系统控制-设备控制-车载控制.md b/skills/label-master/knowledge/边界/高频混淆/系统控制-设备控制-车载控制.md new file mode 100644 index 0000000..d066d1d --- /dev/null +++ b/skills/label-master/knowledge/边界/高频混淆/系统控制-设备控制-车载控制.md @@ -0,0 +1,67 @@ +# 系统控制-设备控制-车载控制 + +## 适用场景 + +当 query 是“打开、关闭、调节、设置、查询状态”等控制类表达时,容易在 `系统控制`、`设备控制`、`车载控制`、`应用控制`、`相机`、`声纹`、`设备查找`、`自动任务` 之间混淆。 + +## 候选集合 + +- `系统控制`:当前设备或通用系统层能力,如音量、亮度、关机、护眼、截图、朗读屏幕、系统开关。 +- `设备控制`:IoT 设备控制,如灯、空调、电视、扫地机、洗衣机等,通常涉及家庭/房间/米家设备。 +- `车载控制`:车载设备和车辆特有能力,如车窗、座椅、雨刮、前备箱、智驾、泊车、哨兵、驾驶模式。 +- `应用控制`:打开/关闭 App、进入 App 页面、App 内操作。 +- `相机` / `声纹` / `设备查找`:白名单型专项控制标签,优先级高于系统控制兜底。 +- `自动任务`:存在条件触发结构时,优先进入自动任务维度。 + +## 决策顺序 + +1. 先判断是否是条件触发: + - “当/如果/时候/之后/到达/每/一...就”:先读 `自动任务判断.md`,不要直接给普通控制标签。 +2. 再判断控制对象: + - 当前设备系统属性:优先 `系统控制`。 + - 家庭 IoT / 米家设备:优先 `设备控制`。 + - 车辆部件或车载特有功能:优先 `车载控制`。 + - App 或页面:优先 `应用控制`。 + - 声纹、相机、查找设备等专项能力:优先专项标签。 +3. 再看发起端和上下文: + - 车载端中“空调、座椅、车窗、方向盘”等优先 `车载控制`。 + - 家庭音箱/手机控制家中设备,优先 `设备控制`。 + - 控制当前设备自身音量/亮度,优先 `系统控制`。 +4. 最后处理歧义: + - 如果设备词既可能是当前设备又可能是 IoT 设备,例如“电视音量大一点”,需要看发起端和用户意图。 + - 如果上下文缺失且影响标签,向用户确认或在结果中标注不确定点。 + +## 正例 + +| query | 推荐 | 原因 | +| --- | --- | --- | +| 音量大一点 | 系统控制 | 当前设备系统属性 | +| 屏幕亮度调到 50 | 系统控制 | 当前设备系统设置 | +| 打开主卧空调 | 设备控制 | 家庭 IoT + 房间 | +| 扫地机扫一下客厅 | 设备控制 | IoT 设备控制 | +| 打开车窗 | 车载控制 | 车辆部件 | +| 副驾座椅加热打开 | 车载控制 | 车载座椅能力 | +| 打开微信 | 应用控制 | App 打开 | +| 找一下我的手机 | 设备查找 | 专项能力 | + +## 反例 + +| query | 不应给 | 推荐 | +| --- | --- | --- | +| 上车时打开空调 | 车载控制 | 自动任务维度 + subquery 车载控制 | +| 电视音量大一点 | 固定系统控制 | 需要看发起端:电视自身可能系统控制,音箱控电视可能设备控制 | +| 打开相机倒计时 | 系统控制 | 相机 | +| 录入声纹 | 系统控制 | 声纹 | +| 打开智能驾驶 | 应用控制 | 车载控制 | + +## 输出建议 + +- 结构上命中自动任务时,最终输出通常是带 `condition` 的 group,而不是单个控制标签。 +- 控制类标签经常有端侧依赖,输出时应说明“依据当前设备/上下文判断”。 +- 如果当前任务要求 function program,但控制类 function 未共识,不要编造函数;先用 intent 或 Agent 包装,并标记待确认。 + +## 仍需确认 + +- 当前设备端是什么。 +- query 中的设备是当前设备、IoT 被控设备,还是车载部件。 +- 控制类 function 是否已经有正式函数化定义。 diff --git a/skills/label-master/knowledge/边界/高频混淆/通用问答-文档总结-Summarize.md b/skills/label-master/knowledge/边界/高频混淆/通用问答-文档总结-Summarize.md new file mode 100644 index 0000000..d501a1d --- /dev/null +++ b/skills/label-master/knowledge/边界/高频混淆/通用问答-文档总结-Summarize.md @@ -0,0 +1,59 @@ +# 通用问答-文档总结-Summarize + +## 适用场景 + +当 query 包含“总结一下、概括、提炼、分析这个、这篇文章、这个网页、这个文档、屏幕上的内容”等表达时,容易在 `文档总结`、`Summarize()`、`QA()`、`文本创作`、`图片问答` 之间混淆。 + +## 候选集合 + +- `文档总结`:旧 tag 或 Agent 包装候选。 +- `Summarize()`:function program,适合已经确认有文档、URL 或资源对象时。 +- `QA()`:泛知识问答,没有可总结资源,或用户问的是开放知识。 +- `文本创作` / `Generate(object=Text)`:用户不是要求总结已有内容,而是要求生成新文本、评论、文案、文章。 +- `VisionQA()`:用户问题依赖图片、屏幕、拍照或视觉指代,且不是明确文档/URL 总结。 + +## 决策顺序 + +1. 先判断是否存在可总结资源: + - 明确文档、网页、URL、附件、屏幕文章、图片形式的文档。 + - 多轮上下文里上一轮刚上传或打开了资源。 +2. 如果有资源,再判断资源类型: + - 文档:`x0=Resource(type="DOC")` + `Summarize(object=x0)`。 + - URL/网页:`x0=Resource(type="URL")` + `Summarize(object=x0)`。 + - 未知资源但明确“总结一下”:可以使用 `Summarize()`,并在结果中标注资源待系统补全。 +3. 如果没有资源,只是问知识: + - “总结一下红楼梦”:通常是 `QA()`,不是文档总结。 + - “介绍一下孔乙己”:通常是 `QA()`。 +4. 如果用户要求基于已有内容生成新文本: + - “根据这篇文章写一段评论”:需要区分任务是否要求总结,还是创作。可以先总结资源,再进入文本创作,但最终 target 需按当前任务定义确认。 +5. 如果 query 依赖视觉内容: + - “屏幕上这段话是什么意思”:如果屏幕内容是文档/文章,偏 `Summarize()`;如果是图片、图标、题目或视觉指代,偏 `VisionQA()`。 + +## 正例 + +| query | 推荐 | +| --- | --- | +| 总结一下这个文档 | `x0=Resource(type="DOC")` + `Summarize(object=x0)` | +| 这个网页讲了什么 | `x0=Resource(type="URL")` + `Summarize(object=x0)` | +| 总结一下 | `Summarize()`,资源由上下文或系统补全 | +| 总结一下这篇论文的核心观点 | `Summarize()`,如果已知是文档则补 `Resource(type="DOC")` | + +## 反例 + +| query | 不应给 | 推荐 | +| --- | --- | --- | +| 总结一下红楼梦 | `Summarize()` | `QA()` | +| 孔乙己这篇文章主要讲什么 | 无上下文资源时不要强行文档总结 | `QA()` | +| 写一段关于这篇文章的朋友圈文案 | 单纯 `Summarize()` | 需要确认是否文本创作,或先总结再生成 | +| 这个图标是什么意思 | `Summarize()` | `VisionQA()` 或图片问答 | + +## 输出建议 + +- 如果当前任务使用 function program,优先输出 `Summarize()` 或 object + `Summarize(object=x0)`。 +- 如果当前任务仍使用旧 tag,使用 `Agent(tag="文档总结")` 前必须确认这批数据要求 Agent 包装。 +- 如果只是“总结一下某个知识实体”,不要因为出现“总结”两个字就给 `Summarize()`。 + +## 仍需确认 + +- 资源是否真实存在,还是用户只是问一个知识实体。 +- 当前数据集 target 要求是 function program、intent,还是 `Agent(tag="xxx")`。 diff --git a/skills/label-master/knowledge/迁移记录.md b/skills/label-master/knowledge/迁移记录.md new file mode 100644 index 0000000..1b10c45 --- /dev/null +++ b/skills/label-master/knowledge/迁移记录.md @@ -0,0 +1,21 @@ +# 迁移记录 + +本文件只记录旧标签文档向 Markdown 知识库迁移的过程,不作为标签判断的主要知识入口。 + +## 初始来源 + +- `标签定义/Agent技术方案汇总.docx` +- `标签定义/Label定义-AI创作.docx` +- `标签定义/Label定义-内容和媒体播放.docx` +- `标签定义/Label定义-地图导航.docx` +- `标签定义/Label定义-小米产品问答.docx` +- `标签定义/Label定义-工具类.docx` +- `标签定义/Label定义-应用控制和搜索.docx` +- `标签定义/Label定义-生活服务.docx` +- `标签定义/Label定义-系统控制和IOT设备控制.docx` +- `标签定义/Label定义-通用问答.docx` +- `标签定义/重构数据标签梳理.xlsx` + +## 维护约定 + +旧文档只作为一次性迁移输入。知识迁移完成后,后续人工维护以 `knowledge/` 下的 Markdown 文件为准。 diff --git a/skills/label-master/scripts/build_label_manifest.py b/skills/label-master/scripts/build_label_manifest.py new file mode 100755 index 0000000..8587fd9 --- /dev/null +++ b/skills/label-master/scripts/build_label_manifest.py @@ -0,0 +1,331 @@ +#!/usr/bin/env python3 +"""从 Markdown 标签知识库生成机器可读索引。 + +这个脚本只做确定性整理,不做语义判断: +- 人继续维护 knowledge/ 下的中文 Markdown。 +- 脚本把标签、intent、function、object、边界文件整理成 JSON manifest。 +- Agent 和校验脚本优先读取 manifest,避免每次全量扫描知识库。 +""" + +from __future__ import annotations + +import argparse +import json +import re +import sys +from pathlib import Path +from typing import Any + + +SCRIPT_PATH = Path(__file__).resolve() +SKILL_ROOT = SCRIPT_PATH.parents[1] +KNOWLEDGE_ROOT = SKILL_ROOT / "knowledge" +DEFAULT_OUTPUT = KNOWLEDGE_ROOT / "索引" / "label_manifest.json" + + +def read_text(path: Path) -> str: + return path.read_text(encoding="utf-8") + + +def rel(path: Path) -> str: + return path.relative_to(SKILL_ROOT).as_posix() + + +def first_heading(text: str, fallback: str) -> str: + match = re.search(r"^#\s+(.+?)\s*$", text, re.MULTILINE) + return match.group(1).strip() if match else fallback + + +def extract_section(text: str, heading: str) -> str: + pattern = rf"^##\s+{re.escape(heading)}\s*$" + match = re.search(pattern, text, re.MULTILINE) + if not match: + return "" + start = match.end() + next_match = re.search(r"^##\s+", text[start:], re.MULTILINE) + end = start + next_match.start() if next_match else len(text) + return text[start:end].strip() + + +def extract_bullet_value(text: str, label: str) -> str: + match = re.search(rf"^-\s*{re.escape(label)}[::]\s*(.+?)\s*$", text, re.MULTILINE) + return match.group(1).strip() if match else "" + + +def parse_markdown_table(text: str) -> list[dict[str, str]]: + rows: list[dict[str, str]] = [] + table_lines = [line.strip() for line in text.splitlines() if line.strip().startswith("|")] + if len(table_lines) < 2: + return rows + header = [cell.strip() for cell in table_lines[0].strip("|").split("|")] + for line in table_lines[2:]: + cells = [cell.strip() for cell in line.strip("|").split("|")] + if len(cells) != len(header): + continue + rows.append(dict(zip(header, cells))) + return rows + + +def parse_enum_values(description: str) -> list[str]: + if "枚举" not in description: + return [] + desc = re.sub(r"[,。;;].*$", "", description.split("枚举", 1)[-1]) + desc = desc.replace(":", ":") + if ":" in desc: + desc = desc.split(":", 1)[1] + parts = re.split(r"[、,,/| 或 和]+", desc) + values: list[str] = [] + for part in parts: + cleaned = part.strip().strip("`").strip() + cleaned = re.sub(r"[((].*?[))]", "", cleaned).strip() + if cleaned and re.fullmatch(r"[A-Za-z0-9_]+", cleaned): + values.append(cleaned) + return values + + +def parse_label_cards() -> list[dict[str, Any]]: + labels_root = KNOWLEDGE_ROOT / "标签" + labels: list[dict[str, Any]] = [] + if not labels_root.exists(): + return labels + + for path in sorted(labels_root.rglob("*.md")): + text = read_text(path) + name = first_heading(text, path.stem) + domain = path.parent.name + label = { + "name": name, + "domain": domain, + "path": rel(path), + "old_tag": extract_bullet_value(text, "旧 tag 标签"), + "agent_candidate": extract_bullet_value(text, "Agent 包装候选(不代表最终)"), + "function_candidate": extract_bullet_value(text, "Function 输出候选"), + "recommended_output_shape": extract_bullet_value(text, "推荐输出形态"), + "scope": extract_section(text, "适用范围"), + "examples": extract_section(text, "典型 Query"), + "confusing_labels": extract_section(text, "易混淆标签"), + "principles": extract_section(text, "划分原则"), + } + labels.append(label) + return labels + + +def parse_function_catalog() -> list[dict[str, Any]]: + path = KNOWLEDGE_ROOT / "输出能力" / "函数目录.md" + if not path.exists(): + return [] + text = read_text(path) + functions: list[dict[str, Any]] = [] + sections = list(re.finditer(r"^##\s+(.+?)\s*$", text, re.MULTILINE)) + for index, match in enumerate(sections): + name = match.group(1).strip() + start = match.end() + end = sections[index + 1].start() if index + 1 < len(sections) else len(text) + body = text[start:end].strip() + params: dict[str, dict[str, Any]] = {} + param_block = "" + if "参数:" in body: + param_block = body.split("参数:", 1)[1] + if "示例:" in param_block: + param_block = param_block.split("示例:", 1)[0] + for row in parse_markdown_table(param_block): + param_name = row.get("参数", "").strip() + description = row.get("说明", "").strip() + if not param_name: + continue + params[param_name] = { + "description": description, + "enum_values": parse_enum_values(description), + } + functions.append( + { + "name": name, + "path": rel(path), + "params": params, + "allow_unknown_params": False, + "summary": re.sub(r"\s+", " ", extract_summary(body)).strip(), + } + ) + return functions + + +def parse_object_catalog() -> list[dict[str, Any]]: + path = KNOWLEDGE_ROOT / "输出能力" / "对象目录.md" + if not path.exists(): + return [] + text = read_text(path) + objects: list[dict[str, Any]] = [] + + sections = list(re.finditer(r"^##\s+(.+?)\s*$", text, re.MULTILINE)) + for index, match in enumerate(sections): + name = match.group(1).strip() + start = match.end() + end = sections[index + 1].start() if index + 1 < len(sections) else len(text) + body = text[start:end].strip() + + if name in {"VisionQA 辅助对象", "生成类辅助对象"}: + for row in parse_markdown_table(body): + object_name = row.get("对象", "").strip() + if object_name: + objects.append( + { + "name": object_name, + "path": rel(path), + "params": {}, + "allow_unknown_params": True, + "summary": row.get("说明", "").strip(), + } + ) + continue + + params: dict[str, dict[str, Any]] = {} + param_block = body.split("参数:", 1)[1] if "参数:" in body else "" + if "示例:" in param_block: + param_block = param_block.split("示例:", 1)[0] + for row in parse_markdown_table(param_block): + param_name = row.get("参数", "").strip() + description = row.get("说明", "").strip() + if not param_name: + continue + params[param_name] = { + "description": description, + "enum_values": parse_enum_values(description), + } + objects.append( + { + "name": name, + "path": rel(path), + "params": params, + "allow_unknown_params": False, + "summary": re.sub(r"\s+", " ", extract_summary(body)).strip(), + } + ) + return objects + + +def parse_intent_catalog() -> list[dict[str, Any]]: + path = KNOWLEDGE_ROOT / "输出能力" / "意图目录.md" + if not path.exists(): + return [] + text = read_text(path) + intents: list[dict[str, Any]] = [] + for row in parse_markdown_table(text): + name = row.get("intent", "").replace("\\|", "|").strip() + if not name: + continue + intents.append( + { + "name": name, + "agent": row.get("Agent", "").strip(), + "instruction_type": row.get("指令类型", "").strip(), + "scope": row.get("简要范围", "").strip(), + "path": rel(path), + } + ) + return intents + + +def extract_summary(body: str) -> str: + match = re.search(r"功能范围[::]\s*(.+?)(?:\n\n|$)", body, re.DOTALL) + return match.group(1).strip() if match else "" + + +def parse_boundary_files() -> list[dict[str, str]]: + boundary_root = KNOWLEDGE_ROOT / "边界" + if not boundary_root.exists(): + return [] + files: list[dict[str, str]] = [] + for path in sorted(boundary_root.rglob("*.md")): + if path.name == "README.md": + continue + text = read_text(path) + parts = path.relative_to(boundary_root).parts + category = parts[0] if len(parts) > 1 else "root" + files.append({"name": first_heading(text, path.stem), "path": rel(path), "category": category}) + return files + + +def parse_dimension_files() -> list[dict[str, str]]: + root = KNOWLEDGE_ROOT / "判断维度" + if not root.exists(): + return [] + files: list[dict[str, str]] = [] + for path in sorted(root.glob("*.md")): + if path.name == "README.md": + continue + text = read_text(path) + files.append({"name": first_heading(text, path.stem), "path": rel(path)}) + return files + + +def build_manifest() -> dict[str, Any]: + labels = parse_label_cards() + functions = parse_function_catalog() + objects = parse_object_catalog() + intents = parse_intent_catalog() + + old_tags = sorted({item["old_tag"] for item in labels if item.get("old_tag") and item["old_tag"] != "待确认。"}) + label_names = sorted({item["name"] for item in labels}) + agent_tags = sorted(set(old_tags) | set(label_names)) + + return { + "schema_version": 1, + "skill": "label-master", + "display_name": "标签大师", + "description": "标签大师的中控标签知识库机器索引;由 scripts/build_label_manifest.py 从 Markdown 生成。", + "counts": { + "labels": len(labels), + "agent_tags": len(agent_tags), + "functions": len(functions), + "objects": len(objects), + "intents": len(intents), + }, + "agent_tags": agent_tags, + "labels": labels, + "functions": functions, + "objects": objects, + "intents": intents, + "boundaries": parse_boundary_files(), + "dimensions": parse_dimension_files(), + } + + +def write_manifest(path: Path, manifest: dict[str, Any]) -> None: + path.parent.mkdir(parents=True, exist_ok=True) + text = json.dumps(manifest, ensure_ascii=False, indent=2, sort_keys=True) + "\n" + path.write_text(text, encoding="utf-8") + + +def main(argv: list[str] | None = None) -> int: + parser = argparse.ArgumentParser(description="生成 label-master 标签大师机器索引") + parser.add_argument("--output", default=str(DEFAULT_OUTPUT), help="输出 JSON 路径") + parser.add_argument("--check", action="store_true", help="只检查输出文件是否为最新,不写入") + args = parser.parse_args(argv) + + output = Path(args.output) + if not output.is_absolute(): + output = SKILL_ROOT / output + + manifest = build_manifest() + new_text = json.dumps(manifest, ensure_ascii=False, indent=2, sort_keys=True) + "\n" + + if args.check: + if not output.exists(): + print(f"ERROR: manifest 不存在:{output}", file=sys.stderr) + return 1 + old_text = output.read_text(encoding="utf-8") + if old_text != new_text: + print(f"ERROR: manifest 不是最新:{output}", file=sys.stderr) + return 1 + print(f"OK: manifest 已是最新:{output}") + return 0 + + output.parent.mkdir(parents=True, exist_ok=True) + output.write_text(new_text, encoding="utf-8") + print(f"Wrote {output}") + print(json.dumps(manifest["counts"], ensure_ascii=False, sort_keys=True)) + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/skills/label-master/scripts/validate_label_output.py b/skills/label-master/scripts/validate_label_output.py new file mode 100755 index 0000000..6ec32bb --- /dev/null +++ b/skills/label-master/scripts/validate_label_output.py @@ -0,0 +1,336 @@ +#!/usr/bin/env python3 +"""校验标签输出格式是否合法。 + +这个脚本只做“格式、存在性、引用关系”的确定性校验,不判断 query 语义。 +适合在 Agent 给出 target 后、写入训练/评测数据前调用。 +""" + +from __future__ import annotations + +import argparse +import ast +import json +import re +import sys +from pathlib import Path +from typing import Any + +try: + from build_label_manifest import DEFAULT_OUTPUT, SKILL_ROOT, build_manifest +except ImportError: # pragma: no cover - 兼容从其他 cwd 直接执行 + sys.path.insert(0, str(Path(__file__).resolve().parent)) + from build_label_manifest import DEFAULT_OUTPUT, SKILL_ROOT, build_manifest + + +AGENT_RE = re.compile(r'^Agent\(\s*tag\s*=\s*["\'](.+?)["\']\s*\)$') +ASSIGNMENT_RE = re.compile(r"^(x\d+)\s*=\s*(.+)$") + + +def normalize_quotes(text: str) -> str: + return ( + text.replace("“", '"') + .replace("”", '"') + .replace("‘", "'") + .replace("’", "'") + .strip() + ) + + +def load_manifest(path: Path) -> dict[str, Any]: + if path.exists(): + return json.loads(path.read_text(encoding="utf-8")) + return build_manifest() + + +def names_by_key(items: list[dict[str, Any]]) -> dict[str, dict[str, Any]]: + return {item["name"]: item for item in items if item.get("name")} + + +class LabelOutputValidator: + def __init__(self, manifest: dict[str, Any]): + self.manifest = manifest + self.agent_tags = set(manifest.get("agent_tags", [])) + self.functions = names_by_key(manifest.get("functions", [])) + self.objects = names_by_key(manifest.get("objects", [])) + self.intents = names_by_key(manifest.get("intents", [])) + + def validate(self, raw_target: str) -> dict[str, Any]: + target = normalize_quotes(raw_target) + result: dict[str, Any] = { + "valid": True, + "detected_type": "unknown", + "normalized_output": target, + "errors": [], + "warnings": [], + "references": [], + } + + if not target: + self.error(result, "输出为空") + return result + + dimensions, target_body = self.split_dimension_prefix(target) + if dimensions: + result["dimensions"] = dimensions + target_body = target_body.strip() + + if target_body.startswith("["): + self.validate_group_json(target_body, result) + elif AGENT_RE.match(target_body): + self.validate_agent_target(target_body, result) + elif self.looks_like_call_program(target_body): + self.validate_call_program(target_body, result) + elif target_body in self.intents: + result["detected_type"] = "intent" + result["references"].append({"type": "intent", "name": target_body}) + elif target_body in self.agent_tags: + result["detected_type"] = "bare_label" + result["warnings"].append("只输出了标签名;如果当前任务需要可消费 target,建议明确 intent、function 或 Agent 包装形式") + result["references"].append({"type": "label", "name": target_body}) + else: + self.error(result, f"无法识别的输出形式:{target_body}") + + if dimensions: + result["normalized_output"] = "\n".join([*dimensions, result["normalized_output"]]) + result["valid"] = not result["errors"] + return result + + def split_dimension_prefix(self, target: str) -> tuple[list[str], str]: + dimensions: list[str] = [] + lines = [line.strip() for line in target.splitlines() if line.strip()] + while lines and re.fullmatch(r"(complex|multi_instruction|auto_task)\s*=\s*(true|false)", lines[0], re.I): + key, value = [part.strip().lower() for part in lines.pop(0).split("=", 1)] + dimensions.append(f"{key}={value}") + return dimensions, "\n".join(lines) + + def validate_agent_target(self, target: str, result: dict[str, Any]) -> None: + result["detected_type"] = "agent" + match = AGENT_RE.match(target) + assert match is not None + tag = match.group(1) + result["normalized_output"] = f'Agent(tag="{tag}")' + if tag not in self.agent_tags: + self.error(result, f'Agent tag 不在标签知识库中:{tag}') + return + result["references"].append({"type": "agent_tag", "name": tag}) + + def looks_like_call_program(self, target: str) -> bool: + lines = [line.strip() for line in target.splitlines() if line.strip()] + return bool(lines) and all("(" in line and line.endswith(")") for line in lines) + + def validate_call_program(self, target: str, result: dict[str, Any]) -> None: + result["detected_type"] = "function_program" + variables: dict[str, str] = {} + lines = [line.strip() for line in target.splitlines() if line.strip()] + + for index, line in enumerate(lines): + assignment = ASSIGNMENT_RE.match(line) + if assignment: + var_name, expr = assignment.group(1), assignment.group(2).strip() + call_info = self.parse_call(expr, result, line) + if not call_info: + continue + object_name = call_info["name"] + if object_name not in self.objects: + self.error(result, f"变量 {var_name} 只能绑定 object,但 {object_name} 不在对象目录中") + continue + self.validate_call_kwargs(call_info, self.objects[object_name], result) + variables[var_name] = object_name + result["references"].append({"type": "object", "name": object_name, "variable": var_name}) + continue + + call_info = self.parse_call(line, result, line) + if not call_info: + continue + function_name = call_info["name"] + if function_name not in self.functions: + self.error(result, f"最终调用必须是已定义 function,但 {function_name} 不在函数目录中") + continue + self.validate_call_kwargs(call_info, self.functions[function_name], result) + self.validate_variable_refs(call_info, variables, result) + result["references"].append({"type": "function", "name": function_name}) + + if index != len(lines) - 1: + self.error(result, f"非最后一行不能直接调用 function:{line}") + + def parse_call(self, expr: str, result: dict[str, Any], raw_line: str) -> dict[str, Any] | None: + try: + node = ast.parse(expr, mode="eval").body + except SyntaxError as exc: + self.error(result, f"调用语法无法解析:{raw_line} ({exc.msg})") + return None + if not isinstance(node, ast.Call) or not isinstance(node.func, ast.Name): + self.error(result, f"不是合法的函数调用:{raw_line}") + return None + return { + "name": node.func.id, + "keywords": node.keywords, + "positional_count": len(node.args), + "raw": raw_line, + } + + def validate_call_kwargs(self, call_info: dict[str, Any], spec: dict[str, Any], result: dict[str, Any]) -> None: + if call_info["positional_count"]: + self.error(result, f"暂不支持位置参数,请使用命名参数:{call_info['raw']}") + + params = spec.get("params", {}) + allow_unknown = bool(spec.get("allow_unknown_params")) + for keyword in call_info["keywords"]: + if keyword.arg is None: + self.error(result, f"暂不支持 **kwargs:{call_info['raw']}") + continue + if not allow_unknown and keyword.arg not in params: + self.error(result, f"{call_info['name']} 未定义参数:{keyword.arg}") + continue + enum_values = params.get(keyword.arg, {}).get("enum_values", []) + if enum_values: + self.validate_enum(keyword, enum_values, call_info, result) + + def validate_enum(self, keyword: ast.keyword, enum_values: list[str], call_info: dict[str, Any], result: dict[str, Any]) -> None: + values = self.literal_string_values(keyword.value) + for value in values: + if value not in enum_values: + self.error(result, f"{call_info['name']}.{keyword.arg} 枚举值不合法:{value},可选:{', '.join(enum_values)}") + + def literal_string_values(self, node: ast.AST) -> list[str]: + if isinstance(node, ast.Constant) and isinstance(node.value, str): + return [node.value] + if isinstance(node, ast.List): + values: list[str] = [] + for item in node.elts: + values.extend(self.literal_string_values(item)) + return values + return [] + + def validate_variable_refs(self, call_info: dict[str, Any], variables: dict[str, str], result: dict[str, Any]) -> None: + referenced = sorted({node.id for keyword in call_info["keywords"] for node in ast.walk(keyword.value) if isinstance(node, ast.Name)}) + for name in referenced: + if name not in variables: + self.error(result, f"引用了未定义 object 变量:{name}") + + def validate_group_json(self, target: str, result: dict[str, Any]) -> None: + result["detected_type"] = "group_json" + try: + groups = json.loads(target) + except json.JSONDecodeError as exc: + self.error(result, f"多指令/自动任务 JSON 解析失败:{exc.msg}") + return + if not isinstance(groups, list): + self.error(result, "多指令/自动任务输出必须是 JSON list") + return + + for group_index, group in enumerate(groups): + if not isinstance(group, dict): + self.error(result, f"第 {group_index} 个 group 不是 object") + continue + if "condition" not in group: + self.error(result, f"第 {group_index} 个 group 缺少 condition") + querys = group.get("querys") + if not isinstance(querys, list): + self.error(result, f"第 {group_index} 个 group 的 querys 必须是 list") + continue + for query_index, item in enumerate(querys): + self.validate_group_item(item, group_index, query_index, result) + + def validate_group_item(self, item: Any, group_index: int, query_index: int, result: dict[str, Any]) -> None: + prefix = f"第 {group_index} 个 group 的第 {query_index} 条 query" + if not isinstance(item, dict): + self.error(result, f"{prefix} 不是 object") + return + if not item.get("subquery"): + self.error(result, f"{prefix} 缺少 subquery") + + value_fields = [field for field in ("function", "intent", "target", "label") if item.get(field)] + if not value_fields: + self.error(result, f"{prefix} 缺少 function、intent、target 或 label") + return + if len(value_fields) > 1: + self.error(result, f"{prefix} 同时包含多个输出字段:{', '.join(value_fields)}") + return + + field = value_fields[0] + value = str(item[field]) + if field == "function": + nested = self.validate(value) + self.merge_nested(result, nested, prefix) + elif field == "intent": + if value not in self.intents and value not in self.agent_tags: + self.error(result, f"{prefix} 的 intent 不在知识库中:{value}") + else: + result["references"].append({"type": "intent", "name": value}) + else: + nested = self.validate(value) + self.merge_nested(result, nested, prefix) + + def merge_nested(self, result: dict[str, Any], nested: dict[str, Any], prefix: str) -> None: + for error in nested.get("errors", []): + self.error(result, f"{prefix}: {error}") + for warning in nested.get("warnings", []): + result["warnings"].append(f"{prefix}: {warning}") + result["references"].extend(nested.get("references", [])) + + def error(self, result: dict[str, Any], message: str) -> None: + result["errors"].append(message) + + +def load_targets_from_file(path: Path, field: str) -> list[str]: + text = path.read_text(encoding="utf-8").strip() + if not text: + return [] + if path.suffix == ".jsonl": + targets: list[str] = [] + for line_no, line in enumerate(text.splitlines(), start=1): + if not line.strip(): + continue + item = json.loads(line) + if field not in item: + raise ValueError(f"{path}:{line_no} 缺少字段 {field}") + targets.append(str(item[field])) + return targets + + data = json.loads(text) + if isinstance(data, dict): + if field in data: + return [str(data[field])] + if "records" in data and isinstance(data["records"], list): + return [str(item[field]) for item in data["records"] if isinstance(item, dict) and field in item] + if isinstance(data, list): + return [str(item[field]) for item in data if isinstance(item, dict) and field in item] + raise ValueError(f"无法从 {path} 读取字段 {field}") + + +def main(argv: list[str] | None = None) -> int: + parser = argparse.ArgumentParser(description="校验标签输出格式") + parser.add_argument("--target", help="直接校验一个 target 字符串") + parser.add_argument("--file", help="从 JSON/JSONL 文件中批量读取 target") + parser.add_argument("--field", default="target", help="批量文件中的字段名,默认 target") + parser.add_argument("--manifest", default=str(DEFAULT_OUTPUT), help="manifest JSON 路径") + args = parser.parse_args(argv) + + if not args.target and not args.file: + parser.error("必须提供 --target 或 --file") + + manifest_path = Path(args.manifest) + if not manifest_path.is_absolute(): + manifest_path = SKILL_ROOT / manifest_path + validator = LabelOutputValidator(load_manifest(manifest_path)) + + targets = [args.target] if args.target else load_targets_from_file(Path(args.file), args.field) + results = [validator.validate(target or "") for target in targets] + payload: dict[str, Any] + if len(results) == 1: + payload = results[0] + else: + payload = { + "valid": all(item["valid"] for item in results), + "total": len(results), + "invalid": sum(1 for item in results if not item["valid"]), + "results": results, + } + + print(json.dumps(payload, ensure_ascii=False, indent=2, sort_keys=True)) + return 0 if payload["valid"] else 1 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/skills/label-master/scripts/迁移_docx标签表.py b/skills/label-master/scripts/迁移_docx标签表.py new file mode 100644 index 0000000..5439ff1 --- /dev/null +++ b/skills/label-master/scripts/迁移_docx标签表.py @@ -0,0 +1,340 @@ +#!/usr/bin/env python3 +"""把旧 docx 标签表迁移为中文 Markdown 标签知识卡片。 + +这个脚本是一次性/阶段性迁移辅助工具,不是运行时分类器。 +长期维护入口应该是 skills/label-master/knowledge 下的 Markdown 文件。 +""" + +from __future__ import annotations + +import argparse +import re +import zipfile +from dataclasses import dataclass +from pathlib import Path +from typing import Iterable +from xml.etree import ElementTree as ET + + +NS = {'w': 'http://schemas.openxmlformats.org/wordprocessingml/2006/main'} + + +@dataclass +class LabelRow: + domain: str + name: str + raw_tag: str + agent_candidate: str + abstraction: str + scope: str + examples: str + semantic_points: str + function_def: str + boundary: str + confusing: str + principle: str + notes: str + + +def _cell_text(cell: ET.Element) -> str: + parts: list[str] = [] + for text_node in cell.findall('.//w:t', NS): + if text_node.text: + parts.append(text_node.text) + return re.sub(r'\s+', ' ', ''.join(parts)).strip() + + +def _docx_tables(path: Path) -> list[list[list[str]]]: + with zipfile.ZipFile(path) as zf: + xml = zf.read('word/document.xml') + root = ET.fromstring(xml) + tables: list[list[list[str]]] = [] + for table in root.findall('.//w:tbl', NS): + rows: list[list[str]] = [] + for tr in table.findall('./w:tr', NS): + row = [_cell_text(tc) for tc in tr.findall('./w:tc', NS)] + if any(cell.strip() for cell in row): + rows.append(row) + if rows: + tables.append(rows) + return tables + + +def _norm_header(value: str) -> str: + return re.sub(r'[\s/()()]+', '', value) + + +def _find_index(headers: list[str], candidates: Iterable[str]) -> int | None: + normalized = [_norm_header(h) for h in headers] + for candidate in candidates: + needle = _norm_header(candidate) + for idx, header in enumerate(normalized): + if needle and needle in header: + return idx + return None + + +def _safe_filename(value: str) -> str: + value = re.sub(r'[a-f0-9]{24,}$', '', value, flags=re.IGNORECASE) + value = re.sub(r'[\\/:*?"<>|]+', '、', value).strip() + value = re.sub(r'\s+', '', value) + return value[:48] or '未命名标签' + + +def _domain_name(path: Path) -> str: + stem = path.stem + return stem.removeprefix('Label定义-') + + +def _read_cell(row: list[str], idx: int | None) -> str: + if idx is None or idx >= len(row): + return '' + return row[idx].strip() + + +def _compact_label_name(tag: str, abstraction: str) -> str: + """从旧表格的 tag 列中提取更适合人工维护的中文标签名。 + + 部分旧表格把标签名和长描述写进了同一个单元格,例如 + “闹钟闹钟/小憩定时闹钟的增删改查...”。这里尽量保留短标签, + 不把整段说明变成文件名或 Agent(tag=...)。 + """ + + tag = re.sub(r'[a-f0-9]{24,}$', '', tag.strip(), flags=re.IGNORECASE) + abstraction = abstraction.strip() + if tag.startswith('应该属于'): + return abstraction or tag.removeprefix('应该属于').strip() + if not tag: + stop_match = re.search(r'(关于|回答|打开|查询|增|删|改|查|的|功能|垂域|/|、|,|。)', abstraction) + if stop_match and stop_match.start() >= 2: + return abstraction[:stop_match.start()] + return abstraction + if abstraction and tag.startswith(abstraction) and len(abstraction) <= 12: + return abstraction + repeated = re.match(r'^(.{2,8})\1', tag) + if repeated: + return repeated.group(1) + if len(tag) <= 24: + return tag + stop_match = re.search(r'(关于|回答|打开|查询|增|删|改|查|的|功能|垂域|/|、|,|。)', tag) + if stop_match and stop_match.start() >= 2: + return tag[:stop_match.start()] + return abstraction or tag[:12] + + +def _agent_candidate_for_label(name: str, raw_tag: str) -> str: + if not name: + return '' + if raw_tag.startswith('应该属于'): + target = raw_tag.removeprefix('应该属于').strip() + if target: + return f'Agent(tag="{target}")' + if raw_tag and len(raw_tag) <= 24: + return f'Agent(tag="{name}")' + if raw_tag.startswith(name): + return f'Agent(tag="{name}")' + return '' + + +def _function_candidate(value: str) -> str: + value = value.strip() + if not value: + return '待确认。' + # 保留旧表中的函数/参数定义原文,避免在迁移阶段误判最终输出格式。 + return value + + +def _looks_like_header(row: list[str]) -> bool: + joined = ''.join(row) + return 'tag标签' in joined or ('功能抽象' in joined and '功能和范围定义' in joined) + + +def extract_label_rows(source_dir: Path) -> list[LabelRow]: + rows: list[LabelRow] = [] + for docx_path in sorted(source_dir.glob('Label定义-*.docx')): + domain = _domain_name(docx_path) + for table in _docx_tables(docx_path): + if not table: + continue + header_pos = next((idx for idx, row in enumerate(table) if _looks_like_header(row)), None) + if header_pos is None: + continue + headers = table[header_pos] + idx_abstraction = _find_index(headers, ['功能抽象']) + idx_tag = _find_index(headers, ['tag标签']) + idx_scope = _find_index(headers, ['功能和范围定义']) + idx_examples = _find_index(headers, ['示例query']) + idx_semantic = _find_index(headers, ['三级语义功能点举例']) + idx_function = _find_index(headers, ['Function及参数定义', 'Function及参数定义飘黄部分未共识']) + idx_boundary = _find_index(headers, ['满足边界问题']) + idx_confusing = _find_index(headers, ['易混淆tagfunctionAgent', '易混淆tagfunction', '易混淆']) + idx_principle = _find_index(headers, ['划分原则']) + idx_notes = _find_index(headers, ['问题备注', '未解决']) + + for row in table[header_pos + 1:]: + abstraction = _read_cell(row, idx_abstraction) + tag = _read_cell(row, idx_tag) + name = _compact_label_name(tag, abstraction) + if not name or name in {'/', '-', '待定'}: + continue + if len(name) > 80 and not tag: + continue + agent_candidate = _agent_candidate_for_label(name, tag) + rows.append( + LabelRow( + domain=domain, + name=name, + raw_tag=tag, + agent_candidate=agent_candidate, + abstraction=abstraction, + scope=_read_cell(row, idx_scope), + examples=_read_cell(row, idx_examples), + semantic_points=_read_cell(row, idx_semantic), + function_def=_read_cell(row, idx_function), + boundary=_read_cell(row, idx_boundary), + confusing=_read_cell(row, idx_confusing), + principle=_read_cell(row, idx_principle), + notes=_read_cell(row, idx_notes), + ) + ) + return rows + + +def _section(title: str, body: str) -> str: + body = body.strip() + if not body: + body = '待补充。' + return f'## {title}\n\n{body}\n' + + +def _table_cell(value: str, *, limit: int = 80) -> str: + value = re.sub(r'\s+', ' ', value.strip()).replace('|', '、') + if not value: + return '待确认' + return value[:limit] + ('...' if len(value) > limit else '') + + +def _output_section(row: LabelRow) -> str: + raw_tag = row.raw_tag or '待确认。' + agent_candidate = row.agent_candidate or '待确认。' + function_candidate = _function_candidate(row.function_def) + return '\n'.join( + [ + '## 标注输出', + '', + '> 注意:旧标签资料中同时存在 tag 标签和 Function 定义。本卡片不直接声明最终训练标签;生成数据前必须结合 `判断维度/标注输出形态.md` 确认当前任务使用 Agent 形式还是 Function 形式。', + '', + f'- 旧 tag 标签:{raw_tag}', + f'- Agent 包装候选(不代表最终):{agent_candidate}', + f'- Function 输出候选:{function_candidate}', + '- 推荐输出形态:待确认。', + '', + ] + ) + + +def _card_text(row: LabelRow) -> str: + title = row.name + return '\n'.join( + [ + f'# {title}', + '', + _output_section(row), + _section('功能抽象', row.abstraction), + _section('适用范围', row.scope), + _section('典型 Query', row.examples), + _section('三级语义功能点', row.semantic_points), + _section('Function / Agent 说明', row.function_def), + _section('满足边界问题', row.boundary), + _section('易混淆标签', row.confusing), + _section('划分原则', row.principle), + _section('未解决问题', row.notes), + ] + ).rstrip() + '\n' + + +def write_knowledge(rows: list[LabelRow], output_dir: Path) -> None: + label_root = output_dir / '标签' + boundary_root = output_dir / '边界' + index_root = output_dir / '索引' + label_root.mkdir(parents=True, exist_ok=True) + boundary_root.mkdir(parents=True, exist_ok=True) + index_root.mkdir(parents=True, exist_ok=True) + + domains: dict[str, list[LabelRow]] = {} + for row in rows: + domains.setdefault(row.domain, []).append(row) + domain_dir = label_root / _safe_filename(row.domain) + domain_dir.mkdir(parents=True, exist_ok=True) + path = domain_dir / f'{_safe_filename(row.name)}.md' + path.write_text(_card_text(row), encoding='utf-8') + + for domain, domain_rows in sorted(domains.items()): + lines = [f'# {domain}边界', ''] + for row in domain_rows: + if not row.confusing and not row.principle and not row.boundary: + continue + lines.append(f'## {row.name}') + if row.confusing: + lines.extend(['', f'- 易混淆:{row.confusing}']) + if row.principle: + lines.extend(['', f'- 划分原则:{row.principle}']) + if row.boundary: + lines.extend(['', f'- 满足边界问题:{row.boundary}']) + lines.append('') + if len(lines) > 2: + (boundary_root / f'{_safe_filename(domain)}边界.md').write_text('\n'.join(lines).rstrip() + '\n', encoding='utf-8') + + overview_lines = ['# 标签迁移索引', ''] + label_index_lines = [ + '# 标签索引', + '', + '这个索引用于 Agent 第一阶段快速判断候选标签和输出形态。详细边界仍需读取具体标签卡片和边界文件。', + '', + '| 领域 | 标签 | 旧 tag 标签 | Agent 形式候选 | Function 形式候选 | 知识卡片 |', + '| --- | --- | --- | --- | --- | --- |', + ] + for domain, domain_rows in sorted(domains.items()): + overview_lines.append(f'## {domain}') + overview_lines.append('') + seen_links: set[str] = set() + for row in sorted(domain_rows, key=lambda item: item.name): + rel = Path('标签') / _safe_filename(domain) / f'{_safe_filename(row.name)}.md' + rel_text = rel.as_posix() + if rel_text in seen_links: + continue + seen_links.add(rel_text) + overview_lines.append(f'- [{row.name}]({rel.as_posix()})') + rel_from_index = Path('..') / rel + function_hint = _table_cell(row.function_def, limit=60) if row.function_def else '待确认' + label_index_lines.append( + '| {domain} | {name} | {raw_tag} | {agent} | {function} | [{name}]({path}) |'.format( + domain=_table_cell(domain, limit=20), + name=_table_cell(row.name, limit=24), + raw_tag=_table_cell(row.raw_tag, limit=32), + agent=_table_cell(row.agent_candidate, limit=36), + function=function_hint, + path=rel_from_index.as_posix(), + ) + ) + overview_lines.append('') + (output_dir / '标签迁移索引.md').write_text('\n'.join(overview_lines).rstrip() + '\n', encoding='utf-8') + (index_root / '标签索引.md').write_text('\n'.join(label_index_lines).rstrip() + '\n', encoding='utf-8') + + +def main() -> int: + parser = argparse.ArgumentParser(description='迁移 docx 标签定义表为 Markdown 知识卡片') + parser.add_argument('--source-dir', default='标签定义', help='旧标签定义目录') + parser.add_argument('--output-dir', default='skills/label-master/knowledge', help='知识库输出目录') + args = parser.parse_args() + + source_dir = Path(args.source_dir) + output_dir = Path(args.output_dir) + rows = extract_label_rows(source_dir) + write_knowledge(rows, output_dir) + print(f'已迁移 {len(rows)} 条标签知识到 {output_dir}') + return 0 + + +if __name__ == '__main__': + raise SystemExit(main())