Skip to content

智能问数:销售情况怎么样?客服效率怎么样?一句话问清楚 ​

「这半年销售怎么样?」

看销售、查库存、复盘客服,在对话里提出需求,助手查询已授权的数据,把图表和明细一起返回。本页用三个案例说明操作方式,并提供独立数据源配置、权限说明和可下载的 Skills、SQL 示例。

本页三个案例使用独立演示库中的虚构数据,不代表实际经营情况。

开源版与本次扩展 ​

开源版已经支持通过工具查数据库,并在 Web 端用 ECharts 展示图表。商业版继续补充谁能查哪些表、图里的数字从哪来、查完怎么下载,让查询过程和结果都方便核对。

能力开源已有能力本次商业版扩展
数据库查询通过工具查询数据库、查看表结构增加独立问数数据源,配置哪些租户、用户能查哪些表
分析辅助表结构与 SQL 查询增加索引、少量样例和 EXPLAIN 执行计划查询
图表展示Web 端支持 ECharts从实际查询结果生成图表,图表和明细使用同一份数据
结果保存与下载对话中返回查询内容保存当次结果、统计口径和 SQL,重新打开会话可查看,支持下载 CSV

查询通过 Java/JDBC 执行。这里扩展了 MySQL 查询与诊断能力,不要求部署服务器安装 MySQL CLI,也不向助手开放通用 Shell 命令。

案例一:销售情况怎么样 ​

先把销售问题说具体一点。明确月份、订单状态和金额单位,助手就能按同一口径汇总。

text
分析演示库 2026 年 3 月到 8 月每月已支付销售额,退款不计入,
金额单位元。用折线图展示,给出简短结论。

助手先查看表结构,再按月份汇总已支付(paid)订单。折线看走势,下方表格看每个月的金额,两处使用同一份查询结果。

销售趋势:折线图、统计口径和查询明细

本例 3 月销售额为 94,770 元,8 月为 132,720 元,六个月合计 682,470 元。退款订单不计入。

接着问「只看华东」,不用把刚才的要求再写一遍。沿用 3 月到 8 月、已支付且排除退款的条件,再加上地区筛选。本例华东 3 月为 27,190 元,8 月为 39,840 元。

需要核对查询过程,也可以要求查看索引与执行计划。EXPLAIN 提供查询计划信息,不会自动创建索引或修改数据库。

案例二:哪些商品该补货 ​

仓库的问题,也可以直接问。把低于安全库存的商品找出来,看看哪里缺、各缺多少。

text
分析演示库 2026 年 9 月 1 日库存快照,找出低于安全库存的商品。
将仓库和商品拼接为图表维度,展示缺口件数,从大到小排列。
用柱状图展示,给出简短补货建议,不要推测原因。

哪些商品缺货、各缺多少,按缺口从大到小排好。缺口按「安全库存 − 现有库存」计算,只展示大于 0 的记录,现有库存和安全库存也留在表里,方便逐项核对。

库存预警:缺口排序和仓库商品明细

本例共有 6 项预警,合计缺口 116 件。上海仓传感器缺口最大,为 38 件;广州仓数据终端缺口 28 件。

这里的缺口只算到安全库存线。真正下采购单,还要看在途库存、到货时间和业务需求。

案例三:客服效率怎么样,哪些工单需要复盘 ​

先看团队达标率,再查到具体工单。复盘时既要知道整体表现,也要找到接下来值得核查的单子。

text
分析演示库 2026 年 8 月各客服团队的 24 小时内结单达标率,
分母只统计已关闭工单,排除未关闭。用柱状图展示百分比,
并在数据表中保留已关闭数、24 小时内关闭数。简短总结。

一个达标率,要连着「怎么算」一起看。本例按「24 小时内关闭数 ÷ 已关闭数 × 100%」计算。图表旁边保留两项工单数,看到百分比,也能核对它的计算依据。

客服效率:各团队达标率和计算依据

团队已关闭数24 小时内关闭数达标率
产品支持262492.31%
实施交付262180.77%
售后服务261869.23%

未关闭的工单按要求排除。同样是问达标率,计算范围变了,答案也会变。提问时把时间、工单状态和达标条件说清楚,更方便核对。

从达标率继续查到待复盘工单 ​

看到售后服务的 69.23%,业务负责人还会想知道,哪些单拖了,先看哪几单?

继续往下查,产品支持、实施交付、售后服务的超时结单分别为 2、5、8 张。售后服务的 215、223 号工单均用时 31 小时,比约定的 24 小时多了 7 小时,可以优先调出处理记录复盘。

还有一组数要分开看。三个团队各有 4 张未关闭工单,没有计入前面的达标率,这些单仍需要跟进。

这些深入查询已通过 MySQL CLI 核对;上方截图展示的是原有对话达标率案例。可以继续向助手提出以下需求:

text
沿用 8 月创建、已关闭工单的范围,列出各团队超时结单数量。
再列出超时工单 ID、首次响应耗时、解决耗时和超出 24 小时的时长,
按超时时长降序。另查同月未关闭数量,整理待复盘清单。
缺少负责人、优先级或处理记录时明确说明,不推测原因。

