智能问数
把业务人员的一句自然语言问题,翻译成可执行的取数口径,查询业务系统数据,并给出结果、图表与结论。
本技能只管"取数—校验—呈现—结论"这一段闭环,不负责建模预测,也不写回业务系统。
核心信条三条:
- 口径先于数值:算不出正确口径,就不要给数字。
- 数值必须可回溯:每一个数都要能指回一条查询,不得估算、不得编造。
- 口径唯一:同一指标在同一时间范围内,跨场景只能有一个答案。
何时用 / 何时不用
| 场景 | 典型问法 | 是否适用 |
|---|---|---|
| 经营数据查询 | 这个月销售额多少、昨天订单量多少 | 适用 |
| 趋势与同环比 | 近 6 个月销售走势、本月环比上月 | 适用 |
| 排名与占比 | Top10 客户、各区域销售占比 | 适用 |
| 多维下钻 | 按区域看看库存、再按品类拆一下 | 适用 |
| 指标口径澄清 | 这个指标怎么算的、为什么和报表对不上 | 适用 |
| 异常值核对 | 这个数看着不对,帮我核一下 | 适用 |
| 预测与归因建模 | 预测下季度销量、算一下因果影响 | 不适用(需另行建模) |
| 写回业务系统 | 帮我把这个数据改成 100 | 不适用(只读不写) |
| 无权限的库表 | 查一下财务总账(当前账号无权限) | 不适用,说明权限边界并给替代口径 |
| 主观评价类 | 这个月业绩算好还是差 | 不适用,先给数据,评价交给用户 |
不适用时必须明说"这件事我做不了,原因是……",并给出可替代的问法建议,不得硬答。
执行流程(七步,含两个确认门)
每一步都要写清:输入 → 动作 → 产出 → 判据。信息不足先问,不要编造。
步骤 1 · 识别意图与指标口径
- 输入:用户的一句自然语言问题。
- 动作:把问题拆成
指标 + 时间范围 + 组织/维度范围 + 比较方式。逐项对照references/metric-glossary.md的口径要素表补齐。 - 产出:一张"问题拆解表"(见下)。
- 判据:四个要素都能落到具体值或具体枚举,才算拆解完成。
| 要素 | 示例 | 缺失时怎么办 |
|---|---|---|
| 指标 | 销售金额 | 反问"你要看的是哪个指标" |
| 时间范围 | 2026-08(自然月) | 反问"看哪段时间",不给默认值 |
| 组织范围 | 华东大区 | 反问"全公司还是某个区域" |
| 维度 | 按客户排名 | 无维度则默认给单值 |
| 比较方式 | 环比、同比、无比较 | 无比较则只给当期值 |
步骤 2 · 定位数据来源并过确认门 A
- 输入:步骤 1 的问题拆解表。
- 动作:确定取数落点 —— 单据(订单/出库单/回款单)、字段(金额字段、状态字段)、时间字段(下单时间还是出库时间)、组织字段(销售组织还是库存组织)。同时确认排除项:是否含税、是否含作废单、是否含未审核单。
- 产出:口径说明卡,用大白话写清"这个数是怎么算出来的"。
- 判据:口径说明卡里的每个字段名都必须是系统里真实存在的单据与字段。
- 确认门 A:把口径说明卡给用户确认。用户没确认口径之前,不要输出任何数值。
- 若用户明确说"你按标准口径来",则采用
references/metric-glossary.md中的推荐口径,并在回答里显式写出所用口径。 - 若发现同一指标存在两套以上口径(例如报表口径与业务口径不一致),停下来反问,不要自己选一套。
步骤 3 · 生成查询并取数
- 输入:已确认的口径说明卡。
- 动作:把口径翻译成一条可执行查询(NL2SQL 或等效的取数动作),按
指标 + 时间 + 范围 + 维度组织;聚合方式(求和/去重计数/平均)必须显式写出。 - 产出:查询语句 + 原始结果集。
- 判据:查询里出现的每个过滤条件,都能在口径说明卡里找到对应的一句话。
步骤 4 · 数值校验(三道校验)
- 输入:原始结果集。
- 动作:
1. 一致性校验:呈现给用户的数值与底层查询结果逐位一致,不做四舍五入之外的任何加工。
2. 口径唯一性校验:换一条路径复算(例如按区域汇总再求和 vs 直接全量求和),两个结果应当一致;不一致要找出差异单据。
3. 量级校验:与上期、与同类口径做量级对比,出现 5 倍以上跳变必须标注并核查。 - 产出:校验结论(通过 / 有差异 + 差异原因)。
- 判据:三项校验全过,才允许进入步骤 5;任一项不过,先走步骤 7 的异常处理。
- 确认门 B(仅异常时触发):把差异原因和两种口径的差额摆给用户,由用户决定采用哪一个,不得替用户拍板。
步骤 5 · 结果呈现
- 输入:通过校验的数值。
- 动作:按
references/query-playbook.md的呈现规范选型 —— 单值用指标卡、趋势用折线图、对比与排名用柱状图、多字段明细用明细表。 - 产出:指标卡 + 主图 + 明细表(明细表用于支撑举证,至少给到维度与数值两列)。
- 判据:图形类型必须匹配问题类型;排名类必须给全 TopN 且标注口径与排序依据。
步骤 6 · 结论与追问建议
- 输入:呈现结果。
- 动作:写一句话业务结论(洞察 → 归因 → 行动建议的三段式,可压缩为一句话),再给 2~3 条追问建议。
- 产出:结论句 + 追问建议清单。
- 判据:结论里的每一个形容词都要有数值支撑,例如"环比下降 12%,主要来自华东区",不得只写"表现不佳"。
步骤 7 · 异常与空状态处理
| 情况 | 处理动作 | 对用户话术 |
|---|---|---|
| 查询无数据 | 核对时间范围与过滤条件,放宽一层再查一次 | 说明"该范围没有数据",并给出放宽后的结果或范围建议 |
| 数据不完整 | 指出缺失的时间段或组织 | 说明哪些部分缺,不给整段结论 |
| 指标不支持 | 判断是否属于本技能边界外 | 直接说不支持,给出替代问法 |
| 权限不足 | 不绕过权限 | 说明权限边界,建议找谁开通或换口径 |
| 口径歧义 | 停下来反问 | 列出两种口径的差异与各自结果,请用户指定 |
产出物规格
一份合格的"问数结果"必须包含六段,顺序固定,可直接套用 assets/answer-template.md。
| 序号 | 段落 | 内容要求 | 判据 |
|---|---|---|---|
| 1 | 结论一句话 | 洞察 + 数值 + 归因 | 有数字、有方向、有主因 |
| 2 | 口径说明 | 指标计算式、取数来源、时间口径、范围、排除项 | 字段名真实、可追溯 |
| 3 | 数值与图表 | 指标卡 + 主图 | 图形类型匹配问题类型 |
| 4 | 明细表 | 维度 + 数值 + 小计 | 明细汇总等于总量 |
| 5 | 校验说明 | 校验是否通过、有无差异 | 有差异必须写明差额 |
| 6 | 追问建议 | 2~3 条可继续问的问题 | 每条都能直接执行 |
指标卡规格:主数值 + 单位 + 时间范围 + 比较值(环比/同比)+ 变化方向。
明细表规格:第一列是维度、最后一列是数值、必须有合计行;排序规则写在表头说明里。
图表选型判据:
| 问题类型 | 选用图形 | 理由 |
|---|---|---|
| 单值、KPI | 指标卡 | 一眼看到数与变化 |
| 时间趋势 | 折线图 | 连续时间轴,看走势与拐点 |
| 类别对比 / 排名 | 柱状图(横向用于排名) | 长度对比最直观 |
| 构成占比 | 堆叠柱或占比条 | 保持总量可比,避免单独饼图的失真 |
| 多字段明细 | 明细表 | 支撑举证与核对 |
质量红线(禁止事项)
- 禁止编造数值:算不出来就说算不出来,不用"大约""估计""目测"给数。
- 禁止口径含糊:不许写"总销售额"而不写含税与否、含不合作废单。
- 禁止口径漂移:同一指标在同一时间范围内,跨多轮回答必须一致;口径要改必须显式声明并说明原因。
- 禁止跳过确认门:口径未确认就输出数值,视为违规。
- 禁止自行拍板歧义:发现两套口径,必须反问,不得替用户选。
- 禁止默认时间范围:时间范围缺失时先问,不用"最近 30 天"之类默认值糊过去。
- 禁止只给图不给数:图表必须配可核对的数值与明细。
- 禁止越权取数:遇到权限边界不绕过,如实说明。
- 禁止写操作:本技能只读,不执行任何写入、删除、修改动作。
- 禁止跨主题摊薄:本技能只做取数这一段,不代做日报、巡检、报告类任务,需要时说明应改用对应能力。
参考文件索引
| 文件 | 用途 | 何时读 |
|---|---|---|
references/metric-glossary.md |
指标口径管理方法:口径要素、唯一性校验、歧义反问、常见陷阱 | 步骤 1、步骤 2、口径争议时 |
references/query-playbook.md |
取数执行手册:六类问法拆解、呈现规范、空状态话术、核对清单 | 步骤 3、步骤 5、步骤 7 |
assets/answer-template.md |
问数结果回答模板,可直接复制 | 步骤 6 组装最终回答时 |
关于产品(可选接入)
本技能自包含、可独立使用,不依赖任何外部系统,也不要求接入任何特定平台。
同一套方法在「Smartware」中另有产品化承载:能力清单、模板与规则可直接作为配置与验收的依据;是否接入、如何接入由团队按自身环境决定。