BIRD-CRITIC-1

GitHub
1.1k 34 较难 1 次阅读 3天前MIT语言模型数据工具其他
AI 解读 由 AI 自动生成,仅供参考

BIRD-CRITIC-1 是一个专为评估和提升大语言模型(LLM)在真实数据库环境中解决用户 SQL 问题能力而设计的开源基准测试工具。它直面当前 AI 在处理复杂、模糊的真实世界数据库故障时表现不足的痛点,不再局限于简单的文本转 SQL 任务,而是聚焦于诊断错误、调试查询以及优化现有代码全流程。

该工具构建了包含 600 个开发任务和 200 个隐藏测试题的高质量数据集,覆盖 MySQL、PostgreSQL、SQL Server 和 Oracle 四大主流数据库方言。其独特亮点在于引入了“人类专家协作”视角的评估标准,不仅提供标准的测试用例,还发布了自动回复系统以支持完整数据集的获取,并记录了人类专家在使用与不使用 AI 辅助下的性能对比数据,为研究人机协作模式提供了宝贵参考。此外,项目还衍生出了针对 SQLite 的专项数据集及支持多轮对话的交互版本。

BIRD-CRITIC-1 非常适合数据库研究人员、AI 算法工程师以及致力于提升代码智能体能力的开发者使用。通过这一基准,研究人员可以量化模型在真实场景下的鲁棒性,开发者则能利用其丰富的测试案例来训练和验证更强大的 SQL 辅助工具,共同推动人工智能在数据工程领域的落地应用。

使用场景

某电商公司的数据分析师正急需修复一个在 PostgreSQL 生产环境中运行缓慢且结果错误的复杂库存查询脚本,该脚本涉及多表连接和动态聚合逻辑。

没有 BIRD-CRITIC-1 时

  • 面对模糊的报错信息,分析师需花费数小时手动翻阅官方文档和教科书,逐一排查是语法错误还是逻辑漏洞。
  • 通用大模型生成的 SQL 代码往往忽略真实数据库的架构约束,导致“看似正确”但执行失败的幻觉代码。
  • 缺乏针对特定方言(如 PostgreSQL)的深度调试能力,难以定位因版本差异导致的函数兼容性问题。
  • 验证修复结果依赖人工构造测试数据,效率低下且容易遗漏边缘情况,无法确保修复后的绝对准确性。

使用 BIRD-CRITIC-1 后

  • BIRD-CRITIC-1 直接基于真实用户问题数据集,快速诊断出脚本中特定的连接逻辑错误并提供可执行的修正方案。
  • 依托其专为 PostgreSQL 等四大主流方言训练的调试能力,生成的代码完美适配当前数据库版本,消除兼容性幻觉。
  • 内置的自动化测试用例系统立即验证修复效果,确保查询结果与预期完全一致,无需人工反复试错。
  • 将原本需要数小时的排查过程压缩至分钟级,让分析师能专注于业务逻辑优化而非底层语法纠错。

BIRD-CRITIC-1 通过模拟专家级的人机协作模式,将现实世界中复杂的 SQL 故障排查从“盲目试错”转变为“精准治愈”。

运行环境要求

操作系统
  • Linux
  • macOS
  • Windows
GPU

未说明 (主要依赖 API 调用或本地数据库执行,无明确 GPU 训练/推理需求)

内存

未说明 (建议具备运行 Docker 容器及多数据库实例的内存)

依赖
notes1. 必须安装 Docker 和 Docker Compose 以构建评估沙箱环境(包含 PostgreSQL, MySQL, SQL Server, Oracle)。2. 完整数据集需从 Google Drive 下载数据库转储文件并解压至指定目录。3. 部分敏感字段(如标准答案 sol_sql 和测试用例 test_cases)需通过邮件申请获取,以防数据泄露。4. 运行基线代码需在 config.py 中配置大模型 API Key。
python3.10+
openai>=1.40
datasets
docker
docker-compose
BIRD-CRITIC-1 hero image

快速开始

BIRD-CRITIC 1.0 (SQL) HKU Logo Google Cloud Logo

