Создайте Суперсигнал для преобразования естественного языка в SQL для OpenAI.
Как создать мощный инструмент для преобразования естественного языка в SQL с помощью OpenAI
Одним из вещей, которые претерпели больше всего изменений в последние месяцы, с момента расцвета ChatGPT, является появление масштабных моделей большого языка, способных научиться выполнять задачи всего лишь с двумя или тремя примерами. Мы будем использовать эту возможность, чтобы создать запрос, позволяющий моделям OpenAI генерировать команды SQL из естественного языка.
Эта статья является частью бесплатного курса о больших языковых моделях, доступного на GitHub.

В этой статье мы рассмотрим, как создать запрос, чтобы модели GPT от OpenAI могли выполнять задачи NL2SQL. А именно, переводить пользовательские языковые запросы в команды SQL, которые будут извлекать запрашиваемые данные.
Для этого мы начнем с работы из Огайо Университета: ‘Как проинструктировать LLM для работы с текстом-в-SQL: исследование в нулевом, однообластном и междуобластном настройках.‘. Мы изменим то, что уже видели во второй статье курса по большим языковым моделям.
Структура запроса.
Запрос будет состоять из четырех разделов:
- HuggingFace представляет TextEnvironments оркестратор между моделью машинного обучения и набором инструментов (функции Python), которые модель может вызывать для решения конкретных задач.
- Факты о матчах Бундеслиги Скорость ударов – Кто пускает самые сильные удары в Бундеслиге?
- Насколько прозрачны крупные языковые модели?
- Структура таблицы с примерами ее содержимого.
- Инструкции для направления модели на генерацию SQL.
- Корректные примеры SQL, известные как Few Shot Samples.
- Вопрос пользователя.
Запрос, который мы собираемся создать, является самым полным, включая несколько примеров с перекрестными ссылками между таблицами.
Не всегда необходимо предоставлять примеры SQL модели – если таблица проста и мы предоставили достаточно информации, модель сможет сгенерировать правильный SQL только на основе структуры базы данных.
Однако эти примеры также позволяют нам влиять на стиль и формат, в котором мы хотим получить SQL.
Структура таблиц:
create table employees( ID_Usr INT primary key, name VARCHAR); /*3 строки примера select * from employees limit 3; ID_Usr name 1344 George…