/ Модель

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

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

qwen2.5-coder-3b-instruct-spider-sft-grpo

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

Дообученная Qwen2.5-Coder-3B-Instruct преобразует текстовые вопросы к базам данных в исполняемые SQL-запросы.

108скачиваний за 30 дней1лайквеса обновлены24 авг 2026

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Это дообученная модель Qwen2.5-Coder-3B-Instruct, созданная для преобразования запросов на естественном языке в SQL. Разработчики применили двухэтапное обучение на наборе Spider: supervised fine-tuning с последующей оптимизацией GRPO по вознаграждению за совпадение результатов выполнения SQL-запросов на базах SQLite. Модель построена на плотной архитектуре Qwen2 и содержит 3,1 млрд параметров; она принимает текст и генерирует текст. Контекст — до 32 768 токенов.

Модель предназначена для генерации запросов SQL по вопросам к базам данных, в частности в сценариях Text-to-SQL на данных, похожих на Spider. В README сообщается о точности выполнения 33,4% и exact match 31,7% на dev-наборе Spider после GRPO; это результаты конкретной оценки, а не гарантия качества на других схемах и базах данных. Модель поддерживает английский язык и распространяется под лицензией Apache-2.0.

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

  • перевод вопросов на естественном языке в SQL
  • генерация SQL-запросов для баз SQLite
  • создание запросов к реляционной базе по её схеме
  • прототипирование интерфейса вопросов к данным

Ограничения

На dev-наборе Spider после GRPO указаны 33,4% точности выполнения и 31,7% exact match, поэтому модель может ошибаться даже на этой задаче. Качество на других схемах и базах данных в README не приведено.

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

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

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

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

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

Открыть на Hugging Face

SQL RL Pipeline: Qwen2.5-Coder-3B-Instruct (SFT + GRPO)

Hugging Face Model GitHub Repository Dataset: Spider Training: Unsloth

An end-to-end Reinforcement Learning fine-tuning pipeline for Text-to-SQL generation. We trained Qwen2.5-Coder-3B-Instruct using a two-stage approach on the Spider dataset, achieving near-perfect SQL execution rewards through execution-guided RL.


Performance Benchmarks

By applying Group Relative Policy Optimization (GRPO) with a custom execution-based reward function (evaluating SQL execution results against real SQLite databases), we pushed well beyond what standard supervised fine-tuning achieves.

Execution Accuracy by Stage (Spider Dev Set)

Execution Accuracy by Stage

Training StageExecution Accuracy (EX)Exact Match (EM)
Base Model (Zero-Shot)0.9%5.1%
After SFT (Supervised)32.8%31.5%
After GRPO (RL)33.4%31.7%

GRPO Training: Reward Progression

GRPO Reward Progression

GRPO MetricValue
Training Steps300
Final Mean Reward0.8375 / 1.0
Peak Reward Observed0.975 / 1.0
Final Train Loss0.001089

The reward function scores 1.0 when the model's generated SQL produces an exact execution result match against the gold query on the real Spider SQLite databases, and 0 otherwise.


Model Details

PropertyValue
Base ModelQwen/Qwen2.5-Coder-3B-Instruct
DatasetSpider (7,000 train / 1,034 dev)
SFT FrameworkUnsloth + LoRA
RL FrameworkTRL GRPO + vLLM rollouts
SFT Steps2,625 (3 epochs), final loss: 0.214
GRPO Steps300
LoRA Rank16
MergeFull LoRA-merged safetensors (no adapter needed at inference)

Pipeline Architecture

Spider Dataset
     |
     v
[1] make_dataset.py        -- Format prompts + gold SQL for SFT and GRPO
[2] sft_train.py           -- Unsloth SFT with LoRA (3 epochs, 2625 steps)
     |
     v
checkpoints/sft_merged     -- Full merged SFT model
     |
     v
[3] grpo_train.py          -- TRL GRPO with execution-based reward (300 steps)
     |
     v
checkpoints/grpo_final_lora
     |
     v
[4] merge_and_upload.py    -- Merge GRPO LoRA onto SFT base, push to HuggingFace
     |
     v
riit3sh/qwen2.5-coder-3b-instruct-spider-sft-grpo  (HuggingFace)

Reward Function

The GRPO reward is execution-guided: each generated SQL query is executed against the actual Spider SQLite database. The reward is:

  • 1.0 — execution result exactly matches the gold query result
  • 0.0 — wrong result, SQL error, or timeout

No partial credit is given, forcing the model to produce fully correct, executable SQL.


Quickstart

from transformers import AutoTokenizer, AutoModelForCausalLM
import torch

model_id = "riit3sh/qwen2.5-coder-3b-instruct-spider-sft-grpo"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, torch_dtype=torch.float16, device_map="auto")

schema = "students | id, name, age, gpa | courses | id, name, credits"
question = "What is the average GPA of all students?"

prompt = f"""You are an expert SQL assistant. Given a database schema and a question, write a correct SQL query.

Schema: {schema}
Question: {question}
SQL:"""

inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
with torch.no_grad():
    outputs = model.generate(**inputs, max_new_tokens=128, temperature=0.1, do_sample=True)

sql = tokenizer.decode(outputs[0][inputs.input_ids.shape[1]:], skip_special_tokens=True).strip()
print(sql)

Serving with FastAPI + vLLM

pip install vllm fastapi uvicorn pydantic
python app.py
curl -X POST http://localhost:8000/generate \
     -H "Content-Type: application/json" \
     -d '{"schema_str": "student | id | name | age", "question": "What is the average age of all students?"}'

Reproducing the Pipeline

git clone https://github.com/riit3sh/sql-rl-pipeline
cd sql-rl-pipeline
pip install -r requirements.txt

# Stage 1: SFT
python scripts/sft_train.py

# Stage 2: GRPO
python scripts/grpo_train.py

# Merge + Upload
python merge_and_upload.py

Built with Unsloth, TRL, and vLLM.

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей