ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

如何获取BIRD-Interact数据集:Lite 270任务、Full 600任务与Mini-Interact下载完整指南

如何获取BIRD-Interact数据集:Lite 270任务、Full 600任务与Mini-Interact下载完整指南

【免费下载链接】BIRD-Interact

[ICLR 2026 Oral] BIRD-INTERACT: Re-imagines Text-to-SQL evaluation via lens of dynamic interactions.

项目地址:https://gitcode.com/gh_mirrors/bi/BIRD-Interact
点击查看免费下载

BIRD-Interact 是 ICLR 2026 Oral 论文提出的交互式 Text-to-SQL 评测基准,本文将带你完整获取它的三份数据集:Lite 270 任务、Full 600 任务与 Mini-Interact 300 任务,并搞定 PostgreSQL / SQLite 数据库和 Ground Truth 的合并方法。

一、先认识BIRD-Interact:动态交互的Text-to-SQL基准

BIRD-Interact 重新定义了 Text-to-SQL 的评测方式:不再只看单轮问答,而是让用户模拟器(User Simulator)与模型进行多轮对话,逐步消解用户查询中的歧义(Ambiguity),最终验证模型写出的 SQL 是否能真实执行并通过测试用例。

整个基准由三大部件组成,这也是下载数据集时需要一并准备的内容:

组成部件说明
🗄️ 数据库Lite/Full 为 PostgreSQL(18/22 个库),Mini-Interact 为 SQLite
📝 任务数据含歧义注入查询、追问、外部知识等字段
✅ Ground Truth标准答案 SQL 与可执行测试用例(需单独申请)

该基准提供两种评测模式,下载时可根据研究目标选择:

  • c-Interact(对话式交互):被动模式,流程固定——澄清歧义 → 提交 SQL → 追问,对应 bird_interact_conv/ 模块
  • a-Interact(智能体式交互):主动模式,Agent 自主决定何时查知识库、何时问用户、何时执行 SQL,对应 bird_interact_agent/ 模块

研究还发现,随着"用户耐心值"(交互轮数预算)增加,部分模型的成功率持续上升,展现出 Interaction-Time Scaling(交互时扩展)现象:

二、三大版本怎么选:Lite 270 / Full 600 / Mini-Interact

版本任务数数据库特点适用场景
bird-interact-lite270PostgreSQL(18 库 / 175 表)高质量真实业务任务快速实验、上手首选
bird-interact-full600PostgreSQL(22 库 / 244 表)覆盖 BI、CRUD 全操作,当前最强模型成功率仅约 16%严肃研究、刷榜
mini-interact300SQLite仅 SELECT,歧义消解与追问解耦,可本地轻量运行无 Docker 环境、个人快速验证

💡 新手建议:先用Lite 270跑通流程,再用Mini-Interact做本地调试,最后上Full 600。

三、第一步:克隆仓库获取评测代码

所有数据集的评测脚本、用户模拟器与合并工具都在仓库中,先克隆(这是唯一需要 clone 的步骤):

git clone https://gitcode.com/gh_mirrors/bi/BIRD-Interact

仓库中你后续会用到的关键文件:

  • README.md:总览、环境搭建与数据集字段说明
  • combine_public_with_gt.py:公开数据与 Ground Truth 的合并脚本
  • evaluation/:PostgreSQL 四种数据库类型的评测源码
  • mini_interact/README.md:Mini-Interact 数据集说明

四、下载Lite 270与Full 600数据集(PostgreSQL版)

1. 获取公开数据

Lite 与 Full 数据集托管在 HuggingFace 上,在 HuggingFace 搜索框中分别查找数据集卡片:

  • Lite:birdsql/bird-interact-lite(270 任务)
  • Full:birdsql/bird-interact-full(600 任务)

下载后将数据集放入对应模块的data/目录,例如 bird_interact_conv/ 或 bird_interact_agent/ 下。

⚠️ 注意:为防止数据泄露,公开数据不含sol_sql(标准答案)和test_cases(测试用例)字段,需要单独申请(见下节)。

2. 申请Ground Truth与Test Cases

官方邮件会自动发送完整字段文件,只需按格式发送邮件到bird.bench25@gmail.com,标题必须带指定标签:

数据集邮件标题标签
bird-interact-lite[bird-interact-lite GT&Test Cases]
bird-interact-full[bird-interact-full GT&Test Cases]

3. 合并公开数据与Ground Truth

收到 GT 文件后,用仓库根目录的 combine_public_with_gt.py 按instance_id自动合并。以 Full 为例:

# (1) 生成合并后的完整数据文件 python combine_public_with_gt.py \ /path/to/bird-interact-full/bird_interact_data.jsonl \ /path/to/bird_interact_full_gt_kg_testcases_08022.jsonl \ /path/to/bird_interact_data.jsonl # (2) 用合并结果替换原公开数据 cp /path/to/bird_interact_data.jsonl /path/to/bird-interact-full/bird_interact_data.jsonl

