Web Analytics

BIRD-Interact

⭐ 453 stars Dutch by bird-bench

🌐 Taal

BIRD-INTERACT 1.0 HKU Logo Google Cloud Logo

Licentie Leaderboard HuggingFace Python OpenAI

⚠️ Mededeling

Let op dat er vóór het evaluatieproces, wanneer Docker de databases laadt, af en toe fouten kunnen optreden door inconsistenties in de omgeving (deze beëindigen het proces niet maar verschijnen wel in de Docker-logs). Hierdoor kunnen sommige databases niet goed worden geladen, wat kan leiden tot lege databases. Dit veroorzaakt abnormaal lage evaluatieresultaten. 👉 Daarom raden we sterk aan om vóór het uitvoeren van de evaluatie de Docker-logs te controleren op fouten en te verifiëren dat alle databases succesvol zijn geladen.

👉 We hebben de Indieningsrichtlijnen bijgewerkt, waarbij aangepaste agent-scaffolds worden ondersteund. Bekijk gerust onze gedetailleerde indieningsrichtlijnen hier.

📰 Nieuws

Het geeft volledige details, methodologie en evaluatie van onze interactieve text-to-SQL benchmark. 👉 Bekijk het en ontdek meer over de ideeën achter BIRD-Interact.

Dit is een pittige — de beste LLMs halen slechts een 16,33% succesratio, met slechts 10,0% op de c-interact en a-interact onderdelen. 👉 Voor meer details, bezoek onze projectwebsite.

Wil je vroege toegang, stuur dan een e-mail zoals op de site vermeld voor een automatische download.

De volledige LiveSQLBench-Base en -Large versies komen binnenkort!

🧸 Overzicht

BIRD-INTERACT, een interactieve text-to-SQL benchmark, herdefinieert Text-to-SQL-evaluatie vanuit het perspectief van dynamische interacties. De omgeving combineert een hiërarchische kennisbasis, database documentatie en een functiegestuurde gebruikerssimulator om authentieke bedrijfsomgevingen te recreëren met volledige CRUD-operaties. Het biedt twee strenge testmodi: (1) passieve Gespreksinteractie en (2) actieve Agentische Interactie, verdeeld over 600 geannoteerde taken waaronder Business Intelligence (BI), CRUD-operaties enz., elk beveiligd met uitvoerbare testcases. Typische evaluaties veroorzaken 1.968-5.496 interactierondes tussen model en gebruikerssimulator, terwijl state-of-the-art redeneermodellen momenteel slechts ≈24% en ≈18% van de taken oplossen, wat de uitdaging van de benchmark onderstreept.

✅ Twee Evaluatiemodi

BIRD-INTERACT ondersteunt twee evaluatiemodi zoals hierboven genoemd:

🐣 Lite Versie

We brengen een lite-versie van BIRD-INTERACT uit, bird-interact-lite-exp, die 270 hoogwaardige, realistische taken bevat specifiek voor PostgreSQL. Dit is een goed startpunt voor snelle experimenten.

🦜 Volledige Versie

De volledige versie van BIRD-INTERACT, bird-interact-full, is een uitgebreide benchmark met 600 taken voor PostgreSQL. Het bestrijkt een breed scala aan SQL-operaties en gebruikersvragen. De volledige versie komt binnenkort.

Modelprestatie Resultaten op BIRD-INTERACT-FULL

#### 1. c-Interact Text-to-SQL Prestaties | Rang | Modelnaam | Genormaliseerde Beloning | Gem. Kosten (USD)/Taak | Niveau | |:----:|:-------------------|:------------------------:|:----------------------:|:------------------:| | 1 | Gemini-2.5-Pro | 20.92 | $0.04 | 🏆 Uitstekende Chat | | 2 | O3-Mini | 20,27 | $0,07 | 🏆 Uitstekende Chat | | 3 | Claude-Sonnet-4 | 18,35 | $0,29 | 💎 Goede Chat | | 4 | Qwen-3-Coder-480B | 17,75 | $0,11 | 💎 Goede Chat | | 5 | Deepseek-Chat-V3.1 | 15,15 | $0,12 | ✨ Standaard | | 6 | Claude-Sonnet-3.7 | 13,87 | $0,29 | ✨ Standaard | | 7 | GPT-5 | 12,58 | $0,08 | ⚪ Basis |

