DataPilot · Tiny Aya SQL (LoRA sft-extra)

LoRA-адаптер к CohereLabs/tiny-aya-global (3,35 млрд параметров). Обучен вести агентный цикл по базе PostgreSQL: list_tables → describe_table → execute_sql → finish. Проект для трека 3 Lexsi. Код и воспроизведение: https://github.com/prprprmk12/datapilot-ai

Лицензия и условия. Адаптер производный от Tiny Aya Global, поэтому действуют условия базовой модели: CC BY-NC 4.0 (только некоммерческое использование) и Acceptable Use Policy Cohere Labs. Для загрузки базовой модели нужно принять условия на её странице.

Как использовать

Адаптер надо подключить к базовой модели (PEFT) или слить с ней. Для vLLM мы сливаем веса (scripts/merge_adapter.py) и запускаем OpenAI-совместимый сервер, к которому обращается приложение DataPilot (MODEL_PROVIDER=model_api, MODEL_SCHEMA_STYLE=json_schema).

from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
base = AutoModelForCausalLM.from_pretrained("CohereLabs/tiny-aya-global", dtype="float16", device_map="auto")
model = PeftModel.from_pretrained(base, "HF_USER/datapilot-tiny-aya-sql-sft-extra")
tok = AutoTokenizer.from_pretrained("CohereLabs/tiny-aya-global")

Формат запроса и ответов (JSON-действия) задан в datapilot/integrations/protocol.py репозитория; без него модель не получит правильный промпт.

Обучение

Параметр Значение
Метод SFT, LoRA (TRL + PEFT), потери только по ответу
LoRA r=16, alpha=32, dropout=0, все линейные слои
Эпохи / lr 2 / 1e-4, batch 1 × accumulation 8, seed 42
Точность / длина float16, max_length 2048
Данные 69 train-задач v1 + 51 дополнительная train-задача (12 семейств), траектории строятся реальными инструментами
Железо Kaggle, T4

Данные и отчёты: https://huggingface.co/datasets/HF_USER/datapilot-ecommerce-sql

Результаты

Тест: 18 задач из 3 семейств, не входящих в обучение. Критерий: результат SQL агента равен результату эталонного запроса (значения и имена столбцов). Один прогон.

Вариант Решено полностью Запусков с ошибкой SQL
Базовая модель 0/18 12/18
SFT на исходных данных (v1) 2/18 14/18
SFT v1 + доп. задачи (этот адаптер) 12/18 6/18
+ повтор SQL после ошибки ×3 (настройка приложения, не адаптер) 13/18 0/18

По семействам: revenue-by-country 6/6, payment-status-counts 6/6, paid-profit 0/6 (с повтором 1/6, но это совпадение, см. ниже).

Ограничения

  • Малая оценка. 18 задач, три семейства, один прогон, нет доверительных интервалов. Результат не доказывает обобщающую способность.
  • Тест не совсем чистый. Дополнительные обучающие семейства придуманы после просмотра ошибок на тесте. Тестовые семейства в обучение не копировались.
  • Известная ошибка. В paid-profit модель считает прибыль по ценам каталога (products.price, products.cost), а не по ценам позиции заказа (order_items.unit_price, unit_cost). Единственный «успех» с повтором объясняется LIMIT 1, где обе формулы дают один ответ.
  • Повтор SQL убирает явные ошибки, но не неверные значения, поэтому ошибки становятся тихими.
  • Текст итогового ответа не проверялся. Модель обучена писать «Результат запроса: …» и в демо один раз указала пустой результат при трёх реальных строках. Правильность проверена по строкам SQL, а не по тексту.
  • Безопасность (отказ на изменяющие запросы) обеспечивает защитный слой приложения, а не обучение.
  • Одна учебная схема интернет-магазина (5 таблиц), русскоязычные вопросы. На других схемах качество не измерялось.
  • Только SFT. GRPO с наградой AgentTune не выполнено.

Не предназначено для

Работы с реальными или конфиденциальными данными без собственной проверки; коммерческого использования (лицензия базовой модели).

Downloads last month
-
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Ilirt/datapilot-tiny-aya-sql-sft-extra

Adapter
(98)
this model