/ Модель

Характеристики

Контекст
32 768 токенов
Параметры
3,1 млрд
Размер весов
6,8 ГБ
Лицензия
Apache 2.0
Архитектура
qwen2 · dense
Базовая модель
Qwen2.5-3B-Instruct
Опубликована
11 авг 2026

qwen2.5-3b-nl2sql-spider-grpo

Генерация текстаТекст → текст3 профессии

Экспериментальная модель на базе Qwen2.5-3B-Instruct преобразует вопросы на английском языке в SQL-запросы к SQLite, используя схему базы данных и обратную связь от выполнения.

22скачиваний за 30 дней0лайковвеса обновлены11 авг 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Текст» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

aniruddhr04/qwen2.5-3b-nl2sql-spider-grpo — экспериментальная модель на основе Qwen2.5-3B-Instruct, дообученная разработчиком с помощью GRPO в среде, где она выполняла SQL-запросы к базам SQLite и получала вознаграждение за совпадение результатов с эталонными запросами. Модель предназначена для преобразования вопросов на естественном языке в SQL с использованием схемы базы данных и инструмента run_sql.

Модель содержит 3,1 млрд параметров, использует плотную архитектуру Qwen2 и контекст до 32 768 токенов. В описанном тесте Spider dev точность выполнения запросов по официальной метрике составила 0,644; лучше она справлялась с простыми вопросами, чем с задачами повышенной сложности и многотабличным рассуждением. Для воспроизведения результатов требуется повторять цикл вызова инструмента, предусмотренный при обучении.

Это исследовательский артефакт для изучения обучения NL2SQL с обратной связью от выполнения запросов; он не позиционируется как передовая модель для Spider. Apache-2.0 допускает широкое использование и распространение в соответствии с условиями лицензии.

Сценарии применения

  • преобразование вопросов на английском языке в SQL для SQLite
  • генерация SQL по DDL-схеме базы данных
  • поиск ответов на вопросы о данных в реляционной базе через SQL
  • эксперименты с обучением NL2SQL методом GRPO
  • оценка влияния выполнения запросов на качество генерации SQL

Ограничения

На сложных многотабличных запросах качество снижается; модель может выполнить запрос и получить результаты, но всё равно дать неверный ответ. Оценка проведена на Spider dev при одном seed и жадной генерации; для воспроизведения заявленных результатов необходим цикл взаимодействия с run_sql.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Qwen2.5-3B-Instruct — NL2SQL Spider GRPO (step 100)

Qwen/Qwen2.5-3B-Instruct trained with GRPO in a tool-calling environment where the model issues real run_sql queries against live SQLite databases and is rewarded on whether its final query returns the same rows as the gold query.

Trained with verl 0.7.1 through Oumi's DatabaseExecutableEnvironment.

Results — Spider dev (1034 rows, greedy, single sample)

metricbasethis modelchange
official test-suite execution accuracy0.3360.644×1.92
official exact-set-match0.1950.397×2.04
legacy evaluation.py execution0.2640.583×2.21

Quote the test-suite number (0.644). It is the current official Spider metric (Zhong, Yu & Klein, EMNLP 2020, taoyds/test-suite-sql-eval). The legacy evaluation.py under-reports this model by 6.1 points because 242 of its 1034 predictions cannot be parsed by Spider's process_sql.py (subqueries, trailing ;, AS aliases), and an unparseable prediction scores 0 regardless of the rows it returns.

By difficulty (test-suite)

easy (248)medium (446)hard (174)extra (166)all
this model0.8630.6680.5920.3070.644
base0.4310.3700.3220.1140.336

Multi-table reasoning is the bottleneck: easy 0.86 → extra-hard 0.31.

Intended use

A research artifact demonstrating that execution feedback works as an RL signal for text-to-SQL. It is not a state-of-the-art Spider model — published 3B systems reach 79–84% using constrained decoding, schema ranking, full SFT, and multi-candidate inference, none of which are used here. The result is 100 RL steps on a generic (non-code) instruct model.

How it was trained

algorithmGRPO (adv_estimator: grpo, norm_adv_by_std_in_grpo: true), KL loss disabled
hardware8×H100, single node, ~80 s/step, ~2h30m total
batch64 prompts × n=8 = 512 trajectories/step
completion budget2048 tokens shared across all turns
lr1e-6 constant, AdamW
samplingtrain temp 1.0; eval greedy (t=0, n=1)
rewardbinary result-set match against the gold query
train data6,997 of 7,000 train_spider.json rows (3 dropped — their gold SQL does not execute)
eval data1,034 dev.json rows, none dropped

The reward is outcome-only: it looks at the final SQL and nothing else — not turn count, not whether a tool was called, not style.

Prompt format

The model expects a system message containing the full DDL of every table in the target database, a user question, and hermes-style tool calling with a single run_sql(query) tool. It answers with a fenced ```sql block.

[system] You are a SQL assistant for a SQLite database with this schema:
         CREATE TABLE singer (...)
         You may call the tool run_sql(query) to execute a SQL query and inspect
         results. When you are done, give your final answer as a single SQL query
         inside a ```sql code block.
[user]   How many singers do we have?
[assistant] <tool_call>{"name":"run_sql","arguments":{"query":"SELECT COUNT(*) FROM singer;"}}</tool_call>
[tool]      {"columns": ["COUNT(*)"], "rows": [[6]]}
[assistant] ```sql
            SELECT COUNT(*) FROM singer;
            ```

To reproduce the numbers above you must replay the training tool loop. One-shot prompting measures a different system and understates badly. Tool responses must be truncated to 256 characters, middle-elided, exactly as verl does during training:

half = max_length // 2
text = text[:half] + "...(truncated)..." + text[-half:]

Behavioral profile

basethis model
valid executable SQL—94%
answers with a query it actually ran43.9%85.4%
run_sql calls per row1.791.02
predictions unparseable by Spider's parser62.6%24.0%

Training made tool use precise rather than eliminating it, and made SQL markedly more standard despite the reward never mentioning style. The dominant remaining failure is 197 rows (19.1%) that run a query, see real rows, and still answer wrong — schema grounding on multi-table questions, not tool use and not syntax.

Limitations

  • Single seed, no error bars, one run per configuration.
  • Evaluated on Spider dev. The held-out test split was never touched.
  • Greedy single-sample only; no self-consistency or multi-candidate reranking.
  • A later checkpoint (step 250) scores higher on the internal metric (0.752 vs 0.727) but was never run through official eval. This checkpoint (step 100) is the one every number above refers to.

Citation

Environment and reward implementation: oumi-ai/oumi PRs #2560 (verl tool adapter), #2561 (NL2SQL env + reward), #2562 (Spider demo).

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм

Можно запустить

Подбираем GPU…

Класс архитектуры
Qwen2ForCausalLM
Ревизия весов
add9d78

0 моделей