#### 2. a-Interact Text-to-SQL Prestaties | Rang | Modelnaam | Genormaliseerde Beloning | Gemiddelde Kosten (USD)/Taak | Niveau | |:----:|:-------------------|:-----------------------:|:----------------------------:|:-----------------------:| | 1 | GPT-5 | 25,52 | $0,24 | 🏆 Uitstekende Interactie | | 2 | Claude-Sonnet-4 | 23,28 | $0,51 | 🏆 Uitstekende Interactie | | 3 | Claude-Sonnet-3.7 | 17,45 | $0,60 | 💎 Goede Interactie | | 4 | Gemini-2.5-Pro | 17,33 | $0,22 | 💎 Goede Interactie | | 5 | O3-Mini | 16,43 | $0,06 | ✨ Standaard | | 6 | Deepseek-Chat-V3.1 | 13,47 | $0,06 | ✨ Standaard | | 7 | Qwen-3-Coder-480B | 10,58 | $0,07 | ⚪ Basis |

\ Budgetparameters: Startbudget/Gebruikersgeduld Budget, gemeten in onze virtuele valuta bird-coin*s . Zie bird_interact_agent/README.md voor meer details.

Interaction-Time Scaling (ITS)

Interaction-Time Scaling (ITS) verwijst naar het vermogen van een model om zijn eindprestaties continu te verhogen via meerstaps interacties. Wanneer deze interactieve prestaties de geïdealiseerde één-staps prestaties van het model op een volledig gespecificeerde, ondubbelzinnige taak overtreffen, zeggen we dat het voldoet aan de ITS-wet. Naarmate het gebruikersgeduld toeneemt en het aantal interacties groeit, blijven de prestaties stijgen, wat aantoont dat het model effectieve communicatie over langere dialogen kan volhouden. Momenteel voldoet alleen claude-3-7-sonnet aan de ITS-wet.

Omgevingsinstallatie

> Als je alleen wilt evalueren op bird-interact-lite, kun je de postgresql_full service in docker-compose.yml uitcommentariëren om de installatie van de omgeving te versnellen. Start de omgeving door het volgende uit te voeren:
   cd env
   docker compose pull 
   docker compose up -d
   ``
   Wacht enkele minuten tot de database-initialisatie is voltooid. 
   
  U kunt de voortgang van het bouwen volgen via:
  `bash
  docker compose logs -f --tail=100 bird_interact_postgresql_full # or bird_interact_postgresql for bird-interact-lite
  `
  Als het voltooid is, zou je de logs zonder fouten moeten zien zoals:

`bash bird_interact_postgresql_full | 2025-10-28 17:58:30.413 HKT [1] LOG: database system is ready to accept connection ` Als u eerder containers heeft gemaakt en deze opnieuw wilt aanmaken, kunt u het volgende commando uitvoeren: `bash docker compose down -v # this cmd removes the containers and the volumes docker compose pull # pull the latest images from Docker Hub docker compose up -d --force-recreate # build and start the containers again. --force-recreate means force the recreation of the containers. # Or docker compose up -d --force-recreate bird_interact_eval to only recreate the bird_interact_eval container about evalution code environment. ` Dit start 3 containers met vooraf gebouwde images van Docker Hub:

  • bird_interact_postgresql: PostgreSQL-database voor bird-interact-lite
  • bird_interact_postgresql_full: PostgreSQL-database voor bird-interact-full
  • bird_interact_eval: Evaluatie-omgeving voor zowel a-Interact als c-Interact.
Nu kun je de evaluatie-omgeving starten door het volgende commando uit te voeren: `bash docker compose exec bird_interact_eval bash `

  • (Optioneel) Bouw de omgeving handmatig (als je de images vanaf nul wilt bouwen):
  • Download de database-dumps
  • bird-interact-lite. Pak uit en hernoem als env/postgre_table_dumps.
  • bird-interact-full. Pak uit en hernoem als env/postgre_table_dumps_full.
  • Bouw de omgeving handmatig door docker-compose.build.yml uit te voeren.
`bash cd env/ docker compose -f docker-compose.build.yml build docker compose -f docker-compose.build.yml up -d `

  • (Aanbevolen) Controleer of de databasecontainers succesvol zijn gebouwd en draaien.
  • Print de container build logs om te verzekeren dat de databases zonder fouten succesvol zijn gebouwd:
`bash docker logs bird_interact_postgresql > build_bird_interact_postgresql.log 2>&1 docker logs bird_interact_postgresql_full > build_bird_interact_postgresql_full.log 2>&1 ` Als er fouten optreden, wordt "Er zijn fouten opgetreden tijdens het importeren:" in de logbestanden afgedrukt.

  • Controleer of de databasecontainers in goede staat zijn.
Gebruik ons meegeleverde Python-script om de databasemetadata te verifiëren:
`bash docker compose exec bird_interact_eval bash cd /app/env python check_db_metadata.py --host bird_interact_postgresql python check_db_metadata.py --host bird_interact_postgresql_full ` Verwachte resultaten:
  • bird-interact-lite:
  • 📈 Totaal aantal databases: 18
  • 📋 Totaal aantal tabellen: 175
  • 🔢 Totaal aantal kolommen: 2286
  • 📈 Gemiddeld aantal rijen per tabel: 1.038,48
  • 💾 Totale grootte: 207,15 MB (ongeveer)
  • bird-interact-full:
  • 📈 Totaal aantal databases: 22
  • 📋 Totaal aantal tabellen: 244
  • 🔢 Totaal aantal kolommen: 2011
  • 📈 Gemiddeld aantal rijen per tabel: 1.121,19
  • 💾 Totale grootte: 272,00 MB (ongeveer)

📦 Dataset Details

Beschrijving van de dataset

  • Database: De volledige PostgreSQL-database kan worden gedownload van bird-interact-lite en bird-interact-full.
  • data: Elke gegevensinstance bevat de volgende hoofdonderdelen:
  • selected_database: De naam van de database.
  • query: De eenduidige gebruikersquery.
  • amb_user_query: De gebruikersquery met geïnjecteerde ambiguïteiten.
  • user_query_ambiguity: De ambiguïteiten die in de gebruikersquery zijn geïnjecteerd.
  • non_critical_ambiguity: De niet-kritische ambiguïteiten zoals volgorde, limiet, enz.
  • knowledge_ambiguity: De ambiguïteiten die ontstaan door gemaskeerde externe kennis.
  • sol_sql: De SQL-oplossing als grondwaarheid.
  • preprocess_sql: SQL-queries die uitgevoerd moeten worden vóór de oplossing of voorspelling.
  • clean_up_sql: SQL-queries die na de testgevallen worden uitgevoerd om wijzigingen in de database terug te draaien.
  • test_cases: Een reeks testgevallen om de voorspelde gecorrigeerde SQL te valideren.
  • follow_up: De gelabelde vervolgvragen.
  • external_knowledge: De externe kennis die bij de specifieke taak hoort.
  • evaluatie: De evaluatiecode is beschikbaar in de ./evaluation directory.
  • Samengesteld door: BIRD Team & Google Cloud
  • Licentie: cc-by-sa-4.0
  • HuggingFace Dataset Card: bird-interact-lite
en bird-interact-full

Gebruik van de dataset

Om datalekken door automatisch crawlen te voorkomen, nemen we geen GT-oplossing-sql’s en testgevallen samen met de data op. stuur een e-mail naar bird.bench25@gmail.com met het label [bird-interact-lite GT&Test Cases] of [bird-interact-full GT&Test Cases] in de titel voor de ground truth en testgevallen voor de bird-interact-lite of bird-interact-full dataset, welke automatisch worden verzonden.

Combineer de openbare data met de ground truth en testgevallen

Gebruik vervolgens het volgende script om de openbare data te combineren met de ground truth en testgevallen:

Neem de volledige versie als voorbeeld: (1) Voer uit:

bash 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 # bird_interact_full_gt_kg_testcases_08022.jsonl is the data of ground-truth fields, which is obtained by emailing us.
Dit zal een nieuw bestand aanmaken op /path/to/bird_interact_data.jsonl met de gecombineerde gegevens.

(2) Vervang vervolgens de oorspronkelijke openbare gegevens door de gecombineerde gegevens:

bash cp /path/to/bird_interact_data.jsonl /path/to/bird-interact-full/bird_interact_data.jsonl

Hetzelfde geldt voor de andere versies: bird-interact-lite, mini versie, enz. Stel gewoon de juiste paden in voor de publieke data en de ground truth en testcases, en vervang vervolgens de publieke data door de gecombineerde data.