Lite 与 Mini 版本操作相同,只需替换对应的公开数据与 GT 路径。每条任务数据的核心字段(详见 README.md 的 Dataset Details 一节):

  • amb_user_query:注入歧义的用户查询
  • sol_sql:Ground Truth SQL
  • test_cases:验证预测 SQL 的可执行测试用例
  • preprocess_sql/clean_up_sql:执行前后对数据库的预处理与还原
  • follow_up/external_knowledge:追问标注与外部知识

4. 加载PostgreSQL数据库

Lite 与 Full 的数据库有两种获取方式:

方式 A:Docker 预构建镜像(推荐),无需手动下载数据库转储文件:

cd env docker compose pull docker compose up -d

这会启动三个容器:bird_interact_postgresql(Lite 数据库)、bird_interact_postgresql_full(Full 数据库)和bird_interact_eval(评测环境)。只跑 Lite 可注释掉postgresql_full服务以加快初始化。

方式 B:手动导入,自行下载 Lite / Full 的数据库转储文件(Google Drive 链接见 README.md Environment Setup 一节),解压后分别重命名为env/postgre_table_dumps与env/postgre_table_dumps_full,再使用docker-compose.build.yml构建镜像。

启动后务必检查数据库是否加载成功,在评测容器内执行:

docker compose exec bird_interact_eval bash cd /app/env python check_db_metadata.py --host bird_interact_postgresql # Lite python check_db_metadata.py --host bird_interact_postgresql_full # Full

预期结果:Lite 为18 库 / 175 表 / 2286 列,Full 为22 库 / 244 表 / 2011 列。若日志出现Errors occurred during import:,说明数据库未正确加载,评测分数会异常偏低(官方公告特别强调了这一点)。

五、下载Mini-Interact:SQLite本地轻量版

Mini-Interact 是便携版:300 个 SQLite 任务,歧义消解与追问解耦,无需 Docker 即可本地评测。详细说明见 mini_interact/README.md。

获取步骤:

  1. 在 HuggingFace 中查找数据集卡片birdsql/mini-interact,下载其中的 SQLite 数据库文件与mini_interact.jsonl数据文件
  2. 将 SQLite 数据库放入 mini_interact/knowledge_based/mini_interact_conv/data/ 目录,数据文件放为data/mini_interact.jsonl
  3. 配置模型 API Key 后,通过 mini_interact/knowledge_based/mini_interact_conv/pipeline/run_Mini_Interact.sh 即可运行对话式评测

当前已发布的版本为知识型歧义(Knowledge-Based)版本,仅支持 SELECT 查询;个性化歧义(Personalized)与 CRUD 操作在路线图中,可关注 mini_interact/README.md 的 Roadmap 表格。

六、进阶:使用BIRD-Interact-ADK并行评测

如果你的研究需要替换 Agent 框架或并行跑实验,可以改用官方 ADK 实现 BIRD-Interact-ADK/。它把系统拆成三个独立微服务:system_agent(6000 端口)、user_simulator(6001 端口)、db_environment(6002 端口),支持任意 LiteLLM 兼容的模型,并通过每任务独立数据库副本实现无锁并发:

其数据集加载逻辑与上文完全一致(Lite 18 库 / Full 22 库),详细步骤见 BIRD-Interact-ADK/README.md。

七、常见问题速查

问题解决方法
评测分数异常低检查 Docker 日志,确认数据库全部加载成功,不要跳过元数据校验
数据缺sol_sql/test_cases正常现象,公开数据刻意剔除,需邮件申请后用 combine_public_with_gt.py 合并
跑 Full 时连错数据库将 evaluation/ 中postgresql_utils.py的 host 从bird_interact_postgresql改为bird_interact_postgresql_full
用户模拟器解析 SQL 报错在bird_interact_eval环境执行pip install sqlglot==26.16.4(或重建容器)

到这里,Lite 270、Full 600 与 Mini-Interact 三份数据集、PostgreSQL / SQLite 数据库以及 Ground Truth 的完整获取链路就跑通了。接下来按 bird_interact_conv/README.md、bird_interact_agent/README.md 的 Quick Start 跑通第一组实验即可,祝你在 BIRD-Interact 排行榜上取得好成绩 🐦

【免费下载链接】BIRD-Interact

[ICLR 2026 Oral] BIRD-INTERACT: Re-imagines Text-to-SQL evaluation via lens of dynamic interactions.

项目地址:https://gitcode.com/gh_mirrors/bi/BIRD-Interact
点击查看免费下载

相关推荐

上一篇:aiohttp 客户端中间件实战指南:重试、日志、Token 刷新与 SSRF 防护
下一篇:Gatsby 中借助 gatsby-remark-prismjs 与 Emotion 实现 Markdown 代码高亮:using-emotion-prismjs 实战解析

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进