新闻

  • 📢 [2026-03-24] 我们发布了BIRD-Critic GT & Test Cases Auto-Reply System,支持通过邮件请求自动发送完整数据集(包括sol_sql和test_cases),邮箱地址为📧 bird.bench25@gmail.com,主题标签为[bird-critic-1 GT&Test Cases]。
  • 📢 [2026-03-23] 我们发布了BIRD-Critic-SQLite,该数据集包含500个高质量的用户问题,专注于真实的SQLite数据库应用。
  • 📢 [2026-01-08] 我们最近更新了评估代码(特别是remove_distinct函数)。请从我们的GitHub仓库拉取最新代码。
  • 📢 [2025-07-09] 我们在网站上公布了人类表现分数!三个排行榜上显示的分数均来自数据库专家的人工评估,他们可以使用标准工具(如数据库教材、官方文档或IDE),但不能使用AI助手。当允许另一组具有相同专业知识的人员使用AI工具(ChatGPT、Claude或Gemini)时,性能提升至Open版的83.33、PG版的87.90以及Flash版的90.00,这表明人机协作在SQL问题解决中具有巨大潜力。
  • 📢 [2025-06-28] 我们在arXiv上发布了论文SWE-SQL(又名BIRD-CRITIC)
  • 📢 [2025-06-09] 我们发布了bird-interact-lite,该版本具备多轮对话和代理式交互功能,适用于现实世界中模糊且具有挑战性的文本转SQL任务。
  • 📢 [2025-06-08] 我们发布了bird-critic-1.0-postgresql,这是一个包含530个复杂任务的单一方言SQL问题调试数据集。
  • 📢 [2025-05-30] 我们很高兴发布LiveSQLBench-Base-Lite,其中包含18个终端用户级别的数据库和270个任务(180个仅SELECT任务,90个管理任务)。每个任务都涉及基于外部知识的明确且简单的用户查询,SQL语句难度介于中等至困难之间。

🧸 概述

BIRD-Critic 1.0推出了一种全新的SQL基准测试,旨在评估一项关键能力:大型语言模型(LLMs)是否能够在真实世界的数据库环境中诊断并解决用户问题?

该基准测试包含600个开发用任务和200个保留的分布外(OOD)测试任务。BIRD-CRITIC 1.0基于四种主流开源SQL方言中的真实用户问题构建:MySQL、PostgreSQL、SQL Server和Oracle。它不仅限于简单的SELECT查询,还涵盖了更广泛的SQL操作,以反映实际的应用场景。此外,还配备了一个优化的基于执行的评估环境,用于进行严格而高效的验证。

✅ 验证流程

BIRD-CRITIC中的每项任务都经过人工专家在以下几个方面的验证:

  1. 在BIRD环境中重现错误,以防止数据泄露。
  2. 为每项任务精心设计测试用例:
    • Soft EX:此指标可用于评估仅包含SELECT语句的任务。
    • Soft EX + 解析:此指标可用于评估具有特定用户需求或细化要求的任务。
    • 测试用例:对于DBA任务,例如CRUD(创建、读取、更新、删除),测试用例旨在评估逻辑的正确性。这对于需要多个连续SQL查询才能解决的用户问题也非常有效。
    • 查询执行计划:对于涉及效率提升或运行时错误的用户任务,可以通过QEP(查询执行计划)在算法层面评估解决方案SQL查询。
  3. 通过PostgreSQL模板和Docker快速搭建评估沙盒。
  4. 创建不同规模和专业领域的全新RDB。

🐣 精简版

我们发布了BIRD-Critic的精简版bird-critic-1.0-flash-exp,其中包括200个高质量的PostgreSQL用户问题,用于开发真实世界的应用程序。我们通过以下方式精选任务:

  • 收集并理解真实的用户问题。
  • 提炼问题定义和SQL知识。
  • 在BIRD环境中重现错误和解决方案。
  • 设计测试用例进行评估。

🦜 开放版

BIRD-CRITIC 1.0的开放版bird-critic-1.0-open是一个综合性的基准测试,包含570个任务,覆盖MySQL、PostgreSQL、SQL Server和Oracle四种SQL方言。它涵盖了广泛的SQL操作和用户问题。

BIRD-CRITIC 1.0 Open版模型性能结果

排名 模型名称 分数 等级
1 o3-mini-2025-01-31 34.50 🏆 领先
2 deepseek-reasoner (r1) 33.67 🌟 精英
3 o1-preview-2024-09-12 33.33 🌟 精英
4 claude-3-7-sonnet-20250219(thinking) 30.67 🌟 精英
5 gemini-2.0-flash-thinking-exp-01-21 30.17 🌟 精英
6 grok-3-beta 29.83 💎 卓越

Open版的完整结果可在此处查看:这里。 Bird-CRITIC 1.0 Flash版的结果可在此处查看:这里

🕊️ PostgreSQL版

bird-critic-1.0-pg是一个包含530个高质量用户问题的数据集,专注于真实的PostgreSQL数据库应用。

代理在 BIRD-CRITIC 1.0 PG 上的性能结果

代理性能

