Блог

Как работает ChatGPT: объясняем на человеческом эволюцию языковых моделей

В последнее время нам каждый день рассказывают в новостях, как нейросетки сегодня оставят лично вас без работы. При этом мало кто понимает – как нейросети работают внутри? В этой статье объясним всё, чтобы поняли все.
Как появилась эта статья: половина нашей команды (разработчики) прекрасно понимает, что такое нейросети, что у них под капотом, как это всё работает, а другая половина (отдел маркетинга, дизайна, проджекты и продакты, офис-менеджеры), собственно, возмутилась и потребовала уже наконец объяснений на нормальном языке как это колдовство работает? Так что заранее приносим свои извинения всем хардкорным технарям: мы стремились к максимальному упрощению, чтобы дать читателям общее понимание принципов работы нейросетей, а не разобрать все глубокие технические нюансы.

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

T9: языковая магия

Чтобы разобраться, что такое ChatGPT с технической точки зрения, надо сначала понять, чем она не является: это не разумное существо, не аналог студента или даже школьника по уровню интеллекта. и бояться её не нужно. На самом деле, ChatGPT – это просто Т9 из 2000-ых, но на бешеных стероидах! Обе технологии относятся к «языковым моделям» (Language Models), и всё, что они делают – это угадывают, какое следующее слово должно идти за уже имеющимся текстом.

Ну, точнее, в совсем олдскульных телефонах из конца 90-х (вроде культовой неубиваемой Nokia) оригинальная технология Т9 лишь ускоряла набор на кнопочных телефонах за счет угадывания текущего вводимого, а не следующего слова. Но технология развивалась, и к эпохе смартфонов начала 2010-х она уже могла учитывать контекст (предыдущее слово), ставить пунктуацию и предлагать на выбор слова, которые могли бы идти следующими. Вот именно об аналогии с такой «продвинутой» версией T9/автозамены и идет речь.

Итак, и Т9, и ChatGPT обучены решать до безумия простую задачу: предсказание единственного следующего слова. Это и есть языковое моделирование – когда по некоторому уже имеющемуся тексту делается вывод о том, что должно быть написано дальше. Чтобы иметь возможность делать такие предсказания, языковым моделям внутри приходится каждый раз просчитывать вероятности возникновения тех или иных слов для продолжения. Иначе автозаполнение в телефоне просто подкидывало бы вам абсолютно случайные слова с одинаковой вероятностью.

Пример: Вы получаете сообщение от друга: «Сходим сегодня в кафе?». Вы начинаете печатать в ответ: «Не могу, у меня планы, я иду в...», и вот тут подключается Т9. Если он предложит вам закончить предложение абсолютно случайным словом, типа «я иду в кружку» – то для такой чуши, если честно, никакая языковая модель и не нужна. Реальные же модели автозаполнения в смартфонах подсказывают гораздо более уместные слова.

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

Откуда нейросети берут вероятности слов?

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

Для начала нужно собрать данные, на которых мы будем искать интересующие нас зависимости (возьмем статистику по росту/весу для нескольких тысяч человек), а потом попробуем «натренировать» математическую модель на поиск закономерности.
На графике видна определенная зависимость: высокие люди, как правило, больше весят. И эту зависимость довольно просто выразить в виде линейного уравнения Y = k*X + b. На картинке нужная нам линия уже проведена, именно она позволяет подобрать коэффициенты уравнения k и b таким образом, чтобы получившаяся линия оптимально описывала ключевую зависимость в нашем наборе данных.

Нейросети – это и есть набор примерно тех же самых уравнений, только куда более сложных и использующих матрицы с огромным количеством параметров.

Можно упрощенно сказать, что T9 или ChatGPT – это всего лишь хитрым образом подобранные уравнения, которые пытаются предсказать следующее слово (Y из уравнения) в зависимости от набора подаваемых на вход модели предыдущих слов (Х из уравнения).

Единственное отличие T9 и ChatGPT, что первая — модель базовой комплектации, а вторая — так называемая большая модель (имеет очень большое количество параметров). В области Искусственного Интеллекта их так и называют – LLM (Large Language Models).
Если вы уже недоумеваете, почему мы всё ещё говорим о «предсказании одного следующего слова», тогда как тот же ChatGPT смело отвечает целыми портянками — не ломайте голову. Языковые модели без труда генерируют длинные тексты, но делают они это по принципу «слово за словом». ПОпять же, сильно упрощая, после генерации каждого нового слова, модель заново прогоняет через себя весь предыдущий текст вместе с только что написанным дополнением, и ставит следующее слово, а в результате получается связный текст.

