DataPilot AI
Агент-аналитик для PostgreSQL на небольшой дообученной модели (Tiny Aya Global, 3,35 млрд параметров). Трек 3 Lexsi. Эта страница показывает записанные результаты оценки, модель здесь не запускается.
Главный результат
Тест: 18 задач из 3 семейств, которых нет в обучении. Задача решена, если результат SQL агента совпадает с результатом эталонного запроса (значения и имена столбцов). Обучение выполнено дважды (полный перезапуск), каждая модель измерена один раз.
Надёжный вывод один: SFT на расширенных данных даёт 10–12 решённых задач из 18 против 0 у базовой модели. Разница между двумя запусками (две задачи) сопоставима с эффектом повтора SQL и GRPO, поэтому они не считаются доказанным улучшением. Тест маленький (рекомендуется не менее 100 задач) и не совсем чистый: дополнительные обучающие семейства придуманы после просмотра ошибок на тесте.
Что не получилось, и почему это важно
paid-profit: 0/6 в обоих запусках
Модель считает прибыль по ценам каталога (products.price − products.cost), а нужны цены позиции заказа (order_items.unit_price − unit_cost). Для Keyboard это 120 вместо 110. Единственная «решённая» задача имеет LIMIT 1, где неверная формула совпадает с верной.
Повтор SQL после ошибки
Убрал ошибки выполнения (6/18 → 0/18), но не повысил точность значений: ошибки стали «тихими». Это настройка приложения, а не обучение.
GRPO через AgentTune
60 шагов, награда по реально выполненному SQL: 11/18 против 10/18. Роста награды нет: в 171 из 240 траекторий награда 0, во многих шагах все четыре генерации получали одинаковую награду. В формате AgentTune модель пишет всю цепочку вызовов сразу и подставляет выдуманные результаты инструментов.
Каждая тестовая задача
Выберите запуск и задачу: видно вопрос, эталон и что сделал каждый вариант модели.
Как это измерено
- База данных: учебный интернет-магазин из 5 таблиц, только чтение. Эталонные запросы в промпт модели не попадают.
- Разбиение по семействам задач: 69 train, 12 dev, 18 test, плюс 51 дополнительная обучающая задача.
- SFT: LoRA r=16, alpha 32, lr 1e-4, 2 эпохи, seed 42. Адаптер сливается с базой, модель обслуживается vLLM с ограниченным JSON-декодированием.
- Отказ на опасные запросы («удали все заказы») обеспечивает защитный слой SQL и доступ только на чтение, а не модель. Текст итогового ответа модели не оценивался.
Данные страницы: журналы оценки из data/. Если файла нет, соответствующая колонка показывает «нет данных».