关键发现:

  • 代理式工作流通过迭代的环境交互,显著提升了大语言模型在调试任务中的表现。
  • SQLACT 在所有模型上均优于 ToolACT,这表明在处理复杂调试场景时,SQL 更丰富的动作空间具有明显优势。

🦅 BIRD-CRITIC 1.0 的完整数据集

BIRD-CRITIC 1.0 基准测试提供了以下几种配置:

  1. bird-critic-1.0-flash-exp:精简版,包含 PostgreSQL 上的 200 个实例。
  2. bird-critic-1.0-open:完整版,涵盖 MySQL、PostgreSQL、SQL Server 和 Oracle,共 570 个实例。
  3. bird-critic-1.0-postgresql:专为 PostgreSQL 设计的版本,包含 530 个实例。
  4. bird-critic-1.0-bigquery:精简版,包含 BigQuery 上的 100 至 200 个实例。

📦 数据集详情

数据集描述

  • 数据库: 完整数据库可从 Google Drive 下载。更多详情请参阅 快速评估 部分。
  • 数据: 每个数据实例包含以下主要部分:
    • db_id:数据库名称。
    • query:用户查询在 BIRD 环境中重写的版本。
    • issue_sql:用户编写的有缺陷的 SQL 查询。
    • sol_sql:正确答案的 SQL 解决方案。
    • preprocess_sql:在执行解决方案或预测之前需要运行的 SQL 查询。
    • clean_up_sql:在测试用例之后运行的 SQL 查询,用于撤销对数据库所做的任何更改。
    • test_cases:一组用于验证预测修正后的 SQL 的测试用例。
    • efficiency:如果该问题需要优化,则为真;通过查询执行计划 (QEP) 来衡量成本。
    • external_data:如果有外部 JSON 数据,则包含在此字段中。
  • 基线: 基线代码位于 ./baseline 目录中。
  • 评估: 评估代码位于 ./evaluation 目录中。
  • 策划者: BIRD 团队 & Google Cloud
  • 许可证: cc-by-sa-4.0
  • HuggingFace 数据集卡片: bird-critic-1.0-flash-exp

数据集用途

为避免因自动爬取导致的数据泄露,某些字段(如 sol_sqltest_cases)未包含在公开数据集中。如需完整数据集,请发送邮件至:📧 bird.bench25@gmail.com,主题标注为 [bird-critic-1 GT&Test Cases],我们将在 30 分钟内自动发送给您。

从 HuggingFace 使用数据集

您可以通过以下命令从 HuggingFace 下载数据集:

from datasets import load_dataset
# 加载闪存版数据集
dataset = load_dataset("birdsql/bird-critic-1.0-flash-exp")
print(dataset["flash"][0])

# 加载开放版数据集
dataset = load_dataset("birdsql/bird-critic-1.0-open")
print(dataset["open"][0])

或者您可以使用提供的脚本下载开放版数据集,并将其拆分为不同的方言版本。

cd baseline/data
python pull_data.py \
  --schema_path path/to/open_schema.jsonl \
  --input_path path/to/input.jsonl \ # 输入 JSONL 文件的路径(如果您想从 HuggingFace 下载数据集,此路径可以为空)
  --output_folder path/to/output_dir # 拆分文件的输出文件夹

💨 快速评估

文件夹结构

.
├── LICENSE
├── README.md
├── baseline
│   ├── data
│   ├── outputs
│   ├── run
│   └── src
├── evaluation
│   ├── docker-compose.yml
│   ├── env
│   ├── mssql_table_dumps
│   ├── mysql_table_dumps
│   ├── oracle_table_dumps
│   ├── postgre_table_dumps
│   ├── run
│   └── src
├── materials
│   ├── ...
└── requirements.txt

环境设置

要运行基线代码,您需要安装以下依赖项:

conda create -n bird_critic python=3.10 -y
conda activate bird_critic
pip install -r requirements.txt

生成

您还需要在 config.py 文件中设置模型名称(例如 gpt-4o-2024-08-06)以及 API 密钥。然后您可以运行以下命令来生成输出:

# 生成提示
cd baseline/run
bash generate_prompt.sh

# LLM 推理,需在 config.py 中设置 API 密钥
bash run_baseline.sh

生成的输出将保存在 ./baseline/outputs/final_output/ 目录中。

评估

我们使用 Docker 提供一个一致的环境来运行基准测试。设置环境的步骤如下:

  1. 首先从 Google Drive 下载 PostgreSQL、MySQL、SQL Server 和 Oracle 数据库。
  2. 解压文件夹,并将其保存在 ./evaluation 目录下,分别命名为 postgre_table_dumps、mssql_table_dumps、mysql_table_dumps 和 oracle_table_dumps。
  3. 构建 Docker Compose:
cd evaluation
docker compose up --build
  1. 与数据库交互 您可以使用 evaluation/src/{dialect}_utils.py 文件中的 perform_query_on_{dialect}_databases() 函数与各个数据库进行交互。该函数将返回查询结果。
  2. 在 so_eval_env 容器内运行评估脚本:
docker compose exec so_eval_env bash
cd run
bash run_eval.sh 

您必须在 run_eval.sh 脚本中指定要评估的方言。选项包括:

  • postgresql
  • mysql
  • sqlserver
  • oracle 评估报告文件将保存在与输入文件相同的文件夹中。如果您希望为每个实例生成日志文件,可以在 run_eval.sh 脚本中将 --logging 设置为 true

📄 论文

如果您觉得我们的工作有所帮助,请引用如下:

@article{li2025swe,
  title={SWE-SQL: Illuminating LLM Pathways to Solve User SQL Issues in Real-World Applications},
  author={Li, Jinyang and Li, Xiaolong and Qu, Ge and Jacobsson, Per and Qin, Bowen and Hui, Binyuan and Si, Shuzheng and Huo, Nan and Xu, Xiaohan and Zhang, Yue and others},
  journal={arXiv preprint arXiv:2506.18951},
  year={2025}
}

📋 待办事项清单

  • 发布精简版,bird-critic-1.0-flash (200)。
  • 开源代码和排行榜页面。
  • 发布完整版 bird-critic-1.0-open (570 个实例,涵盖 4 种方言)。
  • 发布完整版 bird-critic-1.0-postgresql (530 个 PostgreSQL 任务)。
  • 发布 SIX-GYM (Sql-fIX),包含 2000 多个类似健身房的训练环境。
  • 发布经过训练的代理式基线 BIRD-Fixer。
  • 更新代理式 (SQL-Act) 基线。

创作团队:

BIRD 团队 & Google Cloud

常见问题

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|今天
Agent开发框架图像

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

140.4k|★★☆☆☆|今天
开发框架Agent语言模型

NextChat

NextChat 是一款轻量且极速的 AI 助手,旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性,以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发,NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。 这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言,它也提供了便捷的自托管方案,支持一键部署到 Vercel 或 Zeabur 等平台。 NextChat 的核心亮点在于其广泛的模型兼容性,原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型,让用户在一个界面即可自由切换不同 AI 能力。此外,它还率先支持 MCP(Model Context Protocol)协议,增强了上下文处理能力。针对企业用户,NextChat 提供专业版解决方案,具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能,满足公司对数据隐私和个性化管理的高标准要求。

87.6k|★★☆☆☆|昨天
开发框架语言模型

ML-For-Beginners

ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。

85k|★★☆☆☆|昨天
图像数据工具视频

ragflow

RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体(Agent)能力相结合,不仅支持从各类文档中高效提取知识,还能让模型基于这些知识进行逻辑推理和任务执行。 在大模型应用中,幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构(如表格、图表及混合排版),显著提升了信息检索的准确度,从而有效减少模型“胡编乱造”的现象,确保回答既有据可依又具备时效性。其内置的智能体机制更进一步,使系统不仅能回答问题,还能自主规划步骤解决复杂问题。 这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统,还是致力于探索大模型在垂直领域落地的创新者,都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口,既降低了非算法背景用户的上手门槛,也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目,它正成为连接通用大模型与行业专有知识之间的重要桥梁。

77.1k|★★★☆☆|2天前
Agent图像开发框架

PaddleOCR

PaddleOCR 是一款基于百度飞桨框架开发的高性能开源光学字符识别工具包。它的核心能力是将图片、PDF 等文档中的文字提取出来,转换成计算机可读取的结构化数据,让机器真正“看懂”图文内容。 面对海量纸质或电子文档,PaddleOCR 解决了人工录入效率低、数字化成本高的问题。尤其在人工智能领域,它扮演着连接图像与大型语言模型(LLM)的桥梁角色,能将视觉信息直接转化为文本输入,助力智能问答、文档分析等应用场景落地。 PaddleOCR 适合开发者、算法研究人员以及有文档自动化需求的普通用户。其技术优势十分明显:不仅支持全球 100 多种语言的识别,还能在 Windows、Linux、macOS 等多个系统上运行,并灵活适配 CPU、GPU、NPU 等各类硬件。作为一个轻量级且社区活跃的开源项目,PaddleOCR 既能满足快速集成的需求,也能支撑前沿的视觉语言研究,是处理文字识别任务的理想选择。

74.9k|★★★☆☆|今天
语言模型图像开发框架