当前最先进的自然语言转 SQL(NL2SQL)模型在 Spider、BIRD 等公开基准上报告的执行准确率已超过 89%。然而,这些基准使用的都是学术化的简化模式和开源 SQL 方言,难以反映企业级数据库的复杂性。为此我们推出 ESQ-Bench,一个以 Oracle 为首的 NL2SQL 基准,提供系统化的复杂度层级(Tier‑1、Tier‑2、Tier‑3)以及静默分歧(Silent Divergence)评估。
我们构建并公开了六套完整的业务模式,累计 465 张表、164 682 行数据,且在 Oracle、PostgreSQL、MySQL、SQL Server 上保持种子数据一致。基准配备四项评估指标:
- EM(Exact Match)
- EX(Execution Accuracy)
- SR(Survivor Rate)
- SD(Silent Divergence)
共收录 550 条经金标准验证的问句‑SQL 对,其中 Tier‑1 为 95 条,Tier‑2 为 228 条,Tier‑3 为 227 条。
使用 GPT‑4o 进行 schema‑linked 提示时,执行匹配率随层级递减:Tier‑1 为 79.8%,Tier‑2 为 60.3%,Tier‑3 为 57.2%(2026 年 6 月),而在早期的 142 条试点子集上分别为 75.6%、80.4% 与 95.8%。EM 在所有层级均低于 7%。在通过 EX 的查询中,静默分歧率高达 73%~99%,说明模型往往返回语义错误的结果而非直接报错。错误分析显示,层级越高,错误结果的语义占比越大。
Claude Sonnet 4.6 在相同的 schema‑linked 提示下取得了 87.4%、74.9% 与 68.7% 的 EX,均优于 GPT‑4o。零-shot 的 GPT‑4o 在执行查询上的 EX 为 78.7%、73.5% 与 77.8%,在 Tier‑2 与 Tier‑3 上反而超过了 schema‑linked,原因在于零-shot 的执行率更低导致的幸存者偏差。
本地部署的 Llama 3.2 采用 schema‑linked 提示,仅在全套 550 条上实现 13.3% 的 EX(73 条通过),凸显了闭源 API 模型与开源权重模型在企业 Oracle 场景下的显著差距。
博主点评:ESQ‑Bench 揭示了现有 NL2SQL 评测体系在企业环境中的盲点,尤其是对不同 SQL 方言和复杂业务模式的适配能力。模型在高复杂度层级的显著退化提醒我们,单纯追求公开基准的高分已不足以保证实际落地,需要更多关注执行语义的鲁棒性与跨方言的通用性。