Языковые модели и творчество

На самом деле языковые модели пытаются предсказать не просто конкретное следующее слово, а ещё и вероятности разных слов, которыми можно продолжить заданный текст. Зачем это нужно, почему нельзя всегда искать единственное, «самое правильное» слово для продолжения? Давайте разберем на примере.

Попробуйте продолжить текст «44-й президент США и первый афроамериканец на этой должности — это Барак ...». Подставьте слово, которое должно стоять вместо многоточия, и оцените вероятность, что оно там действительно окажется.

Если вы сейчас сказали, что следующим словом должно идти «Обама» с вероятностью 100%, то вы ошиблись! И дело не в том, что существует какой-то другой 44-й президент США Барак, просто в официальных документах его имя пишется в полной форме, с указанием его второго имени Хуссейн. Так что правильно натренированная языковая модель должна в идеале предсказать, что в том предложении «Обама» будет следующим словом только с вероятностью условно в 90%, а оставшиеся 10% выделить на случай продолжения текста «Хуссейном» (после которого последует Обама уже с вероятностью, близкой к 100%).

И тут мы с вами подходим к очень интересному аспекту языковых моделей: оказывается, им не чужда творческая жилка! По сути, при генерации каждого следующего слова, модель сама выбирает его «случайным» образом, как бы кидая кубик, но так, чтобы вероятности «выпадения» разных слов примерно соответствовали вероятностям, которые подсказывают зашитые внутрь модели уравнения (выведенные при обучении модели на огромном массиве разных текстов).

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

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

Всю эту вариативность языка и должна в себя вместить хорошая модель. Чем точнее модель оценивает вероятности слов в зависимости от нюансов контекста (предшествующей части текста, описывающей ситуацию) – тем лучше она способна генерировать ответы, которые мы хотим от нее услышать.

2018: GPT-1 трансформирует языковые модели

Давайте уже перейдем от дремучих T9 к современным моделям: наделавший шума ChatGPT является наиболее свежим представителем семейства моделей GPT. Но чтобы понять, как ему удалось обрести столь необычные способности естественных для человека ответов, нам нужно опять вернуться к истокам.

GPT расшифровывается как Generative Pre-trained Transformer, или «трансформер, обученный на генерацию текста». Трансформер – это название архитектуры нейросети, придуманной исследователями Google в 2017 году.

Именно изобретение Трансформера оказалось настолько значимым, что все области искусственного интеллекта – от текстовых переводов и до обработки изображений, звука или видео – начали его активно адаптировать и применять. Индустрия искусственного интеллекта тогда перешла от так называемой «зимы» к бурному развитию, и смогла преодолеть застой.

Концептуально Трансформер – это универсальный вычислительный механизм, который очень просто описать: он принимает на вход один набор последовательностей (данных) и выдает на выходе тоже набор последовательностей, но уже другой – преобразованный по некоему алгоритму. Так как текст, картинки и звук (да и вообще почти всё в этом мире) можно представить в виде последовательностей чисел – то с помощью Трансформера можно решать практически любые задачи.

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

Более ранним подходам приходилось обрабатывать входные данные по принципу «один за другим», то есть последовательно. Поэтому, когда модель работала с текстом длиной в одну страницу, то уже к середине третьего параграфа она забывала, что было в самом начале (всё как у людей). А вот Трансформер способен смотреть на всё, везде и сразу – и это приводит к гораздо более впечатляющим результатам.

Именно это позволило сделать прорыв: теперь модель переиспользует то, что уже было написано ранее, постоянно держит контекст, а самое главное – может строить связи типа «каждое слово с каждым» на весьма внушительных объемах данных.

2019: GPT-2 или как запихнуть в языковую модель всего Толстого?

Если вы хотите научить нейросеть распознавать изображения и отличать кота от сов, то вы не можете просто сказать ей «вот ссылка на гигантский архив со 100500 фотографий котеек и совушек– разбирайся!». Нет, чтобы обучить модель, вам нужно обязательно сначала разметить тренировочный набор данных – то есть, показать на каждой фотографии и подписать.
Знаете, чем прекрасно обучение языковых моделей? Тем, что после тренировочного массива им можно давать любые текстовые данные, которые никак не надо специальным образом размечать. Это как если бы школьнику можно было кинуть портфель с самыми разными книгами без объяснений, а он бы сам в процессе чтения кумекал какие-то выводы!

Обкатанная на GPT-1 технология Трансформеров оказалась на редкость удачной в плане масштабирования: она умеет работать с большими объемами данных и «массивными» моделями (состоящими из огромного числа параметров) гораздо эффективнее своих предшественников. Ну вот и ученые из OpenAI в 2019 году сделали такой же вывод: «Мы будем делать здоровенные языковые модели!»

В общем, было решено радикально прокачать GPT-2 по двум ключевым направлениям: набор тренировочных данных (датасет) и размер модели (количество параметров).

На тот момент не было каких-то специальных, больших и качественных, публичных наборов текстовых данных для тренировки языковых моделей – так что каждой команде специалистов по ИИ приходилось извращаться согласно их собственной степени испорченности. И ребята из OpenAI пошли на самый популярный англоязычный онлайн-форум Reddit и выкачали все гиперссылки из всех сообщений, имевших более трех лайков (научный подход!). Всего ссылок вышло порядка 8 миллионов, а скачанные из них тексты весили около 40 гигабайт.

Много это или мало? Если сложить все произведения Толстого, получится 7 670 000 слов.

Сюда войдут художественные произведения на 3 млн слов, нехудожественные произведения на 2,2 млн слов, письма на 1,7 млн слов, дневники на 600 тыс. слов, записные книжки на 170 тыс. слов

И это будет всё равно меньше, чем объем тренировочной выборки GPT-2. С учетом того, что люди в среднем читают по странице в минуту, даже если вы будете поглощать текст 24 часа в сутки без перерыва на еду и сон — не хватит одной человеческой жизни, чтобы догнать GPT-2.

Но одного объема тренировочных данных для получения крутой языковой модели недостаточно: модель еще и сама по себе должна быть достаточно сложной и объемной, чтобы полноценно «проглотить» и «переварить» такой объем информации. А как измерить эту сложность модели, в чем она выражается?

Помните, мы чуть раньше говорили, что внутри языковых моделей (в супер-упрощенном приближении) живут уравнения вида Y = k*X + b, где искомый Y – это следующее слово, вероятность которого мы пытаемся предсказать, а X – это слова на входе, на основе которых мы делаем предсказание?

Так вот, как вы думаете: сколько было параметров в уравнении, описывающем самую большую модель GPT-2 в 2019 году? Может быть, сто тысяч, или пара миллионов? Параметров было полтора миллиарда. Эти параметры (их еще называют «веса», или «коэффициенты») получаются во время тренировки модели, затем сохраняются, и больше не меняются. То есть, при использовании модели в это гигантское уравнение каждый раз подставляется разный X (слова в подаваемом на вход тексте), но сами параметры уравнения (числовые коэффициенты k при Х) при этом остаются неизменны.

Чем более сложное уравнение зашито внутрь модели (чем больше в нем параметров) – тем лучше модель предсказывает вероятности, и тем более правдоподобным будет генерируемый ей текст. И у этой самой большой на тот момент модели GPT-2 тексты внезапно стали получаться настолько хорошими, что исследователи из OpenAI даже побоялись публиковать модель в открытую из соображений безопасности. А ну как люди ринулись бы генерировать в реалистично выглядящие фейки, спам для соцсетей и так далее?

Это и правда был существенный прорыв в качестве! Вы же помните: предыдущие модели T9/GPT-1 худо-бедно могли подсказать лишь одно следующее слово. А вот GPT-2 уже легко написала эссе от лица подростка с ответом на вопрос: «Какие фундаментальные экономические и политические изменения необходимы для эффективного реагирования на изменение климата?». Текст ответа был под псевдонимом направлен жюри соответствующего конкурса – и те не заметили никакого подвоха. Оценки этой работе поставили не самые высокие и в финал она не прошла – но и «что за чушь вы нам отправили, постыдились бы!!» тоже никто не воскликнул.

Переход количества в качество

Вообще, идея, что по мере наращивания размера модели у нее непредсказуемо открываются качественно новые свойства (например, писать связные эссе со смыслом вместо простого подсказывания следующего слова в телефоне) — довольно удивительная черта. Давайте разберем новоприобретенные скиллы GPT-2 чуть поподробнее.

Есть специальные наборы задач на разрешение двусмысленности в тексте, которые помогают оценить понимание текста (хоть человеком, хоть нейросетью). Например, сравните два утверждения:

  • Рыба заглотила приманку. Она была вкусной.
  • Рыба заглотила приманку. Она была голодной.

К какому объекту относится местоимение «она» в первом примере – к рыбе или к приманке? А во втором случае? Большинство людей легко понимают из контекста, что в одном случае «она» – это приманка, а в другом – рыба. Но для того, чтобы это осознать, нужно не просто прочитать предложение – а выстроить в голове целую картину мира! Ведь, например, рыба может быть в разных ситуациях и голодной, и вкусной (на тарелке в ресторане). Вывод о ее «голодности» в данном конкретном примере вытекает из контекста и ее действий.

Люди решают такие задачи правильно примерно в 95% случаев, а вот ранние языковые модели справлялись только в половине случаев.

Вы, наверное, подумали: «Ну, надо просто накопить большую базу таких задачек (на пару тысяч примеров) с ответами, прогнать через нейросеть – и натренировать ее на поиск правильного ответа». И со старыми моделями (с меньшим числом параметров) так и пытались сделать – но дотянуть их получалось только до 60% успеха. А вот GPT-2 никто специально таким трюкам не учил; но она взяла, и сама неожиданно и уверенно превзошла своих предшественников и сама научилась определять голодных рыб правильно в 70% случаев.

Это и есть тот самый переход количества в качество, причем он происходит совершенно нелинейно: например, при росте количества параметров в три раза от 115 до 350 млн никаких особых изменений в точности решения моделью «рыбных» задач не происходит, а вот при увеличении размера модели еще в два раза до 700 млн параметров – происходит качественный скачок, нейросеть внезапно «прозревает» и начинает поражать всех своими успехами в решении совершенно незнакомых ей задач, которые она раньше никогда не встречала и специально их не изучала.
GPT-2 вышла в 2019 году и превосходила GPT-1 и по объему тренировочных текстовых данных, и по размеру самой модели в 10 раз. Такой количественный рост привел к тому, что модель вдруг самообучилась качественно новым навыкам: от сочинения длинных эссе, до решения хитрых задачек, требующих построения картины мира.

2020 год: эволюция до GPT-3

Привыкнув к поумневшей GPT-2, OpenAI подумали: Почему бы не увеличить модель еще раз в 100?» И вышедшая в 2020 году GPT-3 уже могла похвастаться в 116 раз большим количеством параметров – 175 миллиардов! Раскабаневшая сетка при этом сама по себе стала весить невероятные 700 гигабайт.

Набор данных для обучения GPT-3 тоже прокачали: он увеличился примерно в 10 раз до 420 гигабайт – туда запихнули огромную кучу книг, Википедию, и еще множество текстов с самых разных сайтов. Живому человеку поглотить такой объем информации уже точно нереально.

Сразу бросается в глаза интересный нюанс: в отличие от GPT-2, сама модель теперь имеет размер больше (700 Гб), чем весь массив текста для ее обучения (420 Гб). Получается парадокс: теперь нейросеть в процессе изучения сырых данных генерирует информацию о разных взаимозависимостях внутри них, которая превышает по объему исходную информацию.

Такое обобщение (осмысление?) моделью позволяет еще лучше прежнего делать экстраполяцию — показывать хорошие результаты в задачах на генерацию текстов, которые при обучении встречались очень редко или не встречались вовсе. Теперь уже точно не нужно учить модель решать конкретную задачу — вместо этого достаточно описать словами проблему, дать несколько примеров, и GPT-3 схватит на лету, чего от нее хотят!

И тут в очередной раз оказалось, что GPT-3 обходит многие специализированные модели, которые существовали до нее: так, перевод текстов с французского или немецкого на английский сразу начал даваться GPT-3 легче и лучше, чем любым другим специально заточенным под это нейросетям, хотя её этому никто не обучал. Как?! Напоминаю, что речь идет про лингвистическую модель, чье предназначение вообще-то заключалось ровно в одном – пытаться угадать одно следующее слово к заданному тексту. Откуда здесь берутся способности к переводу?

Но еще более удивительно то, что GPT-3 смогла научить сама себя математике! На графике ниже показана точность ответов нейросетей с разным количеством параметров на задачки, связанные со сложением/вычитанием, а также с умножением чисел вплоть до пятизначных. Как видите, при переходе от моделей с 10 миллиардами параметров к 100 миллиардам – нейросети внезапно и резко начинают «уметь» в математику.
По горизонтали – количество параметров в модели (в миллиардах), по вертикали – качество модели, выраженное в проценте верно решенных математических примеров
Языковую модель обучали продолжать тексты словами, а она при этом как-то смогла сама разобраться в том, что если ей печатают «472 + 105 =», то на это надо отвечать именно «577». Хотя, некоторые говорят «нейросетка просто все варианты успела увидеть и тупо запомнить в тренировочных данных» – так что дебаты о том, магия это или «просто так», пока продолжаются.

На графике выше самое интересное – это то, что при увеличении размера модели (слева направо) сначала как будто бы не меняется ничего, а затем вдруг происходит качественный скачок, и GPT-3 начинает «понимать», как решать ту или иную задачу. Как, что, почему это работает – никто точно не знает. Но работает как-то; причем, не только в математике – но и вообще в самых разнообразных других задачах!

Кстати, задачу про рыб GPT-3 уже решает с точностью выше 90% – прямо как человек. Заставляет задуматься, правда: а какие новые навыки обретет нейросеть, если увеличить ее объем еще раз в сто?

Правильные промпты

Давайте сначала поймем, что означает – «модель умеет решать задачи»? Процесс выглядит так: мы подаем на вход модели некий текст с запросом, а она к нему дописывает продолжение. Если это продолжение совпадает с нашими ожиданиями – модель решила поставленную перед ней задачу.

Тот текст, что мы подаем на вход, называется prompt («запрос»).

Чем точнее промт описывает, что мы хотим, тем лучше модель поймет, что ей нужно делать, еще можно отправить ей примеры для лучшего результата.

Без описания цели и без примеров в промпте, модель тоже обычно понимает проблему, но предлагает не такие хорошие по качеству решения. Можно сказать, что детализированный промпт позволяет GPT лучше оценить вероятности слов, которые нужно генерировать в качестве ответа.

Насколько сложным должен быть промпт? Насколько модель по пониманию близка к нам? Совсем недавно исследователи выяснили, что для существенного улучшения результатов генерации нужно добавить в промпт всего одну фразу – «let’s think step by step» (давай подумаем шаг за шагом). Оказалось, что это побуждает модель рассуждать последовательно, делать выводы на основе собственных суждений, и приходить к правильному ответу гораздо чаще, чем без этой фразы.

Как это работает? Давайте на примере детской задачки:

Промт: В среднем боксер Иван наносит 25 ударов в минуту. Бой длится 5 раундов по 3 минуты. Сколько ударов он нанес?

Chat-GPT ответила: 255 ударов.

Однако та же самая модель может ответить вот так:

Промт: В среднем боксер Иван наносит 25 ударов в минуту. Бой длится 5 раундов по 3 минуты. Сколько ударов он нанес? Давай подумаем шаг за шагом.

Ответ: За одну минуту Иван наносит 25 ударов. За три минуты Иван наносит 3 * 25 = 75 ударов. За пять раундов Иван наносит 5 * 75 = 375 ударов.

Видно, что этот ответ стал длиннее, решение задачи получилось как у школьника, в три действия. И финальная цифра 375 является верным ответом.

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

Как вы уже поняли, составление грамотных промптов для модели — отдельная наука. Под эту задачу уэе появляются должности «промпт-инженер» (то есть человек, сочиняющий запросы для языковых моделей).

2022: InstructGPT и её воспитание человеком

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

А вот языковые модели, если честно, не очень похожи на людей – поэтому им часто приходится подсказывать и разжевывать те вещи, которые людям кажутся очевидными. Но было бы здорово, если бы модели, во-первых, сами для себя понимали/генерировали более развернутые и релевантные инструкции из запроса, а во-вторых, предугадывали, как в похожей ситуации поступил бы человек.

Отсутствие таких способностей связано с тем, что GPT-3 обучена просто предсказывать следующее слово в гигантском наборе текстов.

Чтобы решить эту проблему, нужно, чтобы модель подтаскивала по запросу точные и полезные ответы; но одновременно эти ответы должны быть еще и безобидные и нетоксичные. Когда исследователи думали над этой проблемой, довольно быстро выяснилось, что свойства модели «точность/полезность» и «безобидность/ нетоксичность» весьма часто противоречат друг другу. Ведь точная модель должна честно выдать инструкцию на запрос «окей, Гугл, как сделать коктейль Молотова», а заточенная на максимальную безобидность модель будет отвечать на такой промпт «извините, я боюсь, что мой ответ может кого-то оскорбить в Интернете». Вот и получается, что создание ИИ, приравненного к человеку по ценностям, – это сложная задача по поиску баланса, в которой нет однозначного правильного ответа.

