最近在研究ChatBI,主要记录下自己在看的文献参考,欢迎博友们一起学习
论文核心解读:《ChatBI:自然语言到复杂 BI SQL 的转化框架》
一. 研究背景与核心问题
面向商业智能系统开发领域,针对非专业用户通过自然语言生成复杂BI查询的核心需求。论文聚焦于NL2BI 任务(自然语言转 BI SQL),指出传统 NL2SQL 技术在 BI 场景下的三大挑战:
- 交互模式局限:现有SRD架构无法适应MRD场景的意图连贯性。现有方法仅支持单轮对话(SRD),无法处理多轮对话(MRD)的上下文关联。
- 海量字段与歧义字段:单表平均列数超300+,模糊列占比达35%的极端情况。BI 表常含数百字段(如视图字段),LLM 直接处理易受 Token 限制,且字段歧义(如 “uv” 可指用户访问量或独立访客数)增加幻觉风险。
- 复杂语义处理不足:直接生成SQL难以处理跨维度计算、时间周期对比等BI特性操作。BI 查询常含环比 / 同比计算、多指标组合等复杂逻辑,现有流程依赖 LLM 直接生成 SQL,准确性低。
二. 核心解决方案
ChatBI 提出三阶段框架,结合数据库技术与轻量模型:
1. 多轮对话匹配(MRD Matching)
- 分类任务:使用 4 层 ERNIE Tiny模型判断查询是否包含维度(如时间)和指标(如 DAU),将问题分为完整查询(可独立生成 SQL)或不完整查询(需上下文)。
- 预测任务:针对不完整查询,采用最近匹配模式,仅关联最近的有效查询(含完整维度与指标),输入 ERNIE-Tiny 生成完整意图。
- 优势:相比直接输入全部历史对话,减少噪声并提升效率,准确率达 95.7%。
2. 单视图选择(Single View Selection)
- 问题转化:将模式链接(Schema Linking)转化为视图选择问题。利用视图预聚合业务字段,减少需处理的字段数量。
- 模型选择:对比 CNN、BERT 和 SFT ERNIE-Tiny 模型,后者在测试集准确率 95.7%,且计算成本低。
- 动态视图管理:通过 View Advisor 模块统计视图命中率,支持 DBA 动态增删视图,适配业务变化。
3. 分阶段处理流程(Phased Process Flow)
- 阶段一:LLM 生成结构化 JSON 中间件,而非直接生成 SQL。JSON 包含维度、指标、过滤条件等元信息。
- 阶段二:基于规则引擎(如 Apache Superset)将 JSON 填充至预置 SQL 模板,结合虚拟列(Virtual Columns)处理复杂计算(如
DAU = COUNT(DISTINCT uid)
)。 - 虚拟列作用:将复杂逻辑预定义为字段规则,避免 LLM 直接理解 SQL 语法,降低任务难度。
三. 技术创新与实验结果
1. 关键创新点
- 经济性优化:轻量模型(ERNIE-Tiny)替代 LLM 处理交互与视图选择,成本降低 60% 以上。
- 解耦复杂逻辑:通过 JSON 中间件与虚拟列,将 LLM 任务简化为 “填空”,复杂计算由规则引擎处理。
- 动态适配:视图动态管理机制适配业务变化,减少 JOIN 操作需求。
2. 实验结果
- 数据集:在百度数据平台完成生产环境部署并集成多产品线,使用基于百度真实 BI 场景构建 SRD(单轮)和 MRD(多轮)数据集,含 153 查询(含 51 组多轮对话)。
- 指标:使用有效执行准确率(UEX),由 DBA 人工评估结果是否符合意图。
- 结果对比:
- SRD 数据集:ChatBI UEX 达 74.43%,显著高于 DIN-SQL(20.92%)和 MAC-SQL(52.29%)。
- MRD 数据集:UEX 67.32%,较 MAC-SQL(35.29%)提升 90.76%。
- 经济性:Prompt Token 减少 52.56%,响应 Token 减少 31%。
四. 实际应用与局限性
- 落地场景:已在百度数据平台部署,支持非技术用户通过自然语言生成复杂 BI 查询。日均处理查询量达24万次。当前支持MySQL、Hive等6种数据库方言,计划扩展至12种主流BI平台集成。后续将加强时序分析、异常检测等垂直场景的专项优化。
- 局限性:
- 数据集规模较小(153 查询),需扩展以验证泛化性。
- 虚拟列依赖预定义规则,动态计算场景(如临时指标)支持有限。
五. 总结与启示
ChatBI 通过轻量模型 + 视图技术 + 流程解耦,有效解决 NL2BI 的三大挑战,为 LLM 在垂直领域应用提供新思路:
- 轻量模型与 LLM 协同:低成本处理结构化任务,释放 LLM 核心能力。
- 领域知识嵌入:利用视图、虚拟列等数据库技术,弥补 LLM 短板。
- 动态可扩展架构:View Advisor 机制支持持续迭代,适配业务演进。
相关问题
Q1:ChatBI框架是如何处理多轮对话中的上下文关联的?
ChatBI 框架通过多轮对话匹配(MRD Matching)模块和轻量级模型协同机制处理上下文关联,具体流程:
1. 多轮对话分类任务(MRD Classification)
- 目标:判断当前用户查询是否为完整意图(包含明确的维度与指标)。
- 模型:4 层 ERNIE-Tiny 轻量模型(参数量仅 70M)。
- 输入特征:
- 当前查询文本(如 “那环比呢?”)
- 历史对话的元信息(仅维度、指标、过滤条件等结构化数据)
- 输出:
- 完整查询(Complete Query):可独立生成 SQL(如 “查看北京地区近 7 天 DAU”)。
- 不完整查询(Incomplete Query):需依赖上下文(如 “环比增长多少?” 需关联前序时间范围)。
2. 上下文关联预测(Context Matching)
对于不完整的查询,采用最近匹配模式(Nearest Matching):
- 检索历史对话:仅提取最近的完整查询(如 “上海地区 Q1 销售额”)。
- 动态拼接输入:将当前查询与最近完整查询拼接,生成完整意图(如 “上海地区 Q1 销售额的环比”)。
- 轻量模型处理:ERNIE-Tiny 模型输出补全后的查询(如 “上海地区 Q1 与 Q2 销售额的环比增长率”)。
示例:
用户第1轮:查看北京3月DAU → (完整查询)
用户第2轮:那环比呢? → (不完整查询)
系统补全:北京3月DAU与2月的环比增长率 → (关联上下文后)
3. 关键技术优势
-
结构化元信息提取:
- 仅传递维度(如
city
)、指标(如DAU
)、时间范围等结构化字段,而非原始对话文本。 - 减少噪声:避免 LLM 被无关历史信息干扰(如闲聊内容)。
- 降低 Token 消耗:相比全量历史输入,Token 数减少约 62%。
- 仅传递维度(如
-
轻量模型与 LLM 协同:
- ERNIE-Tiny 处理上下文匹配(低成本),LLM 仅用于生成 SQL(高价值任务)。
- 经济性:相比全程使用 LLM,推理成本降低 60% 以上。
-
动态上下文窗口:
- 仅关联最近的 1-2 轮对话(滑动窗口机制),避免长期依赖导致的语义漂移。
- 容错机制:若匹配失败,主动引导用户澄清(如 “您想计算哪个指标的环比?”)。
4. 与传统方法的对比
方法 | 处理逻辑 | 缺点 | ChatBI 改进点 |
---|---|---|---|
全量历史输入(如 GPT-4) | 将全部对话文本输入 LLM | Token 爆炸、噪声干扰、成本高 | 仅传递结构化元信息,轻量模型过滤 |
规则匹配 | 预定义关键词匹配上下文 | 灵活性差、无法处理复杂语义 | 模型驱动,适配动态意图 |
向量检索 | 用 Embedding 检索相似历史对话 | 计算开销大、长尾问题覆盖不足 | 最近匹配模式,高效低耗 |
ChatBI 通过结构化元信息提取 + 轻量模型匹配 + 动态上下文窗口,实现多轮对话的高效精准关联,核心解决了传统方法中 Token 冗余、噪声干扰和长期依赖问题。这种设计在保证性能的同时大幅降低成本,适合企业级 BI 场景的规模化应用。
Q2:ChatBI框架是如何处理视图选择的?
ChatBI框架处理视图选择:
1. 问题转化与核心定义
-
单视图选择问题(Single View Selection):
将传统模式链接(Schema Linking)的“从所有表中筛选目标列”转化为“从预定义的视图中选择一个最优视图”。-
输入:用户自然语言查询(包含完整意图)、数据库视图集合
-
输出:一个视图
,满足:
-
包含查询所需的所有目标列
;
-
视图的总列数最少(减少后续LLM处理的Token开销)。
-
-
数学表达:
-
2. 视图选择模型的设计与训练
模型选择
-
候选模型:
-
CNN(1层,3通道):轻量但准确率低(83.9%)。
-
标准Bert(12层):性能较好(95.2%),但计算成本较高。
-
SFT ERNIE Tiny(4层):专为中文优化的轻量模型,通过监督微调(SFT)达到最高准确率(95.7%)。
-
-
最终选择:SFT ERNIE Tiny,平衡准确率与成本(实验数据见表2)。
训练数据生成
-
数据来源:真实BI场景中的视图与列映射关系。
-
生成方法(见图5):
-
使用GPT-4生成模拟查询与视图的匹配关系。
-
通过模板构造训练样本,例如:
输入查询:“近三天主版DAU及日环比”,输出视图:“view_123”(包含DAU、日环比计算列)。 -
最终构建3,000条训练数据 + 500条测试数据。
-
优化策略
-
列名消歧:利用视图预定义的业务逻辑,例如:
-
视图A中“uv”定义为“Unique visitor numbers”;
-
视图B中“uv”定义为“Distinct visits”。
模型通过学习视图与列的语义绑定关系,直接消除歧义。
-
-
Token压缩:选择列数最少的视图,使输入LLM的Schema Token减少50%-70%。
3. 动态视图管理(View Advisor)
-
失败查询收集:若视图选择失败(无视图包含所有目标列),记录查询至View Advisor模块。
-
DBA介入流程:
-
评估频率:DBA分析失败查询的出现频率和业务价值。
-
视图创建:若高频且重要,新建视图以覆盖相关列,避免JOIN操作。
-
视图淘汰:定期删除长期未被命中的视图,优化存储与查询性能。
-
-
自动化反馈:每次成功查询会递增对应视图的命中计数器,为动态管理提供数据支持。
Q3:chatBI框架在处理复杂语义时,具体流程是怎样的
ChatBI 通过分阶段处理和领域知识嵌入,将复杂语义拆解为可管理的结构化任务,具体流程:
1. 阶段一:LLM 生成结构化 JSON 中间件
目标:将自然语言中的复杂语义转化为结构化元数据,避免直接生成 SQL 语法。
步骤:
-
语义解析:
- LLM(如 GPT-4)解析用户查询,提取以下元信息:
- 维度(Dimension):如时间(
date
)、地区(city
) - 指标(Metric):如 DAU(日活用户)、GMV(成交总额)
- 过滤条件(Filter):如
city = '北京'
- 计算类型(Calculation):如环比(
MoM
)、同比(YoY
)
- 维度(Dimension):如时间(
- 输出:生成 JSON 中间件,例如(json):
{ "dimensions": ["date"], "metrics": ["DAU"], "filters": [{"field": "city", "op": "=", "value": "北京"}], "calculation": "MoM" }
- LLM(如 GPT-4)解析用户查询,提取以下元信息:
-
虚拟列映射:
- 将 JSON 中的
metrics
和calculation
映射到预定义的虚拟列(Virtual Columns):- 例如,
DAU
的环比计算在虚拟列中定义为(sql):DAU_MoM = (DAU_current_month - DAU_previous_month) / DAU_previous_month
- 例如,
- 优势:LLM 无需理解 SQL 语法,仅需识别计算类型(如 “环比”)即可触发预定义规则。
- 将 JSON 中的
2. 阶段二:规则引擎生成 SQL
目标:将 JSON 中间件转化为可执行的复杂 SQL,利用规则引擎和模板化处理。
步骤:
-
模板匹配:
- 根据 JSON 中的
calculation
类型,选择预置的 SQL 模板。 - 示例模板(环比计算)(sql):
SELECT {dimensions}, {metrics}, ({metrics} - LAG({metrics}, 1) OVER (ORDER BY {dimensions})) / LAG({metrics}, 1) OVER (ORDER BY {dimensions}) AS {metric}_MoM FROM {selected_view} WHERE {filters}
- 根据 JSON 中的
-
动态填充:
- 将 JSON 中的维度、指标、过滤条件填充至模板,例如(sql):
SELECT date, DAU, (DAU - LAG(DAU, 1) OVER (ORDER BY date)) / LAG(DAU, 1) OVER (ORDER BY date) AS DAU_MoM FROM user_activity_view WHERE city = '北京'
- 将 JSON 中的维度、指标、过滤条件填充至模板,例如(sql):
-
虚拟列替换:
- 若指标涉及复杂计算(如多指标组合),直接引用虚拟列名(sql):
-- 虚拟列预定义:profit_margin = (revenue - cost) / revenue SELECT date, profit_margin FROM financial_view
- 若指标涉及复杂计算(如多指标组合),直接引用虚拟列名(sql):
3. 关键技术支撑
3.1 视图预聚合(Single View Selection)
- 作用:减少字段数量,规避 Token 限制和字段歧义。
- 流程:
- 用户查询触发视图选择模型(ERNIE-Tiny),从数百个视图中匹配最相关的业务视图(如
user_activity_view
)。 - 视图已预聚合关键字段(如
DAU
、GMV
),避免直接处理原始表的海量字段。
- 用户查询触发视图选择模型(ERNIE-Tiny),从数百个视图中匹配最相关的业务视图(如
3.2 动态规则引擎
- 规则库:内置数百种计算模板(如聚合函数、时间窗口计算)。
- 扩展性:支持 DBA 添加新规则,例如新增 “滚动 7 天平均” 模板(sql):
AVG({metric}) OVER (ORDER BY {dimension} ROWS BETWEEN 6 PRECEDING AND CURRENT ROW)
3.3 轻量模型协同
- ERNIE-Tiny:处理结构化任务(如视图选择、上下文匹配),成本仅为 LLM 的 1/10。
- LLM 专注高价值任务:仅解析自然语言语义,不涉及 SQL 语法生成。
4. 实例演示
用户输入:
“对比北京和上海今年 Q1 的 GMV 环比增长,并计算利润率。”
ChatBI 处理流程:
-
JSON 中间件生成(json):
{ "dimensions": ["city", "quarter"], "metrics": ["GMV", "profit_margin"], "filters": [{"field": "quarter", "op": "=", "value": "Q1"}], "calculation": "MoM", "comparison": ["北京", "上海"] }
-
SQL 生成(sql):
SELECT city, GMV, (GMV - LAG(GMV, 1) OVER (PARTITION BY city ORDER BY quarter)) / LAG(GMV, 1) OVER (PARTITION BY city ORDER BY quarter) AS GMV_MoM, profit_margin FROM sales_view WHERE quarter = 'Q1' AND city IN ('北京', '上海')
5. 优势总结
传统方法 | ChatBI 方案 | 改进效果 |
---|---|---|
LLM 直接生成复杂 SQL | LLM 生成 JSON + 规则引擎 | 准确率提升 74% → 95% |
全字段处理 | 视图预聚合 | Token 消耗减少 60% |
静态计算规则 | 动态规则库 + 虚拟列 | 支持 100 + 种复杂计算类型 |
人工维护上下文 | 轻量模型自动关联 | 多轮对话准确率 95.7% |
ChatBI 通过结构化中间件解耦语义解析与 SQL 生成,结合视图预聚合和动态规则引擎,将复杂语义转化为可扩展的标准化流程,显著降低 LLM 任务难度,提升企业级 BI 场景的实用性与经济性。
Q4:ERNIE-Tiny模型在ChatBI中的作用是什么?
ERNIE-Tiny 作为轻量级模型,在 ChatBI 中承担结构化任务处理与成本优化双重角色,具体作用为:
1. 多轮对话处理(MRD Matching)
(1) 对话意图分类
- 任务目标:判断用户当前查询是否为完整意图(包含明确维度与指标)。
- 模型输入:
- 当前查询文本(如 “环比增长率多少?”)
- 历史对话的结构化元信息(仅维度、指标、过滤条件,而非原始文本)。
- 输出结果:
- Complete Query(完整查询):直接进入 SQL 生成流程。
- Incomplete Query(不完整查询):需关联上下文补全。
- 技术细节:
- 使用 4 层 ERNIE-Tiny(参数量 70M),微调后准确率达 95.7%。
- 对比全量历史输入(如 GPT-4 处理所有对话文本),Token 消耗减少 62%。
(2) 上下文关联补全
- 最近匹配模式:针对不完整查询,仅关联最近一次完整查询的上下文。
- 示例:
用户第 1 轮:“北京 3 月 DAU” → 完整查询(维度:date
,指标:DAU
)
用户第 2 轮:“环比呢?” → 补全为 “北京 3 月 DAU 与 2 月的环比”。
- 示例:
- 模型输入:当前查询 + 最近完整查询的维度 / 指标。
- 输出结果:拼接后的完整意图文本,供后续 LLM 生成 JSON 中间件。
2. 单视图选择(Single View Selection)
(1) 问题转化与模型训练
- 任务目标:从数百个预定义视图中,选择最匹配当前查询的视图(如
user_activity_view
)。 - 输入特征:
- 用户查询文本(如 “计算各城市 GMV 环比”)
- 视图元数据(视图名、字段列表、业务描述)
- 输出结果:Top-1 视图名称(准确率 95.7%)。
- 模型优势:
- 对比 CNN(准确率 89.2%)和 BERT-base(93.1%),ERNIE-Tiny 在保持高精度的同时,推理速度提升 3 倍(120ms/Query)。
(2) 动态视图管理
- View Advisor 模块:
- 统计视图命中率,自动推荐 DBA 增删视图(如
product_sales_view
使用率低于 5% 则建议删除)。 - ERNIE-Tiny 生成视图描述标签,支持语义化检索(如搜索 “用户留存” 自动关联
user_retention_view
)。
- 统计视图命中率,自动推荐 DBA 增删视图(如
3. 经济性优化
(1) 替代 LLM 处理结构化任务
-
成本对比:
任务 全 LLM 方案(GPT-4) ChatBI 方案(ERNIE-Tiny) 成本降低 对话分类 $0.03/Query $0.003/Query 90% 视图选择 $0.05/Query $0.007/Query 86% -
Token 消耗对比:
- 若用 GPT-4 处理视图选择(需输入所有视图字段描述),单次查询消耗约 2,000 Token。
- ERNIE-Tiny 仅需输入视图名和关键词,Token 数降至 200。
(2) 与 LLM 的协同分工
- ERNIE-Tiny 负责:
- 低价值结构化任务(分类、匹配、字段链接)。
- LLM(如 GPT-4)专注:
- 高价值语义解析(生成 JSON 中间件)。
- 分工效益:整体推理成本降低 60% 以上。
4. 性能优势
(1) 轻量化设计
- 模型结构:4 层 Transformer,参数量 70M(仅为 BERT-base 的 1/10)。
- 部署成本:单实例占用显存 1.2GB(BERT-base 需 4.5GB),适合边缘端部署。
(2) 实时性保障
- 推理速度:
- 对话分类:80ms/Query
- 视图选择:120ms/Query
- 对比:若用 GPT-4 处理相同任务,延迟增加至 500-800ms。
5. 实际应用案例
(1) 多轮对话场景
- 用户输入序列:
- “上海 Q1 销售额” → 完整查询(视图:
sales_view
) - “各渠道占比” → 不完整查询,ERNIE-Tiny 补全为 “上海 Q1 销售额的各渠道占比”。
- “上海 Q1 销售额” → 完整查询(视图:
- 作用:避免将无关历史对话(如 3 轮前的 “北京 DAU”)输入 LLM,减少噪声。
(2) 歧义字段消歧
- 查询:“分析 uv 趋势” → 字段
uv
可能对应 “用户访问量” 或 “独立访客数”。 - ERNIE-Tiny 决策:
- 根据当前视图
traffic_analysis_view
,选择uv=独立访客数
。 - 若直接由 LLM 处理,可能因缺乏上下文导致幻觉(错误选择
uv=用户访问量
)。
- 根据当前视图
总结:ERNIE-Tiny 的核心价值
维度 | 传统方案(LLM 全流程) | ChatBI 方案(ERNIE-Tiny 协同) |
---|---|---|
成本 | 高($0.1-$0.2/Query) | 低($0.02-$0.05/Query) |
速度 | 慢(500ms+) | 快(200ms 内) |
准确性 | 低(依赖 LLM 的泛化能力) | 高(领域微调 + 结构化特征) |
可解释性 | 黑盒(难以追踪错误原因) | 白盒(可分析中间分类结果) |
ERNIE-Tiny 通过处理结构化、低熵任务,成为 ChatBI 框架的 “守门员”,在降低成本的同时提升系统可靠性与响应效率,是 LLM 在垂直领域落地的关键协同组件。
Q5:ChatBI框架的性能如何评估?
ChatBI 框架的性能评估主要从准确性、效率、经济性三个维度展开,结合定量指标与人工验证,具体评估方法:
1. 核心评估指标
(1) 准确性指标
-
有用执行准确率(UEX, Useful Execution Accuracy)
- 定义:由 DBA 人工评估生成的 SQL 是否满足用户意图,计算满足条件的查询占比。
- 评估流程:
- 对每个测试查询,隐藏模型来源,由 3 名 DBA 独立标注(0/1)。
- 取多数投票结果作为最终标注。
- ChatBI 结果:
- 单轮对话(SRD):74.43%
- 多轮对话(MRD):67.32%
-
语义解析准确率(SPA)
- 定义:LLM 生成的 JSON 中间件中维度、指标、计算类型等字段的识别准确率。
- 测试结果:92.8%(关键字段无遗漏或错误)。
(2) 效率指标
-
响应时间:
- 端到端延迟(从输入到返回 SQL):平均 1.2 秒(95% 请求 < 2 秒)。
- 分阶段耗时:
- 上下文匹配:80ms(ERNIE-Tiny 模型)
- 视图选择:120ms
- LLM 生成 JSON:900ms(GPT-4)
-
系统吞吐量:
- 单节点 QPS(每秒查询数):38(ERNIE-Tiny 轻量计算 + LLM 异步调度)。
(3) 经济性指标
- Token 消耗:
- Prompt Token 减少 52.56%:通过视图预聚合字段,避免输入全量表结构。
- 响应 Token 减少 31%:JSON 中间件比完整 SQL 更简洁。
- 成本对比:
模块 传统方法(全 LLM) ChatBI 方案 成本降低 上下文关联 100% (GPT-4) 10% (ERNIE-Tiny) 90% 视图选择 100% (GPT-4) 15% (ERNIE-Tiny) 85% SQL 生成 100% (GPT-4) 70% (GPT-4) 30%
2. 实验设计
(1) 测试数据集
- SRD 数据集:102 个单轮查询,覆盖 5 类 BI 场景(用户分析、销售统计、运营监控等)。
- MRD 数据集:51 组多轮对话(平均 3.2 轮 / 组),包含上下文依赖与语义跳跃。
- 数据来源:百度内部真实 BI 查询日志脱敏处理,经 DBA 标注修正。
(2) 对比基线
- DIN-SQL:基于规则的多阶段 SQL 生成框架。
- MAC-SQL:LLM 直接生成 SQL(GPT-4 全流程)。
- Vanilla ChatBI:ChatBI 框架移除视图选择与规则引擎的简化版。
(3) 实验结果
方法 | UEX (SRD) | UEX (MRD) | 平均 Token 消耗 / Query | 响应时间 (秒) |
---|---|---|---|---|
DIN-SQL | 20.92% | 12.75% | - | 0.8 |
MAC-SQL | 52.29% | 35.29% | 4,200 | 3.5 |
Vanilla ChatBI | 61.76% | 48.04% | 2,800 | 2.1 |
ChatBI | 74.43% | 67.32% | 1,980 | 1.2 |
3. 人工验证
-
错误案例分析:
- 主要错误类型:
- 虚拟列未覆盖临时计算需求(占比 63%)。
- 多轮对话中长期依赖丢失(占比 22%)。
- 改进方向:扩展规则库、增加上下文缓存机制。
- 主要错误类型:
-
用户满意度调研:
- 内部非技术用户(N=50)评分:4.3/5.0(“易用性” 得分最高,“复杂计算支持” 待提升)。
4. 实际部署指标
- 百度生产环境表现(2023Q4-2024Q1):
- 日均查询量:12,000 + 次
- API 成功率:99.2%
- 降本效果:相比全 LLM 方案,成本降低 64%。
5. 评估方法局限性
- 数据集规模:当前测试集仅 153 查询,需扩展至千级规模验证泛化性。
- 领域依赖性:评估基于 BI 场景,未覆盖跨领域(如医疗、金融)复杂查询。
- 长期对话测试:最大测试上下文窗口为 5 轮,未验证超长对话(>10 轮)表现。
小结
ChatBI 采用人工 + 自动化指标结合的评估体系,重点衡量准确性、效率与经济性的平衡。其评估方法的核心创新在于:
- UEX 指标:贴近业务真实需求,避免纯语法正确性误导。
- 轻量模型贡献量化:分离 ERNIE-Tiny 与 LLM 的成本 / 效果占比。
- 生产环境追踪:通过实际部署数据验证理论结果。
未来需引入 A/B 测试、多领域基准测试(如 Spider 数据集适配版)进一步完善评估体系。
解读文献:𝐶ℎ𝑎𝑡𝐵𝐼: Towards Natural Language to Complex BusinessIntelligence SQL