catterpiller

Пикабушник
Дата рождения: 10 октября 1986
поставил 7098 плюсов и 269 минусов
отредактировал 0 постов
проголосовал за 0 редактирований
Награды:
5 лет на Пикабу
9355 рейтинг 3 подписчика 57 подписок 12 постов 3 в горячем

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT

Дисклеймер:

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

Получился длинный пост. Если вы как и я не программист - пропускайте куски кода и читайте только комментарии Chat GPT к этому коду. Так же можно для интереса посмотреть комментарии в коде, начинающиеся с "#" там он описывает что выполняет каждая строчка этого кода.

Так же с chatgpt я имел дело впервые и запросы к нему могли быть не оптимальными.

Прелюдия

Итак, недавно попалась мне на глаза статейка, что ChatGPT спокойно прорешивает задачки по программированию с сайта leetcode, где выкладывают разного уровня сложности задачки для прогеров. Попалась и запала где то в закуток создания. А еще новость прошла, что недавно ЧатЖПТ версии 3,5 открыли всем желающим в пользование без регистраций и смс.

Сам я поигрываю порой в Battlefield 4 и люблю побегать в особый режим "Hardcore" на одной определенной карте "Operation Locker". Есть один сервер, где гоняют эту карту с этим режимом и присутствует достаточное количество игроков. Но на беду когда я захожу на страницу сервера, либо матч уже заканчивается либо идет другая карта. И вот подумалось мне: а как бы вот так сделать, чтобы мне приходило уведомление, мол карта ваша началась и народу - тьма. Заходите будьте любезны.

Вот тут и вспомнил я про волшебную коробчонку, что за любую задачу возьмется и размотает на раз-два. Стало мне интересно, а сможет ли обычный непрограммист по запросу получить рабочий продукт? Терять нам нечего, давай думаю поковыряю я его, авось и накодит мне что-нибудь!

К действию!

Для начала нужно было подключиться к чату и проверить что он действительно работает.

https://chat.openai.com - открылся (не без впн) и к моему удивлению начал мне отвечать без всяких регистраций.

Далее нужно было сформировать задачу. Начнем с основного - какие ключевые данные нам нужно получить? Есть страница, на которой мы видим данные сервера: https://battlelog.battlefield.com/bf4/servers/show/pc/3adab5... .

С этой страницы нам нужно получить данные о текущей карте и количестве игроков.

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Опа. Оказывается в этой свободной версии Чатик не может ни обращаться по сторонним адресам, ни открывать файлы. Поразмыслив пришел к решению, что нужно скормить ему текст веб страницы прямо в чат. Заходим на страницу сервера, жамкаем правой кнопкой мыши и выбираем - "Показать код страницы". Получаем нехилый кусок HTML кода:

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

И такого еще страниц на 10.

Копируем текст в чат. Получаем результат:

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Чатик подавился.

Лимит у него. Не переваривает длинный текст.

Начинаю вводить по кусочкам. Он начинает на основе каждого кусочка пытаться что то сообразить и долго писать мне про них. Пришлось приструнить:

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Ожидаемо я несколько раз скормил ему слишком крупный кусок кода и он опять выдавал ошибку о переполнении. И данную ошибку нельзя отменить. Чат зависает и нужно начинать все с начала!

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Когда в пятый раз запарываешь простую операцию по копированию кода.

В итоге я плюнул на огромный кусок кода на JavaScript, который не влезал целиком и решил оставить только HTML код, идущий до него. На удивление, этого хватило чатику чтобы сделать правильные выводы:

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Кажись нашел.

Далее я попросил его проверить остальные части кода и убедиться, что более нигде упоминание текущей карты не встречается. Он начал показывать мне куски кода, где могло быть это описание и заявлять что тут его тоже нет. В итоге выдал:

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Штош, круг подозреваемых сужен до единственного. Можно брать тепленьким.

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

А вот и код пошел!

Идем качаем питон, ставим. Для того чтобы записать код используем блокнот Notepad++.

Копируем код в блокнот, сохраняем в формате питоновского скрипта. Запускаем - шиш! Не установлены библиотеки для обращений к HTML страницам. Спрашиваем у Чатика как поставить библиотеки:

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Открываем командную строку Windows, вставляем туда строчку.

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Кажись поставилось.