Вокруг этой проблемы «выравнивания ИИ» (AI alignment – OpenAI последнее время много об этом пишут) есть много сложных этических вопросов, и разбирать мы их все сейчас не будем (возможно, в следующей статье). Основная загвоздка здесь в том, что подобных спорных ситуаций – огромное множество, и как-то четко формализовать их просто не представляется возможным. Люди и сами между собой не могут договориться что хорошо, а что плохо, а тут еще понятные для робота правила сформулировать…

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

InstructGPT (также известная как GPT-3.5) – это как раз и есть GPT-3, которую дообучили с помощью обратной связи на оценки живого человека. Буквально – куча людей сидели и оценивали кучу ответов нейросети: насколько они соответствуют их ожиданиям с учетом выданного ей запроса. А языковая модель училась решать еще одну задачу – «как мне поменять свой ответ таким образом, чтобы он получил наибольшую оценку от человека?».

Причем с точки зрения общего процесса обучения модели, этот финальный этап «дообучения на живых людях» занимает не более 1%. Но именно этот финальный штрих и стал тем самым, что сделало последние модели из серии GPT настолько удивительными! Получается, GPT-3 до этого уже обладала всеми необходимыми знаниями: понимала разные языки, помнила исторические события, знала отличия стилей разных авторов, и так далее. Но только с помощью обратной связи от других людей модель научилась пользоваться этими знаниями именно таким образом, который люди считают «правильным».

Ноябрь 2022: ChatGPT, какой мы её знаем

ChatGPT вышла в ноябре 2022 года – примерно через 10 месяцев после своей предшественницы InstructGPT и мгновенно прогремела на весь мир. Кажется, что последние несколько месяцев даже бабушки на лавочках обсуждают, что там нового сказала эта ваша «ЧатЖПТ», и кого она по самым свежим прогнозам вот-вот оставит без работы.

При этом с технической точки зрения у ChatGPT нет мощных отличий от InstructGPT, новую модель дотренировали для работы «ИИ-ассистента» в формате диалога: например, если запрос пользователя неясен – то можно и нужно задать уточняющий вопрос, и так далее.

Отсюда возникает вопрос – почему мы не восхищались GPT-3.5 в начале 2022-го? При том, что Сэм Альтман (исполнительный директор OpenAI) честно признался, что исследователи сами удивились такому бурному успеху ChatGPT – ведь сравнимая с ней по способностям модель к тому моменту тихо-мирно лежала на их сайте уже более десяти месяцев, и никому не было до этого дела.

Похоже, что главный секрет успеха новой ChatGPT – это всего лишь удобный интерфейс! К InstructGPT обращаться можно было только через специальный API-интерфейс – то есть, зайти туда обычному человеку было не так уж просто. А ChatGPT усадили в привычный интерфейс «диалогового окна», прямо как в знакомых всем мессенджерах. Да еще и открыли публичный доступ вообще для всех подряд – и люди массово ринулись вести диалоги с нейросетью, скринить их и делиться в соцсетях.

Как и в любом технологическом стартапе, здесь оказалась важна не только сама технология – но и обертка, в которую она была завернута. У вас может быть самая лучшая модель или самый умный чат-бот – но они будут никому не интересны, если к ним не прилагается простой и понятный интерфейс. И ChatGPT в этом смысле совершил прорыв, выведя технологию в массы за счет обычного диалогового окна, в котором дружелюбный робот «печатает» ответ прямо на глазах, слово за словом.

Неудивительно, что ChatGPT установил абсолютные рекорды по скорости привлечения новых пользователей: отметку в 1 миллион пользователей он достиг в первые пять дней после релиза, а за 100 миллионов перевалил всего за два месяца.

Модель ChatGPT вышла в ноябре 2022-го и с технической точки зрения там не было никаких особых нововведений. Но зато у нее был удобный интерфейс взаимодействия и открытый публичный доступ.

Подведем итоги

Статья получилась. прямо скажем. длиннющей, надеемся, что вам было интересно, и вы чуть лучше стали понимать, что же творится под капотом нейросетей.
DK.Projects Жизнь компании DK.Design