Датасет для задачи text2sql, а также код для дообучения LLM. Объем датасета - 757 записей. Запросы относятся к 4 доменам (различным базам данных): автобаза, библиотека, выставка собак, компьютерная игра Террария, referencing LearnSQL: https://github.com/TonikX/SQLlearn_training_databases/tree/master.
Столбцы датасета: '№п.п' (номер запроса), 'Текст запроса' (запрос на русском языке), 'Ответ' (запрос на языке SQL), 'Контекст' (структура базы данных), 'Тема' (1-15), 'Сложность' (1-5), '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', где числа означают отношение запроса к какой-либо теме. Как итоговая тема выбирается максимальная из отмеченных. Темы:
- Простой оператор SELECT
- Использование предикатов (сравнения). Упорядочение данных.
- Запросы с использованием нескольких таблиц
- Использование предикатов OR, AND, NOT
- Использование предикатов BETWEEN, LIKE
- Агрегатные функции
- Группирующие запросы
- Группирующие запросы с условием
- Подзапросы
- Предикаты IN, SOME (ANY), ALL
- Использование соединения INNER JOIN
- Использование соединений LEFT JOIN и RIGHT JOIN
- Использование объединения запросов UNION
- Использование предиката EXISTS
- Использование операторов IF и CASE
За основу была взята модель: https://huggingface.co/ai-forever/FRED-T5-large
Количество параметров: 820М
Количество скрытых слоёв: 24
Модель дообучена с помощью Trainer API
Дообученную модель можно найти на Hugging Face: https://huggingface.co/yuraz28/FRED-T5-know_sql-test.
- Говоров Антон Игоревич - автор идеи и создатель ресурса LearnSQL
- Никифорова Анна - составляла и валидировала запросы, вошедшие в датасет
- Зарецкий Юрий - занимался дообучением языковой модели