演示库没有责任人、客户等级和原因记录。目前能确定的是哪些工单需要核查,不能直接判断人员能力或超时原因。

用 Skills 沉淀业务口径和复盘经验 ​

下载客服月度复盘 Skill 示例 · 下载技能正文

Skills 可以把业务人员的经验留在这一步。 把「首响」是什么意思、达标率怎么算、超时后先检查什么,整理成一份「客服月度复盘」技能,后续分析就有了统一的方法。

将示例导入系统 Skills,交由业务负责人确认后启用,并与 data_inquiry 工具一起绑定智能体。示例包含以下内容,可以按自己的业务继续维护。

经验内容本例写法
术语首响指首次响应耗时;SLA 在本例指 24 个自然小时内解决。
计算口径按创建月份筛选,达标率只统计已关闭工单;未关闭单独列出。
复盘顺序先看团队指标,再找超时工单,最后列待核查事项。
信息缺失没有处理记录就不判断原因,没有负责人字段就不编造责任人。
经验更新将业务人员纠正整理为技能草稿,经确认或审核后维护,并标明适用业务。

业务人员发现口径不对,可以修订技能;不同客户的服务时限、节假日和等待客户时的暂停计时规则,也可以在业务确认后补充。Skills 负责分析方法,数据权限仍由服务端和数据库控制。

配合 MySQL CLI 核对 ​

MySQL CLI 就是 MySQL 命令行工具。 技术人员可以用同一个只读账号、同一份 SQL,核对超时明细和未关闭数量。需要排查慢查询时,再查看表结构、索引和执行计划。

下载本例查询 SQL。安装 MySQL 客户端后,技术人员使用专用只读账号连接对应数据库。以下为命令行示例,请替换主机、端口、账号与库名;-p 会交互提示输入密码。

sh
mysql --host=127.0.0.1 --port=3308 --user=ruoyi_inquiry_reader -p --database=ruoyi_inquiry_demo --default-character-set=utf8mb4

连接后执行(将路径改为下载文件的实际路径):

sql
SOURCE D:/downloads/service-review.sql;
SHOW FULL COLUMNS FROM demo_tickets;
SHOW INDEX FROM demo_tickets;
EXPLAIN SELECT id, resolved_hours FROM demo_tickets
WHERE opened_date >= '2026-08-01' AND opened_date < '2026-09-01'
  AND status = 'closed' AND resolved_hours > 24;

SQL 文件包含团队达标率、超时明细和未关闭数量三组查询。核对时使用相同数据源、时间范围和计算口径;数据发生变化后,CLI 最新结果可能与历史会话快照不同。

当前对话使用 Java/JDBC 执行查询,CLI 由技术人员辅助核对,未向助手开放通用命令行。 CLI 直连不会经过平台租户和用户授权校验,必须使用相应范围的数据库只读账号或专用视图。

接入自己的数据 ​

独立数据源是什么 ​

自己的数据接进来,需要为问数单独配置数据库连接、只读账号和允许查询的表。这就是这里的独立数据源。可以连接已有的 MySQL 业务库,也可以连接专门的分析库,无需先把数据搬进 RuoYi-AI。系统不会自动使用平台主库作为问数数据源。

例如,销售助手只需要查询 sales_view,就给数据库账号授予这个视图的读取权限,并在问数配置中列出这个视图。库存、客服可以在 sources 下分别增加数据源,各自维护连接、账号和授权范围。每次查询使用一个数据源,不支持跨库联查。

可以直接使用现有数据库服务器,确认后端可以访问它,并为问数准备专用只读账号。

配置与启用 ​

配置分两步。技术人员先在后端配置文件中填写数据源,再由管理员在后台给智能体绑定「智能问数」工具。 连接配置修改后,重启后端生效。

  1. 为问数创建独立的 MySQL 只读账号,只授予需要分析的表或视图的 SELECT 权限。
  2. 在后端配置 ruoyi.inquiry.sources,填入连接信息、授权租户、用户和表清单,补充字段说明与业务口径。
  3. 在后台为智能体绑定内置工具 data_inquiry(智能问数),选择该智能体开始对话。专用问数助手只绑定需要的工具。
  4. 先用一条已知答案的问题核对结果,再扩展到真实分析任务。

把以下配置合并到后端当前环境生效的 application-*.yml 中;已有 ruoyi 节点时,在其下追加 inquiry,不要重复定义顶层节点。替换示例值,并为后端进程设置 INQUIRY_DB_PASSWORD 环境变量,然后重启后端生效。

yaml
ruoyi:
  inquiry:
    result-path: ./data/inquiry-results
    sources:
      business:
        name: 经营分析库
        url: jdbc:mysql://127.0.0.1:3306/analytics?characterEncoding=utf8&serverTimezone=Asia/Shanghai
        username: inquiry_reader
        password: ${INQUIRY_DB_PASSWORD}
        tenant-id: "000000"
        users: [1]
        tables:
          sales_view: 销售分析视图,金额单位元
        business-rules: 销售额仅统计已支付订单,退款订单剔除。

每一项怎么填 ​

配置项填写方式
business自定义数据源标识,示例为 business。增加数据源时,在 sources 下使用不同标识。
name对话中用于识别的数据源名称,如「经营分析库」。
urlMySQL JDBC 地址,填写数据库主机、端口和库名。容器部署时,127.0.0.1 指后端容器自身,应改为容器可访问的数据库地址。
username / password专用只读数据库账号与密码。示例通过 ${INQUIRY_DB_PASSWORD} 读取服务端环境变量。
tenant-id允许使用该数据源的实际租户编号,保留引号。
users该租户中获准使用的用户 ID 列表,如 [1, 2]。这里填系统用户 ID,不是数据库账号;空列表不向任何用户开放。
tables允许查询的表或视图,左侧为真实名称,右侧为业务说明。只列需要开放的对象,同时在 MySQL 中授予对应的 SELECT 权限。
business-rules统计规则,例如订单状态、退款处理和金额单位。用于帮助理解业务,不代替数据库权限控制。
result-path查询结果保存目录,后端进程需要读写权限,部署时应持久化保存。

每个数据源只配置一个租户,登录用户必须同时满足租户和用户 ID 条件。需要服务不同租户时,分别配置数据源和相应的数据库访问范围。

在对话中确认配置 ​

后台给智能体绑定 data_inquiry(智能问数) 后,使用授权用户登录并选择该智能体,输入:

text
列出我可以查询的数据源和表,再查看经营分析库中 sales_view 的字段。

确认名称和字段符合预期,再提一个已知答案的问题。找不到数据源时,检查当前用户的租户编号、用户 ID、工具绑定,以及配置是否已随重启加载;连接失败时,检查数据库地址、网络和只读账号权限。

连接密码放在服务端配置或环境变量中,不放进提示词。这里的租户、用户和表授权用于问数工具;如需行级数据隔离,应为不同范围建立专用视图或独立数据源,不依赖模型自行补充过滤条件。

权限控制 ​

能问什么,也要有明确的权限。 给智能体开启工具后,用户仍然要通过租户、用户和表授权检查。查出来的结果也有归属,查看和下载时会再次核对。

控制范围当前规则
租户与用户当前租户必须与数据源的 tenant-id 一致,当前用户 ID 必须在 users 中;两项同时满足才可使用。
表与视图只允许访问 tables 中列出的对象。字段、索引、样例查询也检查表授权;SQL 引用未授权表或跨库表会被拒绝。
数据库账号配置专用只读账号,仅授予必要对象的 SELECT 权限。应用同时限制为受支持的只读查询,禁止写入、建表和任意命令执行。
结果查看与下载服务端核对结果所属用户、租户、会话,以及当前数据源授权。其他用户获得结果链接也不能直接读取。
撤销数据源访问从 users 中移除用户或移除数据源,并使配置生效后,该用户无法继续查询或读取原有结果。已经下载的文件无法通过此配置收回。

部门、区域和字段怎么隔离 ​

当前问数按租户、用户和表/视图控制访问。若华东团队只能看到华东订单,先建立只包含华东记录的专用视图;若不应开放手机号等字段,视图只保留允许使用的列。数据库账号与 tables 都只授权这个视图,再为对应用户配置数据源。

业务规则中的「只看华东」用于说明统计口径,不构成行级权限。部门、角色权限也不会自动转换为问数数据源授权,需要维护实际用户清单和数据范围。

历史结果保存的是查询时的数据。缩小表清单或修改视图,不会自动清除旧结果中已经保存的内容;需要收回这些历史内容时,还应撤销相关数据源访问,并按团队制度清理结果文件及已下载副本。

查看、下载与使用范围 ​

对话中的查询结果可以下载成 CSV。想核对过程,就展开实际执行的 SQL;下次打开会话,图表和明细还在。保存的是当时的结果,要看最新数据,再发起一次查询。

  • 支持单条只读 SELECT、授权表的字段/索引/前 5 行样例,以及 EXPLAIN。不支持写入、建表、跨库读取和任意命令执行。
  • 支持常用聚合、关联、筛选和排序;SQL 函数采用允许列表。暂不支持 CTE 等全部 MySQL 语法。
  • 图表支持折线图、柱状图、饼图和纯表格。图表配置由前端根据结果列生成,不执行模型输出的 JavaScript。
  • 单次查询结果最多 500 行、约 10 万字符,查询超时 15 秒。截断时页面会提示,优先在数据库中聚合。SQL 自带的 LIMIT 也会限制返回范围。
  • 下载 CSV 导出当前快照中的行,不会隐式导出整库。表格保留原始数字文本,图表用于观察趋势;超大数值以表格和 CSV 为准。
  • 历史会话展示查询时的快照。需要最新数据时,请再次查询。服务端应持久化结果目录;多实例部署需要共享该目录,并按数据管理要求安排保留和清理。
  • 结果读取和下载校验所属用户、租户、会话和当前数据源授权。自然语言结论仍需结合业务核对,数据相关性不能直接说明原因。

返回商业版介绍 · 文档创作