fix(ai): recognize conversational document filters

This commit is contained in:
caoxiaozhu
2026-07-20 10:31:15 +08:00
parent 7a3755ac55
commit 2a9b3e3273
12 changed files with 250 additions and 54 deletions

View File

@@ -0,0 +1,14 @@
# 对话口语化单据筛选意图识别失败
日期2026-07-20
文档路径document/development/2026-07-20/dev-logs/bugs/conversation-document-filter-intent.md
## 修复记录
- 10:19修复“出差上海的单据请筛选一下”等口语化单据筛选请求在对话中无法识别的问题。
- Git 提交检查:`git fetch --all --prune` 成功upstream 为 `origin/main`;未发现 upstream 新提交;本地 ahead 19 个提交:`07241b46 fix(docker): manage local postgres in default compose``787bc3a4 feat(platform): close AI expense value loop``242d68c3 feat(approval): add task workflow and waiver decisions``28b834ed fix(approval): replay immutable action responses``4940ebc4 feat(approval): add safe risk disposition workflow``ee88a36b feat(ai): add tenant-safe hierarchical expense learning``6bdf65bc feat(expenses): add authoritative pre-review workflow``ae3f02c3 feat(expense): add persistent zero-entry receipt association``54754b55 feat(ai): add personal expense application memory``211f85d9 feat(ai): unify verified expense application workflow``5b246307 feat(ai): issue verified application preview decisions``a662cfe6 feat(ai): add expense application feedback ledger``5ed34c2b feat(expenses): backfill historical claims into expense cases``11275e4b fix(migrations): enforce schema ownership safety``1347366b feat(expenses): secure timeline and draft events``22669a90 feat(expenses): show unified expense event timeline``a616b30c fix(expenses): unify AI application submission transaction``653eda05 feat(auth): add opaque bearer sessions``661990b2 feat(expenses): add transactional expense case events`
- 修改:前端会话范围守卫新增“筛选/过滤/查询 + 单据”信号识别,费用会话直接放行,申请会话建议切换到费用查询;引导式报销流程把此类请求识别为新意图,不再误当作当前表单字段答案。
- 修改:工作台单据查询统一复用城市名提取,支持从“出差上海的单据”提取 `expense_type=travel``location=上海`,并补齐带中文引号的显式关键词解析。
- 修改:后端语义入口放宽口语化单据查询硬门禁,补齐“出差”“筛选”“过滤”等规则候选;请求通过门禁后仍执行“规则候选 + 模型语义归一 + 结构化 SQL 筛选”的混合链路,最终按费用类型和地点确定性过滤数据。
- 操作:首次端到端回归暴露测试夹具缺少必填 `department_name`,补齐夹具后重新执行;未修改生产数据,也未提交代码。
- 验证:前端目标回归 `27/27` 通过;相关前端回归 `121/121` 通过;`npm run build` 成功2254 modules transformed容器内本体语义测试 `73/73` 通过;容器内费用查询编排回归 `3/3` 通过;精确端到端用例 `2/2` 通过;`git diff --check` 通过。
- 影响:“出差上海的单据请筛选一下”现在会稳定路由到费用查询,识别差旅费与上海并只返回上海相关单据;“上海的单据请筛选一下”等未显式写出费用类型的表达也可进入模型增强的语义解析,不再被判为非财务问题或误填入引导表单。