Запускаем скрипт

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Все что выдает скрипт - надпись Operation Locker. Не смотря на то, какая карта сейчас на сервере. Очевидно, чатик забыл, что надо пойти по ссылке и узнать какая все таки карта сейчас запущена. Да и в тексте кода что-то никакой ссылки не видно. Ладно, попробуем починить:

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Уже интереснее.

Код ожидаемо не запустился потому что появилась новая библиотека requests, которую мы тоже устанавливаем с помощью PIP.

Запускаем еще раз:

C:\Users\Admin>python C:\Temp\scriptBF4_01.py

OPERATION METRO 2014

C:\Users\Admin>

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Ано живое.

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

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

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Сразу не отходя от кассы просим сделать один скрипт из двух:

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Запущаем. Получаем ж*пу с ручкой:

C:\Users\Admin>python C:\Temp\scriptBF4_01.py

Traceback (most recent call last):

File "C:\Temp\scriptBF4_01.py", line 24, in <module>

players_text = players_element.find('h5').text.strip()

AttributeError: 'NoneType' object has no attribute 'find'

Жалуемся чатику:

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Если вы думаете, что я понимаю что он мне пишет, то вы ошибаетесь.

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Сохраняем, запущаем:

C:\Users\Admin>python C:\Temp\scriptBF4_01.py

Название карты: PEARL MARKET

Текущее количество игроков на сервере: неизвестно

Вот так вот. Неизвестно. А еще искусственный интеллект называется...

Надо что то с этим делать. Взываем к совести:

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост
Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

"Конечно!" Давайте обновим. Какого единорога сразу то нельзя было нормально сделать?!

Ну что ж...

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Стартуем.

C:\Users\Admin>python C:\Temp\scriptBF4_01.py

Текущая карта на сервере: PEARL MARKET

Количество игроков на сервере: 64 / 64

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Ано живое! ч.2

Скриптец выдает нужные параметры, но очевидно, что использовать формат 64/64 будет не удобно. Нужно довести до очевидной цифиры. Требуем с Чатика:

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Результат:

Количество игроков на сервере: 64

Воооот. Уже лучше! Теперь надо чтобы скрипт делал запросы на страничку сервера с определенной периодичностью и обновлял выводимые данные:

Как я, не зная ни строчки кода, писал скрипт для чатбота с помощью ChatGPT ChatGPT, Нейронные сети, Программирование, Чат-бот, Python, Программа, Длиннопост

Сохраняем, запускаем.

C:\Users\Admin>python C:\Temp\scriptBF4_01.py

Текущая карта на сервере: PEARL MARKET

Количество игроков на сервере: 58

Текущая карта на сервере: PEARL MARKET

Количество игроков на сервере: 57

Текущая карта на сервере: PEARL MARKET

Количество игроков на сервере: 54

Итак, скрипт с определенной периодичностью обращается на страницу сервера и сообщает какая карта и сколько игроков там играют.

Лимиты поста ограничивают мой творческий фонтан. Если кому-нибудь будет интересно что тут написано, то сделаю вторую часть о том, как я прикручивал эту трихомудию к Телеграм-боту.

Первые выводы:

Можно ли заставить ChatGPT написать нужный вам код?

- Да, можно.

Сможет ли это сделать любая блондинка без логического мышления?

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

Говорят, что версия 4.0 гораздо умнее, но она стоит 20$ в месяц, посему тестировать ея пока не желаю.

Всем удачи, берегитесь ИИ, оно умнеет)).

Показать полностью 23

Парни реально живут так и не видят в этом проблемы

Парни реально живут так и не видят в этом проблемы

Как российский фермер Алексей Бухаровский грант получал.

В продолжение http://pikabu.ru/story/kak_rossiyskiy_fermer_aleksey_bukharo...

http://pikabu.ru/story/kak_rossiyskiy_fermer_aleksey_bukharo...

Как российский фермер Алексей Бухаровский субсидии получал. Ч2

в продолжение http://pikabu.ru/story/kak_rossiyskiy_fermer_aleksey_bukharo...

Как российский фермер Алексей Бухаровский субсидии получал...

Электронная женская одежда реагирует на интерес мужчин!

Американский дизайнер пакистанского происхождения Беназ Фарахи придумала одежду, которая трансформируется под взглядом противоположного пола.

Хитрецы.

Geektimes.
Хитрецы. Geektimes.

Коммент сделал мой день.

Коммент сделал мой день.
Отличная работа, все прочитано!