Кейсы применения ChatGPT для задач программиста

На днях вышла модель ChatGPT от OpenAI, которая уже наделала много шуму.

ChatGPT — это большая языковая модель (LLM), обученная OpenAI, которая способна генерировать правдоподобный текст в ответ на ввод пользователя. Она умеет держать контекст и выдает результаты генерации лучше, чем прошлые модели. Основной язык английский, но можно использовать и другие языки.

Подробнее о работе модели можно почитать в пресс-релизе. Сюда прикреплю иллюстрацию схемы обучения.

1b36ce900ac7f201fb5c4f1d70bfcc65.png

В этой статье я приведу примеры использования ChatGPT. Нарочно не буду выкладывать треды с философскими запросами или тем, как модель ошибается на логических задачах. Очевидно, что ChatGPT никого не заменит, но станет инструментом для быстрого поиска. Вместо того, чтобы искать код на StackOverflow или гуглить, можно написать запрос и выполнить задачу быстрее. Жду когда, прокачают copilot или сделают плагин с ChatGPT в крупных IDE. Вот, кстати, любительский на VSCode.

Если вдруг захотите попробовать модель сами, то вот ссылка. Нужно зарегистрировать аккаунт и указать мобильный номер для sms-активации. Если нет зарубежной симки или не хотите оставлять номер, загуглите сервисы с временными номерами для регистраций. Цена вопроса взять индийский номер для активации: ~10 рублей.

Общие советов по промтам (текстовый запрос, который вы пишете).

  • Если модель вдруг отвечает заглушкой, то это необязательно потому что она не знает ответ. Можете попробовать скорректировать сообщение. Обычно помогает что-то вроде «I want you to act like {___}.»

  • Если ответ слишком длинный, то он может упереться в лимит в 1000 символов. Однако, вы можете написать «continue the output from {___}» и она продолжит.

А теперь, давайте перейдем к самим способам использования. Основные я взял из популярных тредов на твиттере и блогов. Еще добавил пару примеров от себя.

Использовать вместо поисковика

Можно спросить все, начиная от рецепта бургеров, заканчивая вопросами про LaTeX.

096f46c8be09f7acf2fafa0835d0cf0f.png

Имитация работы виртуальной машины

Советую прочитать статью Engraved, в комментариях там еще больше кейсов. У ребят из комментариев даже получилось скомпилировать простой код на Си. В качестве иллюстрации к статье приведу имитацию запуска докер контейнера.

2ce22b81ddff6af2c6a254fc9f8d4de3.png

Создавать промты для Stable Diffusion

Одна из проблем при работе с моделями вроде Stable Diffusion это дополнение своего промта, чтобы получить желаемый результат. Вот примеры с генерацией изображений на базе дополненных промтов от ChatGPT. Изображение девушки и генерация интерьеров.

63752a6a71756e0b3c228281edd9455e.png

Написать небольшое приложение

В качестве примера решили сделать суммаризатор для эссе на базе GPT-3. Модель использует минимальный код и api разных сервисов.

472c6ffe8c6606ec9c4485b3483e01f8.png

Решение и объяснение алгоритмических задач

Этот промт я забил сам. Понравилось, что модель в начале объясняет суть задачи, а потом приводит код с комментариями.

44093af13c2985c6515f1fd3a1b4ebd7.png

Решение домашек

У@yorko есть классная статья про то, как ChatGPT решает задание на «coreference resolution» с kaggle на уровне нефайнтюненного BERT. А с домашкой с mlcourse.ai справилась на 7/10.

3eaa6ff9dc1e12cfe3c21db6b9c429d5.png

Написание электронных писем

В качестве бонуса прикреплю скриншот с примером электронного письма из превью статьи. Оценил, что стиль письма вполне сносный, особенно, если работаете в одной из корпораций.

17db257e79a6bd4fb2896a6c6c43651d.png

Пишите в комментарии, если знаете какие еще есть интересные и полезные примеры применения ChatGPT. Если хотите узнать ответ на какой-то запрос, но лень регистрировать аккаунт на OpenAI, пишите сюда — спрошу за вас и выложу в комменты ответ модели.

P.S.

Если понравилась эта статья — подписывайтесь на мой канал в телеграме о машинном обучение и карьере. Из последних постов: материалы для подготовки к алгоритмам и собеседованию по Machine Learning System Design.

© Habrahabr.ru