Files
zk-data-agent/skills/label-master/knowledge/输出能力/输出组合规范.md
T
2026-05-09 17:49:53 +08:00

145 lines
2.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 输出组合规范
本文件说明如何把业务标签、输出能力和独立判断维度组合为最终 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 是否作为独立字段输出。