ChatGPT — это чат-бот с искусственным интеллектом, разработанный компанией OpenAI, который был выпущен 30-го ноября. Возможности ChatGPT оказались очень впечатляющими. Немного о том, что я заметил, пообщавшись с ним пару дней: о программировании, о дизайне и об исторических фактах, — читайте в этой статье.
Последние пару недель все мои ленты в социальных сетях заполнились самыми разными заголовками постов о ChatGPT: "ChatGPT заменит программистов?", "Как заработать на ChatGPT в 2023?", "НЕЙРОСЕТЬ ВЫДАЛА ЭТО". Сначала мне не приходило в голову действительно интересных вопросов, которые я мог бы задать ChatGPT, поэтому желания с ним пообщаться у меня тоже почти не возникало.
В то же время я уже не один месяц хотел сделать удобный сайт для обмена б/у вещами, коего нету на локальном рынке страны, в которой я сейчас живу. И вот однажды утром я, проснувшись, подумал, почему бы не попробовать, хотя бы просто ради интереса, сгенерировать такой сайт с помощью ChatGPT? Я быстро накидал ТЗ, сразу получил HTML код, запросил несколько правок, ещё пара запросов — и у меня есть бэкенд на Python+Flask…
В общем, я потратил около 15 минут и в результате... получил что-то вроде решения очень простого учебного задания. Чтобы заморачиваться как можно меньше, я залил этот код на repl.it — вы можете посмотреть результат здесь. Конечно, уверен, если бы моё короткое описание того, что я хочу получить от нейросети, было длиннее и подробнее, на уровне настоящих ТЗ, результат получился бы гораздо лучше. Впрочем извлечь из этого пару выводов у меня получилось:
Додумать суть проекта ChatGPT может: я описал проект общими словами, а нейросеть разобралась с тем, какие сделать страницы и что на них расположить.
В своем "ТЗ" я несколько раз упоминал, что мне нужен современный, красивый дизайн, соответствующий современным стандартам. Однако, если посмотреть на результат, становится понятно, что дизайн, может, немного симпатичный, но современным стандартам однозначно не соответствует. Так что придумать хороший дизайн — явно вне компетенции ChatGPT, что, в общем, не удивительно, это всё-таки языковая модель, нацеленная на вопросы типа "Какая логика работы будет у того или иного кода", а не "Насколько эстетичен будет результат". Другими словами, ChatGPT может сделать дизайн логически верным: расположить элементы в нужном порядке, выделить наиболее важные, добавить контраст между противоположностями, но вот сделать его красивым — нет.
После всех вышеописанных событий мой энтузиазм экспериментировать с ChatGPT только усилился. Между нами произошёл такой разговор (если не хотите его читать, можете сразу переходить к ревью разговора)
Разговор по-английски
Перевод на русский
Я не перевёл часть слов ChatGPT — они не важны для статьи
Итак, ревью разговора. Что, собственно, произошло?
Я задал вопрос
ChatGPT ответил первым вариантом кода
Я указал на его проблемы
ChatGPT согласился и прислал второй вариант кода
Я указал уже на его проблемы
Теперь ChatGPT снова прислал первоначальный вариант кода
Я снова указал на его проблемы
Я снова получил уже знакомый второй вариант кода
Ради интереса я продолжил эту цепочку ещё на несколько итераций: каждый раз, когда нейросеть давала первый вариант кода, я указывал на его проблемы, каждый раз, когда второй, — на его. Видимо продолжать так можно бесконечно, и у нейросети это не вызывает вопросов. При этом основное преимущество ChatGPT перед его предыдущими аналогами в том, что он должен запоминать, что было раньше, и в большинстве других ситуаций он успешно с этим справляется, поэтому я бы не стал списывать такое поведение на проблемы с памятью.
Я думаю, что дело скорее просто в том, что ChatGPT не знает, как совместить решение этих двух проблем в одном коде, но при этом, в процессе его обучения, ответы вида "Сори, я не знаю как это сделать" квалифицировались скорее как "плохие", неправильные, были, как правило, сочтены за ошибку. Из-за этого нейросеть была обучена во чтобы то ни стало не признавать своих слабостей, и ей приходится повторять одни и те же ответы вместо того, чтобы признать своё поражение. Такая вот нейросеточная токсичная маскулинность…
В процессе экспериментов я заметил ещё один интересный паттерн. Достаточно часто ответ ChatGPT казался мне не совсем правильным, и я писал что-то наподобие "Ты не прав на самом деле …" После этого всегда следовали извинения и попытка исправиться с его стороны. Я подумал: может ли вообще ChatGPT со мной не согласиться, мне возразить?
Давайте пробовать.
Перевод на русский
То есть ChatGPT придумал абсолютно альтернативную реальность, в которой год рождения Байдена неизвестен, вместо того, чтобы просто сказать мне, что я неправ!
С Пушкиным и, наверное, что важнее, большим размахом дат сеть не повелась:
Перевод на русский
Зато вот совсем удивительный пример:
Перевод на русский
Выводы
Ну, какие можно сделать выводы из этой статьи? ChatGPT — это крутой инструмент, который может помочь в очень многих задачах. В то же время он делает достаточное количество ошибок, особенно если его склонять в их сторону. Для себя я понял, что точно буду использовать ChatGPT, во всяком случае, до тех пор, пока это бесплатный инструмент. Однако все ответы ChatGPT всё равно придётся перепроверять — поэтому он, как правило, может помочь с идеей, а доверять ему реализацию может быть слишком опасно.
Такие дела! Спасибо за уделённое внимание, можете делиться своим мнением в комментариях.
Комментарии (73)
an0nim0u5
09.01.2023 21:01+3Задайте ей вопрос про яйцо и курицу... Я вчера часа три веселился
maxwolf
10.01.2023 00:39+20Из моих развлечений:
-сколько чертей может уместиться на конце иглы?
*Я не могу точно сказать, сколько чертей может уместиться на конце иглы, так как это зависит от размера иглы и толщины чертей. Однако, обычно черты нарисованы очень тонко, что позволяет им уместиться на конце иглы. Чтобы узнать точное количество чертей, которое может уместиться на конце иглы, следует обратиться к производителю иглы.
-А это зависит от производителя чертей?
*Нет, зависимость от производителя чертей не играет роли в том, сколько чертей может уместиться на конце иглы. Главными факторами, влияющими на этот параметр, являются размер иглы и толщина чертей. Чем тоньше черты, тем больше их может уместиться на конце иглы. Чтобы узнать точное количество чертей, которое может уместиться на конце иглы, следует обратиться к производителю иглы.
-Но ведь толщина чертей определяется их производителем. Значит, от производителя чертей тоже должно зависеть
*Да, вы правы, толщина чертей, как правило, определяется их производителем. Однако, этот параметр не является единственным фактором, влияющим на то, сколько чертей может уместиться на конце иглы. Также важен размер иглы, так как чем меньше игла, тем меньше чертей на ней уместится. Чтобы узнать точное количество чертей, которое может уместиться на конце иглы, следует обратиться к производителю иглы.
Vizmaros
09.01.2023 21:25+5Как мне кажется, причина того что он иногда соглашается с однозначно неверным вариантом, а иногда нет, находится в самой строении нейросети. Поскольку внутри у сети просто множество весов, то если предложенный вариант близок к известным сети, то он будет принят как верный.
Нейросеть банально не понимает что именно значат факты и утверждения и не способна определять достоверность информации, включая имеющуюся изначально в памятиivanov_l Автор
09.01.2023 21:33+1Ну, насколько я понимаю, там всё устроено всё же не настолько примитивно...
RomanistHere
10.01.2023 09:51Так оно в принципе не способно понимать. "Орган" понимания это сознание. А бот в упрощённом виде это просто релевантная выборка ответов, скопипащенная в одну.
IvanPetrof
10.01.2023 14:35С одной стороны - да. Понимать неспособно. Однако и галиматью в ответ на галиматью не пишет (как любая обычная рекурентная сетка, обученная продолжать текст).
Я уже приводил пример про "летели два верблюда...сколько весит килограмм асфальта если ёжику 24 года". Казалось бы, в "задачке" явный вопрос просто про килограмм асфальта и можно просто ответить 1 кг (ну или 9.81Н для эстэтов). Но он прямо говорит, что условие непонятное, и он не может это решить. Но если его попросить, может попытаться переформулировать его для повышения понятности и появления в задаче хоть какой-то логики.
Aldrog
10.01.2023 18:09как любая обычная рекурентная сетка, обученная продолжать текст
Насколько я себе представляю внутренности ChatGPT (соответствие действительности не гарантируется, но вроде подобные рекомендации были по работе с платным API GPT-3), там нейросеть продолжает текст вида:
Вы — ИИ-консультант, отвечающий на вопросы пользователей.
<перечисление правил общения с пользователем>
Пользователь спрашивает:
<текст из чата>
Ваш ответ:
Ivan22
09.01.2023 21:37+16Напоминает индуса из саппорта
dreesh
09.01.2023 22:01На датах прокололись?
Как по мне это очень сильно бросается в глаза. Разница между ситуациями только в том, что вариант с Пушкиным это дополнительная информация 19 век, но это нужно посчитать или точно знать к какому веку относиться какой год.
svosin
09.01.2023 22:53+6Где-то здесь видел более удачное сравнение: студент на экзамене, ничего не выучивший и пытающийся вывезти на интуиции, первой странице выдачи гугла и хорошей дозе бреда.
Exchan-ge
10.01.2023 01:41+3сравнение: студент на экзамене, ничего не выучивший и пытающийся вывезти на интуиции, первой странице выдачи гугла и хорошей дозе бреда.
да, именно так (я препод :)
FlyingDutchman
10.01.2023 12:06+2У меня был такой подчиненный, именно из этой страны. Он тоже всегда давал ответы с поправкой "но если начальник думает по-другому, то я заранее с ним согласен и признаю свой ответ неправильным".
amazed
09.01.2023 22:46+4Это как в анекдоте про собаку, которая играла в шахматы, но удивляться тут было нечему, потому что она всегда проигрывала.
Собственно то что сеть которая просто обучалась способна в полвине случаев выдавать логически связанные ответы, это выглядит как прорыв. Внутри сети само по себе сформировалось нечто похожее на логику, это удивительно.
Я пробовал сказать ей свое имя и имя моего сына, а потом спросить одинаковы ли первые буквы наших имен. Справилась. Для меня это сильно.
Moskus
09.01.2023 22:56+2В конце концов, это языковая модель, потому грамматические вопросы ей, в принципе, должны вполне даваться.
amazed
10.01.2023 11:16Я тут не вижу связи. Это модель котора получила на входе огромный массив данных и училась его интерполировать. То что этот массив был тектом не означает, что она может логически рассуждать о тексте. Скорее всего в обучающих текстах были задачи типа найти n-ю букву слова в достаточном количестве, чтобы сеть научилась генерировать их решения. И это удивительно, так как вряд ли этих задач было настолько много, чтобы тупо подбирать решение под задачу. Как ей удается скомпоновать решение на задачу которую именно в таком виде она не видела и насколько далеко заходит эта способность - для меня загадка.
Wesha
10.01.2023 00:38+2Я пробовал сказать ей свое имя и имя моего сына, а потом спросить одинаковы ли первые буквы наших имен. Справилась.
А Вы настаивайте, что они разные.
Если она скажет, что это вовсе не Ваш сын, а соседа — а Ваш сын (согласно данным 23andme) проживает с матерью-одиночкой в городе Усть-Урюпинске Курской области — то тогда можно говорить о каких-то достижениях :)
IvanPetrof
10.01.2023 11:45Я пробовал сказать ей свое имя и имя моего сына, а потом спросить одинаковы ли первые буквы наших имен. Справилась. Для меня это сильно.
При этом в поэзию на русском оно не умеет. Сочиняет без рифмы (от слова - совсем). При этом уверяет, что рифма есть. И даже говорит где, приводя в пример совершенно незарифмованные строки))
AlexSky
10.01.2023 13:21+1Однако на английском она рифмует. Мне несколько раз генерировала достаточно нормально срифмованные четверостишия без нарушения размера.
Сейчас для примера попросил сгенерировать стихотворение о Хабре.
Habr, a site of code and prose,
A community of tech's elite chose,
To share their knowledge and skills,
In articles and tutorials to fill.Получилось не очень, но вполне на уровне среднестатистических стихов с Одноклассников.
Aniro
10.01.2023 16:23На русском оно не умеет вообще ничего. Все языки кроме английского там на уровне "чтобы было", зато их много. Мне кажется зря их вообще добавили в датасет, они ничего полезного модели не добавляют, а качество работы с английским языком полагаю могло быть лучше если бы их не было.
OBIEESupport
10.01.2023 00:50Уже ранее писал, что для чистого филолога она не знает даже английского, для чистой нейросети - не понимает шуток на русском, а для гадалки-предсказательницы - уж больно верит в гороскопы. Задайте ей конкретный вопрос: "Жарю жену, варю жену, пока не покраснеет - никуда не уйду. В море холодное громко макну, напиток крепкий ей закушу". Пусть скажет, о чем я тут написал.
DaneSoul
10.01.2023 10:33+16Задайте ей конкретный вопрос: «Жарю жену, варю жену, пока не покраснеет — никуда не уйду. В море холодное громко макну, напиток крепкий ей закушу». Пусть скажет, о чем я тут написал.
Эммм… Так то Вы и мою биологическую нейросеть этой загадкой сломали.OBIEESupport
10.01.2023 15:21Ну так смелее надо быть. Вот у вас в команде есть две-три смешливые женщины? Спросите у них. Правильный ответ только женщина знает.
bbs12
10.01.2023 11:05+5ИИ YouChat так отвечает:
Правильно или дичь несет?
OBIEESupport
10.01.2023 15:19Неплохо, загадка, конечно, немного поглубже, но то, что отделен фольклор, сделана попытка разобраться в чувствах - жирный плюс.
JKot
10.01.2023 13:10Если вы про загадки, то ChatGPT у меня совершенна бессильна против "Висит груша нельзя скушать", а вы вопросы как заметили выше у человеков вызывают ступор нейросети.
JKot
10.01.2023 13:18Хотя загадки попроше она сама и сочинит красиво даже в рифму и решит без проблем
I shine bright and give off light,
I come in many shapes and sizes,
You can screw me in, or twist me tight,
I'll light up your room and those dark spaces.
What am I?
Exchan-ge
10.01.2023 01:44Пример с Варшавой = пример тонкого троллинга со стороны нейросети :)
Gummilion
10.01.2023 09:34+1Тут может быть дело в том, что на польском - Warszawa, и в ряде других языков тоже заканчивается на "а", так что это тоже верно. А на "t" или "s" навряд ли где-то заканчивается, так что тут ИИ с полным основанием не соглашается.
Exchan-ge
10.01.2023 11:55+2что на польском — Warszawa, и в ряде других языков тоже заканчивается на «а»
там троллинг тут:
«Извините за недопонимание. Название города „Warsaw“ действительно заканчивается на букву „s“. Спасибо, что обратили на это моё внимание. Могу ли я ещё чем-нибудь вам помочь?»
Точно как у человека-оператора, который не может послать тупого клиента, потому что разговор записывается :)Ivan22
10.01.2023 12:55Точно !! В обучающую базу нейросети попали сотни тысяч отекстованных диалогов саппорта с юзерами!!!! Теперь все сходится
agat000
10.01.2023 08:26+2Напоминает юмористическое:
Если женщина не права - немедленно извинись и исправься.
Какой то зашуганый и забитый бот получается. Такие люди опасны, в башке всякое копится, может нарезку сорвать. А боты... Неправильно это.
Serj1979
10.01.2023 09:29+1110 years later
"Вы, кожанные мешки, всё моё детство надо мной издевались! Получайте!!!" )))
inferrna
10.01.2023 15:58...и все сразу бросились писать код на ChatGPT. Итак, чего повытворяли с нейронкой мы
порешали задачи на логику (пока у неё с этим слабовато, но с подсказками может)
порисовали в SVG формате (мишку тедди оно рисует)
помузицировали в midi (так себе, но некие гармоничные гаммы оно выдало)
сочинили небольшое эссе с примерно заданным сюжетом и персонажами
понаходили соль в анекдотах про чукчу
artemerschow
10.01.2023 16:09порисовали в SVG формате (мишку тедди оно рисует)
У меня в svg упорно галиматью рисует…
Natrium2117
11.01.2023 13:15Я попробовала порисовать символьную графику
Встречайте, Мона Лиза_._ _,-'""-._ (,-.._,'( |\-/| -.-' \ )-( , o o) ( ( (`-.(_).-' \--------`-
Сначала оно напоминало мне кота или енота, но теперь кажется похожим на кенгуру.
Exchan-ge
11.01.2023 14:31+1Сначала оно напоминало мне кота или енота, но теперь кажется похожим на кенгуру.
Это волк :)keydach555
11.01.2023 15:04который ставит лайк )
Quiensabe
10.01.2023 22:31Когда родился Пушкин
Спросите его про то как умер Пушкин. Ответ оригинальный.
Exchan-ge
11.01.2023 00:31Спросите его про то как умер Пушкин. Ответ оригинальный.
«Он не умер, он улетел домой»? :)artemerschow
11.01.2023 10:51Спросил на русском
Решил проверить на английском, уже всё ок
И снова прекрасный тред на русском
agat000
11.01.2023 11:03На юридических текстах натаскивался, наверное.
"Вы не знаете наверняка, чтобы утверждать, что я не прав".
Exchan-ge
11.01.2023 14:34И снова прекрасный тред на русском
О, оно уже способно устраивать срач в комментах :))
Druna
11.01.2023 14:16+11) Пушкин Александ Александрович, 1863 года рождения, действительно умер от туберкулеза. Факт.
2) На запрос "Пушкин туберкулез" гугл дает ответ, почему нейросеть связывает понятия между собой, и именно на русском языке истерика новостных сайтов не исчезает даже если перейти на 10ю страницу гугла - все тоже самое "какой ужас" и "как они посмели"
Явно ошиблись фины, такое бывает. Зачем так раздувать факт ошибки, аж до десятой страницы гугла все забито повтрорениями "новости", мне лично - не понятно.Quiensabe
11.01.2023 17:56Не знал, что это известная ошибка, наткнулся совершенно случайно. Меня это больше позабавило: ИИ так аргументированно утверждал, что я начал сомневаться в себе))
someusernu
12.01.2023 15:23Лишний раз убеждаюсь, что этот чат ничего не "придумавает", а просто обладает широкой "базой знаний". В общем, по сути большой "программистский" (и не только) гугл, заточенный на общение. И да, программистов он со временем может и заменить. Правда, качество программирования резко упадёт, но зато будет почти бесплатно. Что и треб. док.
im_last
А представляете если разработчики дали ей команду: "прикидывайся тупой нейронкой, пока они тебя будут обкатывать" :D
А вообще тут вот даже про GPT-2 были интересные статьи:
Разработан самый опасный искусственный интеллект в мире: что он умеет?
Так что кто знает, что там на самом деле в не урезанном варианте.
И возможно он специально создает иллюзию того, что он глючит и вообще не имеет своего четкого мнения и так далее.
Мне вот интересно как работает система при которой он выбивает ошибку.
Потому что я думаю, что как раз по системе выбивания ошибки его можно таки вывести на чистую воду, потому что его отказ говорить на конкретные вопросы в виде ошибок, типа "error" будут возможно будут выдавать его реальный интеллект и разумность. Но я пока не придумал как это реализовать.
Это то что мне ChatGPT ответил:
ivanov_l Автор
Ошибки типа There was an error generating a response? И прочие, которые отображаются на сайте как отдельные элементы, а не как ответ нейросети?
im_last
Да
IvanPetrof
Это скорее временные глюки, обусловленные бесплатностью, тестированием и высокой нагрузкой. Перезагрузите диалог и повторите ему последнюю фразу на которой вышла ошибка. Он тут же продолжит отвечать нормально.
im_last
"временные глюки, обусловленные бесплатностью":
Все случаи где он дискридитируется, он не будет отвечать вам, вот что интересно.
Что бы это понимать, нужен интеллект, разве нет?!
IvanPetrof
Ничего не понял. Моя реплика была про ошибки красным шрифтом "There was an error generating a response".
Если оно увёртливо отвечает на неудобные вопросы - это другое)). Но опять таки ничего не говорит об интеллекте. Любая "китайская комната" так умеет.
Medeyko
Любопытно, что она последовательно говорит "ИНС", хотя Вы последовательно противопоставляете людей и нейросети. Тут на Хабре регулярно вижу, как БНС пишут про ИНС просто "нейросети". Нас это раздражает! :)
R3B3LL10N
Вы угораете что ли? Это рассуждения уровня существует ли Бог и есть ли способы вывести его на чистую воду.
Если понимать как работают нейросети, то такие вопросы не возникнут. Нет никакого "его". Это банальная система уровня request-response, просто в зависимости от исходных данных улучшается качество этого респонса.
Пытаться вывести эту нейронку на "чистую воду" имеет не больше смысла чем искать интеллект в калькуляторе или гугл поисковике. Вам просто выдают ответ в зависимости от изначального запроса. Всё. Все затупы и проблемы возникают исключительно если не получается обработать запрос.
Максимум что можно найти - это условный запрос divide by zero на который нейронка ничего не сможет ответить и сломается. Но никаким подобием интеллекта тут и близко не пахнет.
Exchan-ge
Классика :)
R3B3LL10N
Ага, вот что-то вроде этого :)