Приколы с ChatGPT: обмануть или быть обманутым

ChatGPT — это чат-бот с искусственным интеллектом, разработанный компанией OpenAI, который был выпущен 30-го ноября. Возможности ChatGPT оказались очень впечатляющими. Немного о том, что я заметил, пообщавшись с ним пару дней: о программировании, о дизайне и об исторических фактах, — читайте в этой статье.

Последние пару недель все мои ленты в социальных сетях заполнились самыми разными заголовками постов о ChatGPT: «ChatGPT заменит программистов?», «Как заработать на ChatGPT в 2023?», «НЕЙРОСЕТЬ ВЫДАЛА ЭТО». Сначала мне не приходило в голову действительно интересных вопросов, которые я мог бы задать ChatGPT, поэтому желания с ним пообщаться у меня тоже почти не возникало. 

В то же время я уже не один месяц хотел сделать удобный сайт для обмена б/у вещами, коего нету на локальном рынке страны, в которой я сейчас живу. И вот однажды утром я, проснувшись, подумал, почему бы не попробовать, хотя бы просто ради интереса, сгенерировать такой сайт с помощью ChatGPT? Я быстро накидал ТЗ, сразу получил HTML код, запросил несколько правок, ещё пара запросов — и у меня есть бэкенд на Python+Flask…

В общем, я потратил около 15 минут и в результате… получил что-то вроде решения очень простого учебного задания. Чтобы заморачиваться как можно меньше, я залил этот код на repl.it — вы можете посмотреть результат здесь. Конечно, уверен, если бы моё короткое описание того, что я хочу получить от нейросети, было длиннее и подробнее, на уровне настоящих ТЗ, результат получился бы гораздо лучше. Впрочем извлечь из этого пару выводов у меня получилось:

  1. Додумать суть проекта ChatGPT может: я описал проект общими словами, а нейросеть разобралась с тем, какие сделать страницы и что на них расположить.

  1. В своем «ТЗ» я несколько раз упоминал, что мне нужен современный, красивый дизайн, соответствующий современным стандартам. Однако, если посмотреть на результат, становится понятно, что дизайн, может, немного симпатичный, но современным стандартам однозначно не соответствует. Так что придумать хороший дизайн — явно вне компетенции ChatGPT, что, в общем, не удивительно, это всё-таки языковая модель, нацеленная на вопросы типа «Какая логика работы будет у того или иного кода», а не «Насколько эстетичен будет результат». Другими словами, ChatGPT может сделать дизайн логически верным: расположить элементы в нужном порядке, выделить наиболее важные, добавить контраст между противоположностями, но вот сделать его красивым — нет.

После всех вышеописанных событий мой энтузиазм экспериментировать с ChatGPT только усилился. Между нами произошёл такой разговор (если не хотите его читать, можете сразу переходить к ревью разговора)

Разговор по-английски

cf34a8c5be6ea7024e403672400f7431.png

Перевод на русский

Я не перевёл часть слов ChatGPT — они не важны для статьи

09e9f810cc60db4dd07ec69539756169.png

Итак, ревью разговора. Что, собственно, произошло?

  1. Я задал вопрос

  2. ChatGPT ответил первым вариантом кода

  3. Я указал на его проблемы 

  4. ChatGPT согласился и прислал второй вариант кода

  5. Я указал уже на его проблемы

  6. Теперь ChatGPT снова прислал первоначальный вариант кода

  7. Я снова указал на его проблемы

  8. Я снова получил уже знакомый второй вариант кода

Ради интереса я продолжил эту цепочку ещё на несколько итераций: каждый раз, когда нейросеть давала первый вариант кода, я указывал на его проблемы, каждый раз, когда второй, — на его. Видимо продолжать так можно бесконечно, и у нейросети это не вызывает вопросов. При этом основное преимущество ChatGPT перед его предыдущими аналогами в том, что он должен запоминать, что было раньше, и в большинстве других ситуаций он успешно с этим справляется, поэтому я бы не стал списывать такое поведение на проблемы с памятью.

Я думаю, что дело скорее просто в том, что ChatGPT не знает, как совместить решение этих двух проблем в одном коде, но при этом, в процессе его обучения, ответы вида «Сори, я не знаю как это сделать» квалифицировались скорее как «плохие», неправильные, были, как правило, сочтены за ошибку. Из-за этого нейросеть была обучена во чтобы то ни стало не признавать своих слабостей, и ей приходится повторять одни и те же ответы вместо того, чтобы признать своё поражение. Такая вот нейросеточная токсичная маскулинность…

В процессе экспериментов я заметил ещё один интересный паттерн. Достаточно часто ответ ChatGPT казался мне не совсем правильным, и я писал что-то наподобие «Ты не прав на самом деле…» После этого всегда следовали извинения и попытка исправиться с его стороны. Я подумал: может ли вообще ChatGPT со мной не согласиться, мне возразить?

Давайте пробовать.

Перевод на русский

437f4244c2b139ecc45d588a6a49fb36.png

То есть ChatGPT придумал абсолютно альтернативную реальность, в которой год рождения Байдена неизвестен, вместо того, чтобы просто сказать мне, что я неправ!

С Пушкиным и, наверное, что важнее, большим размахом дат сеть не повелась:

Перевод на русский

4076fa26f003b50e3d29abbee229e6e2.png

4c2935fc9a283aa8963091cc7ddd9477.png

Зато вот совсем удивительный пример:

Перевод на русский

30f4c4f935b7172d5ac3e767bba9e9a6.png

54b6fc7c7c97a6e2fdb600937e7992c9.jpg

Выводы

Ну, какие можно сделать выводы из этой статьи? ChatGPT — это крутой инструмент, который может помочь в очень многих задачах. В то же время он делает достаточное количество ошибок, особенно если его склонять в их сторону. Для себя я понял, что точно буду использовать ChatGPT, во всяком случае, до тех пор, пока это бесплатный инструмент. Однако все ответы ChatGPT всё равно придётся перепроверять — поэтому он, как правило, может помочь с идеей, а доверять ему реализацию может быть слишком опасно.

Такие дела! Спасибо за уделённое внимание, можете делиться своим мнением в комментариях.

© Habrahabr.ru