# 智能问数 · 迭代路线(行业最佳实践对照) > 2026-10 定稿。对照 2026 年 Data Agent/ChatBI 业界共识(语义层+指标层为可信问数基础设施、 > 评测金标准是从「能演示」到「可规模化」的分水岭、动态 few-shot 与反馈飞轮提准确率), > 结合本产品定位(单机部署 / flash 模型 / 零依赖 / 餐饮多主体运营)排定优先级。 ## 当前成熟度定位 已具备(不需要推翻): - 受控工具调用而非裸 Text2SQL(业界生产共识路线)+ 语义层雏形(REPORT_COLUMNS 列注册表) - 验证层:verdict 卡(体检/恒等式/层间一致性/完整性/云端一致性)+ 数字溯源 post-check - 可审计:运行留痕与回放(编排时间线);评测基建雏形(NAPOS_AGENT_MOCK 确定性假模型 + 隔离湖) ## P0(下一迭代,高价值 × 低成本) | 项 | 内容 | 落点 | 状态 | | --- | --- | --- | --- | | 评测金标准集 | 真实业务问句 → 期望工具/参数/关键数字的口径断言;改 prompt/工具/模型后跑一遍即知退化 | `npm run eval`(= scripts/eval-ask.js,隔离湖直跑工具链,零网络)。已覆盖 15 例:TopN/按日趋势/加权比率/门店部分匹配/环比可比集/显式区间与缺数实算/体检/层间核对/同行对标/源侧字段/跨主体/报告钳制/参数防呆 + 真机问句清单 | ✅ 2026-10-17(上线即抓到 query_report shops/shopNames 参数键不一致的真 bug) | | 主动式分析闭环 | autoSync 后自动 体检+层间核对+环比 → 晨报落盘(钉钉群机器人推送按用户决定暂不做,通道后续按需接) | `server/agent/digest.js`(确定性口径零模型)+ autoSync 挂点 + `GET/POST /api/agent/digests` + 问数页顶部晨报横幅(头条/展开详情/verdict 卡/报告链接) | ✅ 2026-10-17 | | 动态 few-shot + 问答复用 | 已验证问答沉淀为打法语料(数字全溯源 + 工具全成才入库);相似问命中直接重跑查询序列(缓存打法不缓存数字,数据按当前湖重算),只保留一次结论收敛调用;次相似问注入 few-shot 参考 | `server/agent/replay.js`(字符二元组 Dice 相似度)+ corpus.json(cap 50)+ loop 复用路径 + prompt 注入 | ✅ 2026-10-17 | ## P1(答题质量与成本)—— 2026-10-17 全部完成 | 项 | 内容 | 落点 | 状态 | | --- | --- | --- | --- | | 指标层升级 | `server/agent/metrics.js`:基础指标(合计/加权/比值口径声明)+ 派生指标(gross_mov7/orders_mov7/uv_mov7);新工具 `metric_query` 按指标 key 查逐日序列(移动平均窗口前置取数、缺数按实算);prompt 常驻「指标聚合口径」段,模型引用 key 不自组口径 | tools/metric.js + registry(工具总数 11) | ✅(eval 4 例:mov7 手算断言、加权日值、未知指标给清单) | | Schema linking | 门店 ≤40 家内嵌清单;超过则 prompt 只留「门店较多,先调 lake_overview/部分匹配」,按需查询 | prompt.js buildSystemPrompt | ✅(smoke:3 家内嵌 / 60 家改按需) | | 模型路由与结构化解码 | config 新增 `chatModelAgent`(深度分析专用模型,缺省回落 chatModel)与 `chatJsonMode`(response_format=json_object,默认关);设置页对话模型 tab 两控件;快问始终走 chatModel | context.js makeChatCfg + llm.js jsonMode + loop 模型路由 + 设置 UI | ✅(smoke:路由回落断言;流式仍延后) | | 反馈闭环 | 答案卡「👍 有帮助 / ✍️ 纠错」:采纳 → 打法强制入语料(即使溯源不完美);纠错(可带说明)→ feedback.json 反馈日志(cap 100)供金标准评测人工提炼 | POST /api/agent/feedback + ask.js 按钮 | ✅(smoke:采纳入 corpus、纠错入日志) | ## P2(平台化,按需)—— 2026-10-17 完成(两项按既定条件暂缓) | 项 | 内容 | 落点 | 状态 | | --- | --- | --- | --- | | 统计异常检测 | `detect_anomalies` 工具:加性指标逐日 leave-one-out z-score(σ 下限防全同值误报,|z|≥2 警告/≥3 不一致),寒暑假窗口基线失真提示;verdict 新增 anomaly 类 | tools/anomaly.js + eval(尖峰 fixture z=20 判 fail、健康序列零误报) | ✅ | | LMDI 归因工具化 | `attribution` 工具:营业额变化分解为 曝光/进店率/客单价 三效应(对数平均权重),可比口径;单店恒等式严格成立、多店输出混合残差 | tools/attribution.js + eval(单店 曝光效应=1600 全额、残差≈0) | ✅ | | 深度报告 | `build_report` deep 旗 → `GET /api/agent/report-deep`(`server/agent/deep-report.js` 确定性自包含 HTML:体检/环比/LMDI 归因/异常/对标/逐日/排行/verdict 汇总 八章节) | deep-report.js + 路由 + 工具 | ✅ | | 治理·成本展示 | run 级 token 用量累计(loop 累加 usage),编排时间线头部展示「X k in / Y out」 | loop.js + ask.js | ✅ | | 物化聚合 | 按既定触发条件(单主体 >50MB/查询卡顿/跨主体 SQL)再换引擎;reports-store 已有分片解析缓存(mtime 键控) | — | ⏸ 触发条件未到 | | 多主体授权 | 单机 + 访问口令形态下无多租户边界,暂不适用;SaaS 化时随语义层一起做 | — | ⏸ 形态不适用 | ## 不追的方向 向量库/嵌入式检索(同行均值已在 raw 里)、裸 Text2SQL 兜底(破坏口径可控)、大而全 BI 平台化(单机工具定位)。