В интернете только и разговоров, что о чат-боте ChatGPT. С его помощью пишут код и текст, о нем создаются треды в твиттере, количество зарегистрированных участников так велико, что система «лежит» почти каждый день, не в состоянии справиться с нагрузкой.

ChatGPT связан с искусственным интеллектом, нейросетями и имитацией естественной речи. Давайте разберемся, что же это за штука и как она работает.

Что такое ChatGPT?

Мы спросили у него самого.

С гендером ChatGPT пока не определился, но ничего странного тут нет — ему всего несколько месяцев от роду. Первая версия была открыта пользователям в ноябре 2022 года. Разработчик — американская компания OpenAI, целиком посвятившая себя изучению и обучению искусственного интеллекта. В совет директоров входит, в числе прочих, Илон Маск.

ChatGPT — это нейросеть для генерации продолжения текста, в основе которой лежит большая языковая модель, или LLM, от Large Language Model. Так называется класс моделей обработки естественного языка, или NLP — Natural Language Processing. Их особенность заключается в том, что они поглощают большое количество текстовой информации и способны сформировать связи между отдельными словами — предсказать, каким будет следующее слово в неполном предложении.

Небольшое лирическое отступление. Более старые языковые модели, использовавшиеся раньше, основываются преимущественно на технологии долгой краткосрочной памяти (LSTM). Они заполняют пустующее место статистически наиболее вероятным словом в соответствии с контекстом.

У LSTM, конечно, есть недостатки:

  • Слова, окружающие «пропуск», для этой языковой модели равнозначны. Например, выражение «Вася ___ читать» модель может заполнить словом «ненавидит», потому что это слово статистически чаще всего встречается со словом «читать». При этом тот факт, что конкретный Вася — большой поклонник чтения, будет проигнорирован. Искусственный интеллект не способен понять, какое из слов, «Вася» или «читать», важнее в контексте;
  • слова оцениваются моделью последовательно и как отдельные единицы, а не в контексте текста целиком. То есть, этот контекст получается очень ограниченным. Искусственный интеллект не может окинуть внутренним взглядом весь текст, чтобы сформировать причинно-следственные связи.

С мыслью об этих трудностях команда в составе Google Brain — проекта от Google по изучению искусственного интеллекта — представила кое-что совершенно иное. А именно трансформеров, способных обрабатывать все вводные одновременно. Они используют self-attention mechanism, или механизм внимания, позволяющий системе искать связи между словами, а также помечать отдельные слова как более или менее значимые в контексте.

Так большие языковые модели стали еще умнее. Появились GPT.

Как работает ChatGPT?

И опять, мы спросили у бота:

GPT в названии чат-бота отсылает к трансформерам Generative Pre-training Transformer — предобученной модели языковой генерации. Первая версия GPT была запущена в 2018 году и получила приставку GPT-1. В 2019 году вышла вторая версия, в 2020 году третья, а в 2022 году — InstructGPT и герой нашей статьи чат-бот ChatGPT, созданный на ее основе. Каждая работала лучше предыдущей, обрабатывала текст эффективнее и с нарастающим успехом имитировала человеческую речь.

Технически работают все версии одинаково, используя архитектуру трансформера. Это значит, что у них есть энкодер, который обрабатывает входящий текст, и декодер, который генерирует исходящий. Ключевым в их работе является механизм внимания, позволяющий им ранжировать слова в зависимости от их значимости. Например, в предложении «Животное не перешло дорогу, потому что слишком устало» механизм GPT свяжет часть «слишком устало» с «животным», на что менее продвинутые нейросети были не способны. Чтобы добиться этого, каждое слово в предложении получает векторы ключа, запроса и значения, приобретает вес — то есть значимость в контексте, а потом многократно сравнивается со всеми остальными словами.

ChatGPT основан на улучшенной версии GPT-3 — InstructGPT, в которой специалисты OpenAI использовали еще несколько технологий:

  • Supervised Fine Tuning Model (SFT) — метод улучшения точности модели. OpenAI наняли 40 человек, которые брали запросы и сами же писали на них ответы, чтобы система получила массив данных для последующего обучения, своего рода библиотеку знаний. На основе этого была создана модель SFT — или GPT-3.5;
  • Reward Model — следующий шаг. Если вкратце, система получала вводные данные и выдавала несколько ответов, которые вручную ранжировались пользователями от лучших к худшим;
  • Reinforcement Learning Model — третий и заключительный этап, в ходе которого модель получала запрос, генерировала один итоговый ответ, а потом пользователи оценивали, насколько хорошим получился ответ. Используя фидбек от человека, языковая модель становится точнее, учится в полной мере имитировать речь и вести диалог.

Например, вот так:

Стоило один раз поправить — и ChatGPT начал генерировать правильный ответ:

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

Какие у ChatGPT слабые места?

Какими бы продвинутыми ни были современные языковые модели, они все-таки пока не люди. У них есть недостатки. Например, иногда они отказываются следовать инструкциям, иногда выданная ими информация недостоверна или откровенно ложна. Порой непросто понять, как именно машина пришла к определенному выводу. И если ей не запретить это эксплицитно, она может выдавать токсичный контент. Буквально: языковые модели, основанные на Reinforcement Learning Model, можно научить плохому.

Однако ChatGPT полезен даже в том виде, в котором есть. Вот здесь мы рассказали о пяти способах использовать его уже сейчас. А вот здесь приглашаем записаться на бесплатный двухдневный марафон по разработке без кода, на котором рассказываем больше о всяких интересных IT-инструментах.

В финале спросили у ChatGPT то, что не дает покоя многим: