Add label master skill
This commit is contained in:
@@ -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 是否作为独立字段输出。
|
||||
Reference in New Issue
Block a user