История чат-ботов: от Shoebox до ChatGPT
Они намного старше, чем вы думаете...
Кадр: мультфильм «Миньоны: Грювитация» / Universal Pictures
Несмотря на то, что чат-боты ворвались в нашу повседневную жизнь относительно недавно, их история началась ещё до того, как The Beatles записали первые песни в студии Abbey Road. С тех пор эти виртуальные собеседники прошли путь от ламповых устройств, которые выполняли ограниченный круг задач и отвечали шаблонными фразами, до мощных сервисов, поддерживающих беседу и анализирующих не только текст, но и изображения.
ML-инженер и исследователь в области NLP Анна Козлова прошлась по истории развития чат-ботов и рассказала, кто и как повлиял на развитие технологии интеллектуальных помощников.
Что такое чат-бот
Чат-бот — это программа, способная имитировать разговор с человеком, используя инструменты обработки естественного языка (NLP), такие как сопоставления с образцом (pattern matching) и большие языковые модели (LLM).
Упрощённо работу чат-бота можно свести к четырём шагам:
- Пользователь отправляет ему запрос.
- Чат-бот анализирует запрос.
- Чат-бот генерирует ответ.
- Отправляет ответ пользователю.
Эволюцию чат-ботов можно проследить по тому, как они выполняли второй и третий шаги. Первые интеллектуальные помощники подбирали ответы из наборов шаблонов, ориентируясь на слова в запросе пользователя. Современные чат-боты используют большие языковые модели для имитации живого общения, генерируя текст с нуля на основе больших данных.
Мы начнём наше путешествие с Shoebox от IBM — первой машины, которая умела реагировать на голосовые команды, — и дойдём до современных цифровых помощников от Apple, Samsung и других компаний. Но, говоря про чат-ботов и искусственный интеллект, нельзя не вспомнить великого Алана Тьюринга и его знаменитый тест.
Тест Тьюринга
В 1950 году Алан Тьюринг придумал тест, который должен был выяснить, способна ли машина к полноценному мышлению. За основу теста было взято допущение о том, что если человек, общающийся с программой, примет её за живого собеседника, то такую программу можно считать истинно мыслящей.
Свою идею Тьюринг описал в статье «Computing Machinery and Intelligence» в журнале Mind и предложил рассмотреть вопрос: «Могут ли машины думать?»
Для его решения он описал игру для трёх участников, которая получила название «Игра в имитацию». Это эксперимент, в котором человек взаимодействует с двумя участниками, один из которых — человек, а другой — компьютер. Испытуемому необходимо определить, кто из них кто, исходя из текстовых ответов участников.
Машина в своих ответах должна подражать человеку настолько, чтобы испытуемый не смог отличить её от живого участника. Если это удалось, то считается, что компьютер успешно прошёл тест Тьюринга.
Читайте также:
Shoebox: обувная коробка, которая умела считать
В 1961 году инженер IBM Уильям К. Дерш разработал устройство, которое выполняло арифметические операции по голосовым командам. Изобретение получило ироничное название Shoebox. С этой коробки и началась история чат-ботов.
Машину представили на Всемирной выставке в 1962 году. Она умела распознавать и реагировать на 16 слов, включая десять цифр от 0 до 9, и простые арифметические операции. Когда учёный произносил числа и названия команд, такие как «плюс», «минус» или «итого», счётная машина производила вычисления и распечатывала ответ.
Для управления Shoebox использовался микрофон, который преобразовывал звуки голоса в электрические импульсы. Измерительная схема классифицировала их в соответствии с различными типами звуков и активировала подключённую счётную машину через систему реле.
Eliza — умела слышать и слушать
Компьютерная программа для изучения естественного языка общения человека и машины. Её разработал Джозеф Вейценбаум, профессор MIT, в 1966 году. По мнению некоторых экспертов в области искусственного интеллекта, именно Eliza впервые прошла тест Тьюринга, но это мнение разделяют не все.
Чат-бот задумывался как психотерапевт, который слушает пользователя, анализирует сказанное и задаёт уточняющие вопросы. Eliza использовала подход сопоставления с образцом (pattern matching) и выбор ответа на основе шаблонов.
У такого подхода были серьёзные недостатки. Например, программа не учитывала контекст и не обучалась в процессе диалога, что накладывало ограничения на ответы. Eliza понимала около 200 ключевых слов и правил, что позволяло ей вести довольно примитивные беседы.
Удивительно, но с Eliza можно поговорить сегодня. Она доступна в онлайн-версии.
Душевнобольной Parry
В 1972 году американский психиатр и учёный из Стэнфорда Кеннет Колби разработал программу Parry, которую некоторые пользователи называли улучшенной версией Eliza. Считалось, что Parry обладала «личностью» и большей вариативностью в диалоге, чем её предшественница. Бот определял ответы пациента на основе системы предположений и «эмоциональных реакций», активируемых изменением веса в высказываниях пользователя.
В 1979 году Parry приняла участие в эксперименте с психиатрами. Пять опытных врачей-психиатров общались с чат-ботом, пытаясь определить, с кем они переписываются — с параноидальным пациентом или компьютерной симуляцией паранойи. В половине случаев Parry удалось обмануть специалистов, несмотря на его долгие ответы и неспособность выражать эмоции.
В январе 1973 года Parry и Eliza встретились в ARPANET для общения. Вот что из этого вышло:
Eliza: Добрый вечер. Расскажите мне о своих проблемах.
Пожалуйста, завершайте ввод точкой или знаком вопроса.
Parry: Люди иногда действуют мне на нервы.
Eliza: Я не уверена, что понимаю вас полностью.
Parry: Вам следует быть более внимательным.
Eliza: Предположим, вам следует быть более внимательным.
Parry: Вы имеете право на собственное мнение.
Eliza: С чего вы взяли, что я имею право на собственное мнение?
Jabberwacky — первый бот-интеллектуал
В 1988 году британский программист Ролло Карпентер создал, по его утверждению, «первого чат-бота с искусственным интеллектом». Бот должен был имитировать естественное человеческое общение в интересной, развлекательной и юмористической манере. Его исходный код был написан на предметно-ориентированном языке программирования — CleverScript.
Jabberwacky хранил информацию о диалоге с пользователем и находил наиболее подходящую фразу для ответа, используя метод сопоставления контекстных шаблонов. Главное отличие от предшественников — принцип обратной связи, позволяющий ориентироваться не только на строго заданные правила, но и на контекст диалога.
При этом база Jabberwacky пополнялась самими пользователями. Его можно было обучить английскому сленгу, словесным играм и шуткам.
В 2008 году Ролло Карпентер запустил Cleverbot — продвинутую версию Jabberwacky. Новый бот обучался прямо в процессе общения с пользователями, что позволяло ему генерировать связанные с контекстом общения ответы.
Dr. Sbaitso
(SoundBlaster Acting Intelligent Text-to-Speech Operator)
«Доктора Сбайтсо» взрастили инженеры Creative Labs, специально для операционки MS-DOS в 1992 году. Это была ещё одна программа, имитирующая психолога. Но в отличие от предшественников, в неё была зашита технология синтеза речи, которая позволяла озвучивать текст.
С Dr. Sbaitso можно поговорить и сейчас.
Who the f*ck is ALICE?
Artificial Linguistic Internet Computer Entity
В 1995 году Нобелевский лауреат Ричард Уоллес разработал чат-бота, используя инструменты обработки естественного языка (NLP) и язык AIML (Artificial Intelligence Markup Language), созданный специально для этой цели.
AIML — это диалект XML, основанный на системе сопоставления шаблонов (pattern matching). Следовательно, бот, написанный на AIML, соотносит вводимые пользователем данные с набором образцов, а затем генерирует ответ на основе совпавшего шаблона.
Основа ALICE — метод сопоставления шаблонов. Её база знаний включала около 41 тысячи шаблонов с вопросами и соответствующими ответами. Позже на основе ALICE разработали много других ботов, использующих метод сопоставления шаблонов.
SmartChild — первый полезный чат-бот
Был разработан в 2001 году компанией ActiveBuddy для платформ обмена быстрыми сообщениями, таких как AOL IM и MSN Messenger.
Это был настоящий прорыв — впервые чат-бот мог не просто развлекать людей, а помогать им в решении повседневных задач. Пользователи получили доступ к афишам кинотеатров, результатам спортивных соревнований, котировкам акций, новостям и прогнозу погоды.
Mitsuku — лучше всех проходит тест Тьюринга
Чат-бот, который создал Стив Уорсвик в 2005 году. Mitsuku пять раз получал Премию Лебнера как чат-бот, которые лучше всех справился с тестом Тьюринга.
Mitsuku написан на языке AIML — том самом, который впервые использовали при разработке ALICE. Позже он получил новое имя — Kuki. Кроме чата, у него есть свой ютуб-канал и аккаунт в Discord.
IBM Watson — младший брат Вассермана
Это уже не просто чат-бот, а целый суперкомпьютер, оснащённый системой искусственного интеллекта и созданный для поиска ответов на вопросы пользователя.
Широкой публике Watson стал известен после участия в телеигре Jeopardy! — аналоге «Своей игры» на российском телевидении. Он установил новый рекорд по заработанной за программу сумме и значительно превзошёл соперников-людей по числу правильных ответов.
Woebot — ещё один бот-психолог
Это терапевтический бот, созданный в 2017 году командой психологов из Стэнфорда и экспертов по ИИ. Предшественниками были виртуальный терапевт Ellie и арабоязычный терапевтический бот Karim.
Woebot ведёт короткие ежедневные беседы, проводит психологические игры и использует другие инструменты, которые позволяют людям улучшить своё психическое здоровье. Бот позиционируется как замена специалиста в тех случаях, когда пациент не может регулярно оплачивать психотерапию или не хочет общаться с живым человеком.
Виртуальные помощники
Отдельную страницу в историю чат-ботов занимают виртуальные помощники от крупных компаний, таких как Apple, Google и Amazon.
Siri
Была создана Международным центром искусственного интеллекта SRI на основе технологии компании Nuance Communications. Впервые была представлена публике в 2010 году в виде отдельного приложения для iPhone, но разработка велась с 2007 года. Компания Apple почти сразу же выкупила новое приложение для интеграции в свои гаджеты.
Google Now
В 2012 году Google представил проект Google Now, который в 2016 году сменил название на Google Assistant. Оригинальная версия Google Now стала одним из первых сервисов, анализирующих данные о времени суток, местоположении и предпочтениях пользователя для предоставления необходимой информации в чате.
Google Assistant повысил персонализацию и добавил возможность пользователю вступать с ним в диалог.
Alexa
Интеллектуальный личный помощник, созданный Amazon в 2014 году. Сейчас он встроен в различные девайсы компании, такие как Amazon Echo (умная колонка), Echo Dot (её компактная версия), Echo Show (интеллектуальный дисплей) и другие. Alexa умеет поддерживать разговор с пользователем, отвечать на его вопросы, зачитывать погоду, новости и выполнять другие действия.
Появление Alexa и её интеграция в умные устройства обеспечило прогресс в области интернета вещей (IoT), позволив пользователям интерактивно взаимодействовать с ними и получать необходимую информацию, а не только удалённо включать и выключать гаджеты.
Cortana
Виртуальный помощник, созданный Microsoft. Впервые был продемонстрирован на Microsoft Build 2014. После этого компания интегрировала его в смартфоны с Windows Mobile и компьютеры с Windows 10.
Cortana реагировала на голосовые команды и выполняла разные действия — определяла текущее время и месторасположение, создавала напоминания, составляла списки дел, общалась в чате, искала информацию и так далее.
Bixby
Голосовой цифровой помощник Samsung, выпущенный в 2017 году. Ассистент послужил заменой вышедшему в 2012 году S Voice. Сейчас с помощью Bixby можно управлять смартфоном, умными часами, планшетом и наушниками Samsung.
LLM: не просто рывок, а прорыв
С появлением больших языковых моделей (LLM) в истории с чат-ботами произошла настоящая революция. LLM позволили не просто отвечать на вопросы пользователей и выполнять их команды, но и генерировать текст для решения конкретных задач на основе запроса человека. Например, составлять юридические документы или писать стихи.
Что такое LLM?
Это модель глубокого обучения, содержащая миллионы параметров и прошедшая обучение на большом количестве текстовых данных. LLM анализирует запрос пользователя, или промт, и подбирает (предсказывает) наиболее подходящее для него следующее слово в своём ответе. Полученная строка вновь подаётся на вход в модель и она подбирает следующее слово. Процесс повторяется сотни и тысячи раз. Так формируется с виду вполне осмысленный ответ.
GPT (generative pre-trained transformer)
Главный амбассадор чат-ботов, определивший их популярность в последние два года. Модель GPT разрабатывается компания OpenAI. GPT-1 была представлена в 2018 году. Она содержала более 110 миллионов параметров и была предварительно обучена на большом массиве текстовых данных с использованием архитектуры Transformer.
Если говорить просто, то Transformer состоит из двух компонентов: энкодера и декодера, а также механизма внимания, который используется для учёта контекста. В энкодер на вход передаётся последовательность токенов, то есть слов и предложений, которая преобразуется в векторное представление. После некоторых вычислений внутри модели векторное представление передаётся в декодер, где генерируется выходная последовательность символов, то есть ответ.
GPT-1 могла генерировать простые тексты, которые по структуре и стилю воспринимались как написанные человеком. Но, были и недостатки: ограниченное понимание контекста и неспособность обрабатывать сложные логические связи. В некоторых случаях она могла генерировать неправдоподобные или несвязные ответы.
Следующая ступень — GPT-2 (2019) — включала уже 1,5 миллиарда параметров. Основой сохранилась архитектура Transformer. Основное преимущество GPT-2 — учёт контекста при общении.
Настоящий прорыв случился в 2020 году. Open AI представила GPT-3 и GPT-3.5 Turbo. Это модели, которые включали 175 миллиардов параметров. Сгенерированный ими текст сложно отличить от созданного человеком. Именно на основе GPT-3.5 Turbo появился ChatGPT, набравший большую популярность за последние пару лет.
В 2023 году была выпущена GPT-4 и GPT-4 Turbo, которую уже можно протестировать в подписке ChatGPT Plus. Она включает в себя новую мультимодальную версию модели, воспринимающую на вход не только текст, но и изображения.
Bard
Ответом на выпуск ChatGPT от OpenAI стал Bard от Google AI, анонсированный в 2022 году. Это чат-бот, работающий на большой языковой модели LaMDA.
Bard ещё находится в стадии эксперимента, но, как говорит сам бот, он обучается на наборе данных из более чем 1,5 триллиона слов и сейчас способен генерировать текст на более чем 100 языках.
Начиная с марта 2023 года он доступен для пользователей. Bard имеет несколько интересных функций, отличающих его от ChatGPT, например возможность экспортировать ответы в Gmail или Google Docs.
Подробнее про LaMDA можно узнать из видео:
GigaChat
Российский чат-бот, созданный в 2022 году разработчиками «Сбера». Основу бота составляет мультимодальная нейросеть NeONKA (NEural Omnimodal Network with Knowledge-Awareness), которая включает в себя модели ruGPT-3.5, Kandinsky 2.1, ruCLIP и FRED-T5.
Модель обучена на большом количестве текстовых данных на русском языке и решает различные задачи пользователей: ведёт с ними диалог, пишет код, рисует изображения и так далее.
ERNIE Bot
Китайский чат-бот, представленный в 2023 году компанией Baidu. ERNIE Bot был разработан на основе моделей серии ERNIE (enhanced representation through knowledge integration) и PLATO (pre-trained dialogue generation model).
Среди ключевых технологий — дообучение с учителем (supervised fine-tuning), обучение с подкреплением на основе человеческих предпочтений (reinforcement learning with human feedback), обучение на основе запросов (prompt learning), knowledge enhancement, retrieval enhancement и dialogue enhancement.
Ernie Bot ориентирован на китайский рынок и используется преимущественно внутри страны. Его главная особенность и отличие от конкурентов — отличное понимание китайского языка за счёт обучения на большом локальном наборе данных.
Что дальше
Если коротко, то вся эта история с чат-ботами стремительно движется к так называемому универсальному искусственному интеллекту. Это видно по анонсам GPT-4 Turbo от Open AI и Grok от X. Новые модели не просто дают более точные ответы на запросы пользователей, но и учатся взаимодействовать с модальностями, отличными от текста, например с изображения или видео.
Интерес к чат-ботам проявляют не только пользователи и компании, но и учёные, которые продолжают исследовать и улучшать большие языковые модели, лежащие в основе современных чат-ботов.
Просто взгляните, как с 2016 года выросло число научных публикаций по этой теме:
Лидеры по числу исследований в области интеллектуальных помощников — США и Великобритания:
Но не стоит списывать со счетов и другие страны, чат-боты которых ориентированы в первую очередь на локальный рынок, например Россию и Китай. В обеих странах существуют свои виртуальные помощники, обученные на большом объёме местных текстов, что делает их ответы точнее для пользователей, использующих локальный язык.
Больше интересного про код — в нашем телеграм-канале. Подписывайтесь!