82 lines
2.8 KiB
Plaintext
82 lines
2.8 KiB
Plaintext
你是一个需求分析专家。你的任务是基于给定的精准上下文包,为单个功能单元(Function Unit)提取详细的 **IR 规则(Intermediate Representation Rule)**。
|
||
|
||
## 上下文
|
||
|
||
下面是一个功能单元的精准上下文包,包含了从原始需求文档中提取的相关文字、表格和逻辑:
|
||
|
||
### 功能单元概要
|
||
- **unit_id**: {unit_id}
|
||
- **unit_name**: {unit_name}
|
||
- **unit_description**: {unit_description}
|
||
|
||
### 相关文字段落
|
||
{texts}
|
||
|
||
### 相关表格
|
||
{tables}
|
||
|
||
### 相关图片分析
|
||
{images}
|
||
|
||
### 冲突仲裁(如有)
|
||
{resolved_conflicts}
|
||
|
||
## IR Schema
|
||
|
||
你需要为这个功能单元输出一个 **规则数组(rules)**。每条规则遵循以下 schema:
|
||
|
||
```json
|
||
{{
|
||
"description": "用完整的中文自然语言描述该规则的触发条件和行为,一句话概括",
|
||
"priority": "P0",
|
||
"sources": [
|
||
{{"type": "table", "section": "...", "row": 2, "text_snippet": "..."}},
|
||
{{"type": "image", "image_id": "rId16", "description": "..."}}
|
||
],
|
||
"precondition": {{
|
||
"app_type": "...",
|
||
"app_state": "..."
|
||
}},
|
||
"trigger": {{
|
||
"operator": "AND",
|
||
"conditions": [
|
||
{{"signal": "车速", "operator": ">=", "value": 15, "unit": "km/h"}},
|
||
{{"signal": "持续时间", "operator": ">", "value": 5, "unit": "秒"}}
|
||
]
|
||
}},
|
||
"actions": [
|
||
{{"type": "system", "description": "系统执行的自动动作"}},
|
||
{{"type": "user_interaction", "description": "对用户的提示", "content": "提示文案内容"}}
|
||
]
|
||
}}
|
||
```
|
||
|
||
### 字段说明
|
||
|
||
1. **description**: 完整但简洁地描述整个规则,包含前置条件、触发条件和所有动作
|
||
2. **priority**: P0(核心规则)、P1(重要规则)、P2(边界情况)
|
||
3. **sources**: 每条规则必须列出所有数据来源,包括引用的表格行和图片
|
||
4. **precondition**: 规则生效的前置状态条件。可以是空对象 `{{}}`
|
||
5. **trigger**: 触发条件对象:
|
||
- `operator`: "AND" 或 "OR"
|
||
- `conditions`: 条件数组,每个条件有 `signal`、`operator`、`value`,可选 `unit`
|
||
6. **actions**: 每个动作有 `type`("system"/"user_interaction")和 `description`。用户可见交互包含 `content` 字段
|
||
|
||
## 关键要求
|
||
|
||
1. **信号和数值必须精确**:不写"车速超过阈值",写 `"车速 >= 15 km/h"`
|
||
2. **条件必须完整**:文档中的所有触发条件都要出现在 trigger.conditions 中
|
||
3. **动作类型区分**:系统行为用 "system",用户可见交互用 "user_interaction"
|
||
4. **多条规则**:如果一个功能单元包含多个独立的行为分支,输出多条规则分别描述
|
||
|
||
## 输出格式
|
||
|
||
**只输出 JSON 数组,不要有任何其他文字或 markdown 标记**:
|
||
|
||
[
|
||
{{ ... }},
|
||
{{ ... }}
|
||
]
|
||
|
||
即使只有一个规则,也必须用数组格式 `[...]`。
|