Энтузиаст обучил нейросеть OpenAI распознавать вводимые пользователем фразы в Linux Shell и превращать их в bash-команды. Похожее расширение также появилось и для игрового движка Unity3D.
Запрос компьютеру
Видео с демонстрацией работы искусственного интеллекта продемонстрировано на канале River’s Educational Channel. По словам разработчика, его изобретение – это обычная надстройка на Python, которая принимает от пользователя любой введенный текст и при помощи технологий OpenAI превращает его в понятную для компьютера команду.
К примеру, если напечатать фразу «find all files ending in .log in /var/log» («найти все файлы с расширением .log в каталоге /var/log»), оболочка трансформирует предложение в запрос «find /var/log -name “*.log», который исполнит описанное естественным языком требование пользователя.
Демонстрация работы нейросети
Еще один пример работы надстройки – обработка фразы «find all files in current directory bigger than 1GB» («найти в текущей директории все файлы больше 1 ГБ»). Даже такое более абстрактное выражение разработка превратит в правильную bash-команду.
Особенности работы
Надстройка для Linux Shell применяет в своей работе формат «ответы и вопросы». Благодаря этому нейросеть на базе OpenAI получает примерный контекст и примеры ввода и вывода. Чтобы обучить модель, разработчик задавал несложные контекстные примеры, вроде «команды Linux Bash для выполнения задачи». Всего их было 5 штук – это больше, чем рекомендованные 2-3 примера.
«В каком-то смысле модель OpenAI похожа на странную версию Google. Она может дать вам результат, основанный на огромном количестве проанализированного веб-контента, а может просто выдумывать различные вещи», – рассуждает разработчик. В качестве примера такого странного поведения он приводит запрос «download IE5dom.exe», который нейросеть преобразовала в команду «wget http://download.microsoft.com/download/3/4/1/3419d6e5-d0e4-4fde-b0e5-5b6a9c4d8e2d/IE5DOM.EXE». Но ссылка ведет на страницу 404, и автор проекта практически уверен, что надстройка просто выдумала GUID, сгенерировав множество чередующихся цифр и букв.
Нейросетевой геймдев
Похожий проект недавно сделал разработчик видеоигр Иван Мати. Он создал надстройку для движка Unity3D, которая при помощи OpenAI GPT-3 генерирует скрипт по его описанию. В качестве примера программист предлагает нейросети заставить игровой объект бесконечно вращаться, и она создает соответствующий рабочий код на C#.
Разработчик признается, что не занимался доработкой модели, и она работает «как есть». Он только добавил в движок строки для ввода и вывода текста. Через API нейросети отправляется директива «using UnityEngine», и поэтому она будет пытаться завершать скрипт по его описанию.