fix(asset-ai): answer vehicle status from authorized vehicle facts
ci/woodpecker/push/woodpecker Pipeline was canceled
ci/woodpecker/push/woodpecker Pipeline was canceled
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
# 单车状态问答优化与验收计划
|
||||
|
||||
## 问题与目标
|
||||
|
||||
用户询问“沪A57850F 这辆车现在是什么状态”,现有结果展示单车总量、运营率,并出现把数量描述为状态的回答。本轮让回答先满足单车事实查询,再按需要展示证据。截图仅作为问题证据,不作为当前车辆数据源。
|
||||
|
||||
预期示例(以实际查询值为准):沪A57850F 当前运营状态为「租赁」,不属于库存。随后补充城市、部门、车型及必要异动信息。不得把台账归属城市说成实时定位,也不得把未标记异动推断为车辆无故障。
|
||||
|
||||
## 实施范围
|
||||
|
||||
1. 区分单车事实问题与总量、占比、分布、趋势问题。单车状态查询优先返回状态,不因结果仅一行便把所有统计请求转成状态回答。
|
||||
2. 自然语言中的事实由授权查询结果提供,绑定可校验字段;缺失字段如实处理。保留权限校验和既有查询边界。
|
||||
3. 单车状态不展示无关总量、运营率和车队下钻建议。模型展示失败时仍有准确、简洁的默认答案。
|
||||
4. 连续追问保持目标车辆;明确切回全部资产时解除单车范围。保留原有统计能力。
|
||||
|
||||
## 分工
|
||||
|
||||
- 主代理:范围与计划、集成检查、验收结果汇总。
|
||||
- 开发子代理:查询/结果/展示实现、必要回归测试。
|
||||
- 验收子代理:独立场景审查、执行验证、问题复核。
|
||||
|
||||
## 验收矩阵
|
||||
|
||||
| 场景 | 通过条件 |
|
||||
| --- | --- |
|
||||
| 指定租赁车辆状态 | 首先给出真实租赁状态,不出现“1台状态”或默认运营率 |
|
||||
| 库存、异动、待交车车辆 | 使用各自真实字段,不混淆待运营与待交车 |
|
||||
| 字段缺失 | 不虚构状态、归属、异常原因 |
|
||||
| 无匹配或无权限 | 如实说明当前可见范围未找到,不泄露不可见车辆 |
|
||||
| 多车结果 | 不擅自选首车作为唯一答案 |
|
||||
| 明确询问运营率/数量 | 保留统计结果,即使筛选后仅一辆车 |
|
||||
| 单车连续追问 | 沿用正确目标,并再次基于真实查询作答 |
|
||||
| 回到全部资产 | 清除单车限制,恢复统计 |
|
||||
| 模型失败 | 默认答案仍基于真实字段,保留必要失败提示 |
|
||||
| 既有分布与复合分析 | 无统计口径、权限和结果渲染回归 |
|
||||
|
||||
## 验证证据要求
|
||||
|
||||
记录相关测试、TypeScript 检查和构建的实际执行结果。模拟模型测试、真实模型调用、浏览器验证分别标注,未执行项不得写成通过。本轮不包含生产部署。
|
||||
|
||||
## 实现决定
|
||||
|
||||
单车事实查询采用 `responseMode=vehicle-status`。服务端基于当前授权查询的真实字段直接生成状态结论及台账资料,跳过展示模型。无需扩大明细外发范围,也不依赖展示模型正确理解“状态”与“数量”的区别。
|
||||
|
||||
单车显式统计仍进入统计流程,但明确指定的车辆身份需要约束最终查询,避免模型遗漏车辆筛选后误答全量。否定、重置与复合问题须按各自范围处理,不能简单将出现的所有车牌都当成正向筛选。
|
||||
|
||||
开发前基线:`npm test`,285 项全部通过。
|
||||
|
||||
## 最终验收结果(2026-09-23)
|
||||
|
||||
- 独立验收子代理执行 `npm test`:301/301 通过,较基线新增 16 项(独立路由验收 13 项、开发回归 3 项)。
|
||||
- `npm run lint`、`npm run build`、`git diff --check` 均退出成功;构建保留已有的大于 500KB 分块提示。
|
||||
- 独立路由验收确认租赁、异动、待交车、未知车辆、显式统计、继承、否定、重置及复合问题。测试使用合成车辆和模拟模型,通过实际 Hono 路由执行。
|
||||
- 验收中发现并修复:模型漏掉单车身份后误答全量;未知车辆查询扩大范围;状态和统计子项在旧去重逻辑中被合并。
|
||||
- 复合用例分别核对同车状态与 100% 运营率,以及单车状态与合成全公司 50% 运营率。数字仅为测试样本,不代表真实业务数据。
|
||||
- 未执行真实 DeepSeek、真实业务数据库或浏览器视觉验收;单车状态路径直接绑定后台事实,不需要展示模型调用。
|
||||
|
||||
已知边界:排除指定车辆后需要选择超过 100 台车辆时返回澄清;当前实现不新增批量排除协议。只回答当前台账事实,不推断实时位置与故障原因。本轮修改保留在工作区,未提交、推送或部署。
|
||||
|
||||
开发大脑结束复盘:执行 DB-C-003;本轮证据为项目内修复与本地测试,尚不足以形成跨任务可复用知识记录,无可沉淀候选,未触发知识仓写入。
|
||||
Reference in New Issue
Block a user