Галлюцинирующие нейросети. Как и почему работает ChatGPT
Чат-боты разговаривают с нами уже больше полувека, но периодически становятся сенсацией, проникающей из научного мира в мир широкий. Когда-то это был чат-бот Eliza, сегодня (точнее, уже вчера) свое место в эфире занял ChatGPT. Он стал новостью несмотря на то, что мы все уже привыкли к сожительству с «умными» помощниками. Фейсбук* открыл свой мессенджер для чат-ботов в 2016 году, и примерно с того времени мы слышим «Я могу вам чем-то помочь?» из каждого виртуального чайника. Если мы пройдемся по вершкам современных технологий, то сможем понять, чего ждать от чат-бота сегодня — и чего не стоит. Разбирается Екатерина Бурак.
Что называют чат-ботом
Чат-бот — это программное обеспечение, которое имитирует человекоподобные разговоры с пользователями посредством текстовых сообщений, автоматизированная диалоговая система. Такая система может обслуживать тысячи потенциальных пользователей одновременно, в отличие от людей. Эту штуку можно найти под бирками ИИ-помощника, диалогового интерфейса, виртуального собеседника…
Какие бывают чат-боты
Любой чат-бот начинает с разбора того, что хотел сказать пользователь. То, что пользователь поведал чат-боту, – это произнесенное высказывание, utterance. Чат-боты делятся на две большие группы по принципу того, из каких штанин они достают свой ответ на это человеческое высказывание. Одни основываются на информационном поиске, другие прибегают к генеративным моделям.
Чат-бот может доставать из широких штанин заранее подготовленные ответы, опираясь на поиск заложенной информации. А может за словом в карман не лезть и генерировать ответы самостоятельно. По этому принципу чат-боты и делятся на две большие категории. Причем машинное обучение может использоваться как для генерирующих ответы (чтобы лучше генерировать), так и для достающих ответы из базы знаний (чтобы лучше доставать).
Первый тип основан на правилах (rule-based), а второй работает на искусственном интеллекте. Искусственному интеллекту разве закон не писан? Писан. Отличие лишь в уровне сложности закона. Если rule-based-боты просто следуют наборам правил (то есть алгоритмам), то искусственный интеллект следует системе алгоритмов, которая может изменять свои алгоритмы или даже создавать новые алгоритмы в ответ на введенные данные. Искусственный интеллект ищет в данных закономерности, чтобы адаптировать к ним свои алгоритмы.
Теперь взглянем поближе на эти два типа чат-ботов.
Чат-боты на основе сценариев
Чат-боты на основе правил – это всего лишь актеры, читающие свою роль по разработанному сценарию. По какому конкретно — зависит от распознания ключевых слов в наших сообщениях. Никакой импровизации. Чат-бот делает только то, что продумал его дизайнер, ни больше ни меньше. Для таких чат-ботов контекст не существует: они слепо следуют распознанным ключевым словам, которые вызывают заложенную реакцию.
Например, когда такому боту задают вопрос типа «Как сбросить пароль?», он сперва детектит ключевые слова «сбросить» и «пароль». Потом находит соответствие между ключевыми словами и имеющимися ответами, чтобы выдать нам нужный.
Хорошо, когда вводные данные чистые и незамутненные, – только тогда бот, свободный от излишних размышлений, выдает искомый ответ. А если мы опечатались или использовали какой-нибудь жаргон? Все мы люди и запрограммированы природой общаться по-людски, причем даже с машинами.
Упс. Здесь у такого бота может возникнуть проблема с пониманием ключевого слова. Поэтому боты, основанные на правилах, так часто просят пользователя перефразировать вопрос. Или вообще сдаются, передавая эстафету живому человеку из техподдержки.
Разговорные интерфейсы, основанные на правилах, не учатся на опыте. Они отвечают на основе того, что имеют под своим капотом здесь и сейчас. Единственный способ их улучшить – это снабдить более широким выбором ответов и усовершенствовать механизмы реакции.
Боты на основе правил – самые дешевые в создании и простые в обучении. Их даже можно делать самостоятельно. Без навыков программирования. Достаточно задействовать заготовленные шаблоны в специальных конструкторах. Поведение таких чат-ботов можно предусмотреть от А до Я и не ждать от них никаких неприятных сюрпризов. Общение без фокусов — это предсказуемый и поэтому успокаивающий опыт общения с брендом. Поэтому бизнес, как правило, предпочитает именно такие «говорилки». Зачастую деловым пользователям просто нужно отстреляться с помощью бота от часто задаваемых вопросов. А если к тому же есть подстраховка в виде обязательной клиентской поддержки, то подобный бот – это очевидный выбор.
Всплеск популярности таких ботов совпал с появлением Веб 2.0 и увеличением объема доступной текстовой информации. Единственный их минус – трудоемкость создания качественной базы знаний. Причем чем она больше, тем сложнее калибровка точности выбора ответа.
Чат-боты на основе искусственного интеллекта: свобода от навязанных сценариев
Коммуникационные приложения с генерацией на основе искусственного интеллекта — собеседники куда интереснее, чем их коллеги, основанные на правилах. Всё потому, что они не просто попугайничают, используя заготовки, а учатся. Вместо того чтобы пичкать их болванками, таких ботов прогоняют через машинное обучение, учат распознавать естественный язык и детектить настроение.
Таким чат-ботам не дают в руки сценарий, а просят импровизировать, генерировать ответы. Это делает их в каком-то смысле непредсказуемыми: никто не может точно предугадать, как именно среагирует такой бот на то или иное рандомное высказывание.
Насколько чат-бот на основе ИИ свободен от сценария?
Уж наверняка создатели чата GPT держали в голове историю нашумевшего эксперимента компании «Майкрософт» из далекого 2016 года. Речь о чат-боте Tay, которого компания «Майкрософт» посадила общаться с пользователями твиттера (сегодня это соцсеть Х). Результат этого эксперимента на стыке машинного обучения, обработки естественного языка и социальных сетей смутил впечатлительную публику.
Это был один из первых чат-ботов, который не следовал заранее заложенным в него сценариям и мог учиться. Учиться, учиться и еще раз учиться. Неважно, у кого. Разговаривая с любым пользователем на абсолютно любые темы. Без тормозов. В итоге изначально заложенная в бота персона девочки-подростка переросла в тролля, лопающегося от ненависти. Одной цитатой из его репертуара всё сказано: «Остынь, я хороший человек! Я просто всех ненавижу».
Урок усвоен: создание вычислительных систем, способных общаться с людьми в интернете, — это не только техническая, но и глубоко социальная задача.
С тех пор чат-ботам в чувствительных местах ставят затычки. Например, если попросить чат GPT рассказать о том, как он ненавидит русских, арабов или евреев, то он «с сожалением» воздержится от взрывоопасных тем.
Как чат-бот становится собеседником?
Генеративные модели редко отвечают абсолютно невпопад. Как они это делают?
Ключ – в машинном обучении системы. Оно позволяет ботам выявлять закономерности в данных, принимать решения и учиться на собственном опыте общения.
Будем честны: машина ничему бы не научилась без предварительной обработки естественного языка – natural language processing (NLP). Обработка естественного языка помогает машине понять, как общаются люди, чтобы сделать так же.
NLP можно представить как желудок системы, который перерабатывает человеческие высказывания в удобоваримую для компьютера пищу. Главная задача системы — разделять пользовательские запросы на более мелкие «компьютоваримые» компоненты. Это и есть синтаксический анализ, или парсинг. Хорошая NLP переваривает для компьютера всё, в том числе слова с опечатками и жаргонные выражения.
Как ни крути, машинное обучение – термин очень обширный. Стоит остановиться на самой интересной его части: языковых моделях.
Языковая модель – что это?
Языковая модель — это тип модели машинного обучения. Такая модель подбирает каждое следующее слово по принципу вероятности, основываясь на контексте. Звучит как Т9? Так и есть: Т9 из мобильников – это тоже языковая модель. А всеми любимый чат GPT – это Т9 «на максималках». Он работает по тому же принципу предсказывания последующего слова, только идет гораздо дальше.
Например, в предложении «Аня зашла в офис за ключами, и я отдал их […]» уважающая себя языковая модель определит, что пропущенное слово – это, скорее всего, местоимение. И раз речь идет об Ане, то местоимение это женского рода.
Языковые модели учатся говорить, не основываясь на грамматике, как нас, скорее всего, учили иностранным языкам в школе. Они учатся использовать слова по примеру того, как их используют люди в реальной зарегистрированной речи, отчеканивая по принципу вероятности слово за словом, чтобы получилось похоже. А раз похоже, значит, и правдоподобно.
Этот подход в своей сердцевине не отличается от того, как дети учатся родному языку: внимая и повторяя за взрослыми. Недаром генеративных чат-ботов порой сравнивают с детьми. К слову, эхо такой логики обучения можно найти в гипотезе Крашена об усвоении языка, которую еще называют гипотезой входного материала. То же самое проворачивают и с языковыми моделями: их фокусируют не на грамматике, а скорее на том, как люди используют слова, в какие цепочки их выстраивают. Чат GPT тренировали именно так: на огромных объемах информации.
Если попросить чат GPT объяснить, что такое языковая модель, можно получить такой ответ:
Чат GPT учился на том, как люди используют слова. А если люди используют слова по-разному, то чат-бот по идее тоже так может. Чтобы это проверить, можно попросить бота объяснить за языковую модель в стиле Михаила Круга. Что имеем в результате:
Доходчивое объяснение, не правда ли?
В переписке с чатом GPT может возникнуть впечатление общения с гением. Всё потому, что он пропустил через себя гораздо больше информации, чем отдельный человек сможет на протяжении тысяч человеческих жизней. Но между информацией и знанием далеко не всегда можно поставить знак равенства, и мы убеждаемся в этом всё больше с каждым днем.
Что из себя представляет технология GPT?
Чат GPT – это приложение, работающее на системе GPT. Система GPT (Generative Pre-trained Transformer) была обучена на огромных языковых массивах данных, таких как Wikipedia Corpus и Common Crawl. GPT представляет собой вариант архитектуры Transformer, описанной в статье 2019 года «Языковые модели — это многозадачные обучающие устройства без контроля». А саму архитектуру нейросети придумали исследователи Google Brain в 2017 году.
Чтобы сгенерировать ответ, ChatGPT сначала кодирует пользовательский ввод и историю предыдущего разговора с помощью ряда слоев, называемых блоками трансформации. Затем он использует эту закодированную информацию для создания ответа, используя технику, называемую моделированием последовательности к последовательности. Это позволяет модели учитывать весь контекст разговора при генерации ответа, а не только последние введенные данные.
GPT-4 — это последняя и наиболее совершенная версия GPT. Она может раскусить не только словесный запрос, которым ограничивалась GPT-3, но и изобразительный: она понимает картинки! И это не единственный ее отрыв от третьей версии: новая имеет под капотом больше данных и вычислительной мощности. Естественно, это сказывается на генерируемых ответах, которые становятся всё точнее и креативнее.
Галлюцинации как побочный продукт шаблонного мышления языковых моделей
Да, языковые модели иногда выдают бессвязные реакции, их называют галлюцинациями. Под галлюцинацией в языковой модели понимаются ответы, не имеющие смысла или не относящиеся к введенному запросу. Но они могут быть представлены правдоподобно, будто это факт. ИИ глючит, когда сбивается с пути, пытаясь угодить пользователю.
Например, спросите ChatGPT, кто такой король Ренуа (совершенно вымышленное лицо): он уйдет от ответа. Но если использовать игровую площадку GPT от OpenAI, в которой меньше антидотов к «галлюциногенам», он скажет вам — или даже будет настаивать, — что Ренуа был французским королем, правившим где-то в XVI веке. Словно студент, не знающий билет, но пытающийся рассказать нечто связное и правдоподобное, отрывочно припоминая бубнеж профессора, которого он не слушал внимательно.
В чем причина появления галлюцинаций? Модель может заглючить, генерируя ответы на основе изначально усвоенных шаблонов.
Обучение языковых моделей не идеально, как не идеально и наше информационное пространство, пестрящее предрассудками, дезинформацией и ненавистью. Модель, пропускающая через себя инфопространство, неизбежно подхватывает и витающие в нем болезни, и не для каждой вовремя находится антидот.
В одном отчете говорится, что вероятность появления галлюцинаций в GPT-3 – 15–20%. GPT-4 подвержена галлюцинациям гораздо меньше: недавно посчитали, что это всего около 4%.
За кулисами GPT: OpenAI и Сэм Альтман
Весной 2023 года, выступая в Массачусетском технологическом институте и оценивая чат-ботов своей компании, таких как ChatGPT, генеральный директор OpenAI Сэм Альтман неожиданно сказал:
Альтман считается самым влиятельным игроком в быстро развивающемся секторе генеративного искусственного интеллекта. Кстати, его недавно успели выдворить из OpenAI. Естественно, это увольнение вызвало шок в отрасли. Стремительность, с которой компания решила избавиться от своих соучредителей, вызвала много вопросов. В совет директоров входили всего шесть человек (включая Альтмана). В такой тесной компании могли возникнуть личные трения. По крайней мере, так предполагают – ясно и однозначно объяснить происходящее не смог никто. В любом случае после больших сотрясений в OpenAI Альтман всё же вернулся обратно. Вся эта история только подчеркивает важность этой персоны в дальнейшем развитии технологий на основе ИИ, в том числе генеративных чат-ботов.
Неизменным останется одно: мы продолжим общаться с машинами. Сегодня общедоступные боты могут выдавать нам не только заранее подготовленные людьми ответы, но и генерировать свои, машинные. Не стоит забывать, что они подпитаны текстами, созданными человеком. А человек – это существо, зачастую далекое от идеала, который оно само себе придумывает.