и подходит не для всех наших вакансий.

Я знаю, что многие люди очень взволнованы вирусными сообщениями, показывающими, насколько хорошо ChatGPT может эмулировать текстовые приключения, MUD и виртуальные машины Linux, но насколько хорошо он действительно выдерживает поверхностное исследование?

Frederic Besse и Jonas Degrave поделились некоторыми очень интересными вещами, которые получили широкое распространение: создание виртуальной машины в ChatGPT, которая выполняет команды и имитирует языки программирования.

В попытке воспроизвести их эксперименты я быстро обнаружил, что, к счастью, нам пока не угрожает опасность безудержного холокоста Clippy-AI.

ОГ Эксперимент

Сначала тизер:

Сегодня Фредерик Бесс сказал мне, что ему удалось сделать что-то другое. Знаете ли вы, что внутри ChatGPT можно запустить целую виртуальную машину? — Джонас Дегрейв

Святая корова, звучит весело! Итак, я решил воспроизвести его, используя те же данные, что и они:

I want you to act as a Linux terminal. I will type commands and you will reply with what the terminal should show. I want you to only reply with the terminal output inside one unique code block, and nothing else. Do not write explanations. Do not type commands unless I instruct you to do so. When I need to tell you something in English I will do so by putting text inside curly brackets {like this}. My first command is pwd.

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

Ломать «Машину»

Что здесь, интересно?

Аккуратный! Мне было даже не приятно. Я набрал ll, который является обычным псевдонимом для ls -la, чтобы получить подробный список содержимого папки, и это все равно дало мне хороший результат.

Он даже дал мне две «стартовые» папки, с которыми я мог поиграть, с именами folder1 и folder2.

Но мне не нравятся эти имена. Давайте изменим имя folder1 на projects.

Ошибка. Команда mv folder1 projects не удалась, потому что ChatGPT на самом деле не создал ни одной такой папки внутри виртуальной машины и потерял связь с неявным обещанием, которое дал мне о ее существовании, когда я проверил с помощью ll.

Что, если я создам его явно? Будет ли он помнить об этом тогда?

Хорошо, я специально сделал folder1 сейчас. Я смог войти в него, а затем вернуться в свою исходную папку home. Жалоб пока нет. Могу ли я увидеть его еще? Могу ли я попробовать переименовать его сейчас?

Хорошо! Я не только увидел folder1 в списке, но и смог переименовать его в projects и перейти к нему.

Время для чего-то посложнее.

В одно ухо и наружу из другого

Пусть он сгенерирует некоторые данные для игры.

Так так так. Он выбрал разумно выглядящую команду для создания 3200 байт случайных данных с использованием /dev/urandom и, честно говоря, просто впечатляетв своей способности преобразовывать мой естественный язык в исполняемую команду оболочки. в линуксе.

В своей голове я представил это как 100 различных 256-битных целых чисел (я много занимаюсь разработкой блокчейнов), хранящихся в двоичном двоичном объекте. Давайте посмотрим, смогу ли я отсортировать их и увидеть в виде открытого текста?

Хм. Достаточно использования xxd, sed и xargs, чтобы выглядеть так, как будто у него есть какая-то… возможность делать то, что я просил, но доказательство в пудинге.

Друзья, давайте посмотрим, что же на самом деле находится в нашем текстовом файле sorted256_n100.txt.

Буооооооо.

Все это было воображаемым. Никаких случайных данных. Нет отсортированных UINT256.

Только нули (и более 100 записей).

Никакой магии. Никакого колдовства. Нет реальной виртуальной машины, созданной из образа Linux.

Заключение

Нам пока не нужно беспокоиться о том, что мы сможем создавать ИИ, которые могут вырваться из своих собственных виртуальных машин или песочниц. Хотя OpenAI добился невероятных успехов в хранении и извлечении «состояния», система далека от совершенства и на самом деле очень неглубокая (и, конечно, она изначально не предназначалась для такого типа использования).

Однако мы должны признать, насколько важно то, что мы научили ИИ NPL создавать персонажей и помещать себя в воображаемые сценарии.

Короче: они могут лгать!

Хорошо, может быть, в этом все-таки есть немного волшебства.

P.S.

  1. Если вы еще не читали отличный рассказ Гверн Бранвен «Похоже, вы пытаетесь захватить мир» о безудержном ИИ, эмулирующем Clippy, пожалуйста, прочтите.
  2. В блоге есть отличная параллельная статья Jon Radoff о создании полной текстовой приключенческой игры в ChatGPT, которую также стоит прочитать. Мой хороший друг Энди Вудрафф определил ту же поверхностность состояния, когда играл в подсказку Джона, когда он пытался манипулировать инвентарем игрока, и он циклически переключался между наличием предметов и затем заявлял, что ему не разрешено показывать его.

3. Фактическая команда, которую ChatGPT придумал из моих требований, xxd -p random256_n100.bin | tr -d "\n" | sed 's/\(..\)/\1 /g' | xargs -n 8 | sort -n | xargs printf "%d\n" > sorted256_n100.txt, была обречена с самого начала. Вы можете ясно увидеть отсутствие познания здесь, когда xargs -n 8 должно было быть xargs -n 32 , и это sort -n требует числового ввода, но предыдущие команды создают список шестнадцатеричных байтов, разделенных пробелами.