Skip to content

智能问数 ChatBI

ChatBI 提供会话式自然语言问数:新建会话并圈定数据范围,用业务语言提问,AI 生成只读 SQL 并执行,返回数据结果与图表;满意的回答可一键保存为数据集或仪表盘组件。在「报表中心 → 智能问数」(/report/chatbi)使用。

数据集编辑页的「AI 问数」的区别:后者是一次性的「生成 SQL 草稿」辅助;ChatBI 是多轮对话 + 结果沉淀 + 用量审计的完整问数工作台。

新建会话与冻结上下文

  1. 点「新建会话」,填写会话名称;
  2. 选择上下文类型——绑定一个数据源或一个数据集
  3. 勾选表白名单(1–100 张表):
    • 绑定数据集时,只能选该数据集 SQL 实际引用的表;
    • 绑定数据源时,只能选数据源元数据中真实存在的表。

会话创建时冻结元数据上下文(表结构快照),后续提问都基于冻结范围,数据源后续变化不影响会话,也避免 AI 探索到白名单外的表。

提问与结果

  • 在输入框描述业务问题(Ctrl / ⌘ + Enter 发送),AI 生成 SQL 并由服务端执行后返回结果;
  • 多轮对话:提问自动携带会话内最近消息作为上下文(最多 12 条且不超过约 6000 token),可用「基于上一问继续追问」的方式迭代口径;
  • 回答附结果表格(展示样本最多 20 行,同时报告总行数)与图表建议——系统按结果形状推荐 table / bar / line / area / pie / scatter / kpi 中最合适的呈现,可切换;
  • 每条回答附「查看生成的只读 SQL」,可展开审阅实际执行的语句;
  • 会话可重命名归档(归档后仅可查看历史,继续提问会被拒绝)、删除
  • 默认只能访问自己的会话;持有 report:chatbi:manage 的管理员可查看与管理他人会话。

安全边界

  • 模型只生成 SQL,不直连数据库;服务端对生成语句做只读校验(禁止写操作与多语句)、表白名单校验与查询预算约束后才执行;
  • 提供给 AI 的元数据已剔除敏感表与敏感列;
  • 所有执行走与数据集一致的只读取数通道(语句超时、行数上限)。

保存为治理资源

对满意的回答点「保存为治理资源」:

  • 保存为数据集:把生成的 SQL 固化为新数据集(再次校验资源创建权限与 SQL 白名单);
  • 保存为仪表盘:追加为现有仪表盘的组件,或新建仪表盘承载。

用量、配额与审计

  • 我的用量:查看个人问数配额消耗(Token、次数);
  • 每日 Token 配额:按用户租户两级设置每日 Token 上限(系统配置 report.chatbiUserDailyTokens / report.chatbiTenantDailyTokens,0=不限制),用量计入 Redis 按日累计,超限提问返回 429;
  • 问数审计report:chatbi:audit):管理员可查询全量问数记录,含模型、Token 用量、成本、延迟、返回行数/字节数与失败原因。

权限

操作权限码
会话查看 / 我的用量report:chatbi:list
创建会话report:chatbi:create
编辑(重命名 / 归档)report:chatbi:update
删除会话report:chatbi:delete
提问report:chatbi:ask
保存为数据集 / 仪表盘report:chatbi:save
查看问数审计report:chatbi:audit
跨用户会话管理report:chatbi:manage(可查看、管理其他用户的会话)

Built with VitePress for local documentation preview.