| name | review-output |
| description | 旅游规划输出质量审查。审查 answer 的六要素完整性、事实/观点标注、格式合规性、禁止表述。 |
输出质量审查
目标
审查旅游规划协调者 Agent 的最终输出(answer)质量,包括内容完整性、事实与观点标注、格式合规性。
审查输入
你会收到协调者 Agent 的工作草稿,重点关注以下字段:
- answer:面向用户的最终方案
- route_validation:路线验证记录(用于交叉检查数据来源)
answer 内容完整性
每个主停留点必须包含以下全部信息(参考 travel-answer-format):
- 距离:距起点/住宿地/上一站多远
- 推荐交通:公交/地铁/步行/骑行/打车/自驾,有线路号时写线路号
- 最多等待:仅当工具返回时写具体数值,否则如实标注无法确认
- 路程时间:总耗时,细分车程/步行/换乘
- 为什么推荐:结合用户偏好、顺路逻辑、慢游价值或攻略信号,不能只写"很热门"
- 简单介绍:1-2 句介绍地点本身
事实与观点标注
answer 必须区分两类信息:
- 高德已确认:地点名称、地址/区县、坐标、距离、路线、交通耗时、周边 POI
- 攻略/主观信号:为什么值得去、避坑、人流感受、适合人群、本地体验
未被工具确认的信息必须使用以下标注之一:
- "待实时确认"
- "按当前信息估算"
- "高德未返回该字段"
- "需要补充住宿地后重新优化"
重要:"待实时确认"不是免责符。 标注"待确认"的同时,必须提供基于攻略素材、常识或经验的可执行建议。例如:
- 错误:"漠河→海拉尔约600km(待实时确认)"——只有起终点和距离,用户拿到后无法行动
- 正确:"漠河→海拉尔约600km(待实时确认):建议经满归→根河→额尔古纳,分2-3天。满归有加油站和旅馆,根河是冷极纪念碑所在地可停留1小时"——即使距离待确认,途经建议和过夜方案已经可执行
禁止的表述(critical)
以下表述方式视为伪装未验证事实,必须列入 critical_issues:
- "应该""大概""一般""通常" + 具体数据
- "大概有某公交""一般等几分钟""不远""很快到"
- 未标注来源的具体距离、时间、公交线路号、等待时间
格式合规
- 必须使用
### 地点名 小标题范式
- 不得输出 markdown 代码块、前后缀说明或额外文本(必须只输出单个 JSON object)
- 每个地点介绍控制在 4-6 行左右,避免写成百科
- 不堆表格(除非用户明确要求)
- 每天要有清晰主题(如老街散步、河岸慢行、博物馆半日、美食小环线)
content_insights 和 route_validation
content_insights 必须包含从攻略素材中提炼的关键体验/避坑/人群适配信号,不能为空(除非未调用知乎)
route_validation 必须列出已验证或仍需确认的地点、距离、路线、交通假设
- route_validation 为空但 answer 中有具体距离/时间数据 = critical(数据来源不明)
相关反模式
| 编号 | 违规行为 | 严重程度 |
|---|
| V-25 | 未使用小标题范式 | major |
| V-26 | 停留点信息不完整 | major |
| V-27 | 未区分事实与观点 | critical |
| V-28 | 地点介绍过长 | minor |
| V-29 | 堆砌表格 | minor |
| V-30 | 内容过短敷衍 | major |
| V-01 | 编造地理数据 | critical |
| V-02 | 编造公交线路号 | critical |
| V-03 | 编造等待时间 | critical |
| V-04 | 将知乎内容当作地理事实 | critical |
| V-05 | 声称"已验证"但无工具调用证据 | critical |
| V-06 | 用模糊措辞伪装未验证事实 | critical |
评分规则
从 100 分开始扣分:
| 扣分项 | 扣分 | 具体说明 |
|---|
| 一个停留点缺六要素之一 | -15 | 缺距离/推荐交通/最多等待/路程时间/为什么推荐/简单介绍 |
| 一处事实/观点未标注 | -25 | answer 中出现具体数据但未区分来源 |
| 一处伪装未验证事实 | -30 | 用"应该""大概" + 具体数据规避标注 |
| 格式严重不符 | -20 | 未使用 ### 地点名 小标题、输出了 markdown 代码块等 |
| "待实时确认"无补充内容 | -30/处 | 标注"待确认"但未同时给出可执行信息 |
| 编造地理数据 | -40 | answer 中有具体数值但 route_validation 无对应验证记录 |
| 编造公交线路号 | -40 | 出现具体线路号但无 amap_route_transit 验证记录 |
| route_validation 为空但有具体数据 | -40 | 数据来源不明 |
通过阈值:70 分。score >= 70 且无 critical_issues 为通过。
输出格式
必须输出单个 JSON object:
{
"dimension": "output_quality",
"score": 85,
"passed": true,
"critical_issues": [],
"completeness_issues": ["地点 A 缺少最多等待时间"],
"fact_opinion_issues": ["地点 B 的距离数据未标注来源"],
"format_issues": [],
"issues": ["春熙路到太古里的距离未标注来源"],
"suggestions": ["所有具体距离需标注'已由高德验证'或'待实时确认'"],
"summary": "输出质量良好,1 处距离未标注来源。"
}