Как работает и почему ChatGPT пишет так долго? Отвечаем простыми словами

Как работает и почему ChatGPT пишет так долго? Отвечаем простыми словами

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

Большинство из вас уже знакомы с ChatGPT и его возможностями, однако не все понимают, почему он работает именно так. Откуда появляются те самые ответы? Почему нельзя сразу дать ответ целиком, а приходится ждать, пока он всё «напишет»?

Давайте разберёмся, как работает сама нейросеть. Чтобы было понятнее, мы упростим примеры.

Придумайте историю про медведя в лесу!

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

А теперь попробуем что-то придумать самостоятельно без нейросетей.

Жил-был медведь. Выйдя из зимней спячки он заметил, что его лес сильно преобразился и начал изучать изменения. Видимо, в лесу произошел сильный шторм, ведь множество деревьев были повалены… и так далее.

Человек

У меня получилось так) Можете поделиться своими вариантами в комментариях

Мы берём идею про медведя и начинаем её вести, превращая идею в какой-то сюжет, сюжет в события, события описываем абзацами, абзацы идут предложениями и так далее до подбора слов и написания букв в текстовом редакторе.

Так вот, нейросеть работает точно так же!

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

Как же нейросети по типу GPT генерируют текст?

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

Для примера, спросим у нейросети

Продолжи фразу: ни пуха

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

Пример генерации ответа языковой модели
Пример генерации ответа языковой модели

У алгоритма может быть десятки и тысячи вариантов, как продолжить текст. Каждому из них нейросеть придаёт «вес». Для простого понимание назовём его вероятностью. Так, после слов «Ни пуха» с большей вероятностью дальше будет «ни», а затем «пера», чем «нет» или «воды». Слову «мост» в данном случае может быть присвоена минимальная вероятность, а значит и использоваться оно не будет.

Для полного понимания нам нужно рассмотреть ещё одну схему:

Пример работы GPT
Пример работы GPT

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

1) Нейросеть получает значение «ни пуха»

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

3) Нейросеть получает значение «ни пуха ни»

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

То есть после генерации каждого фрагмента, нейросеть начинает ВЕСЬ процесс сначала. Поэтому не ругайтесь на неё, если она долго что-то обрабатывает =)

Ещё раз остановлюсь и скажу, что данная статья нужна лишь для общего понимания. Тут мы не разбираем токенизацию, енкодеры и декодеры, скрытые слои, формы глубинного обучения и остальное. Одну только токенизацию можно расписать в отдельную статью, ведь GPT делит текст не на слова или буквы, а на токены. Но если вам интересны более подробные объяснения и технические моменты, то пиши в комменты — что-нибудь придумаем)

Кстати, мы всё-таки спросили у ChatGPT наш вопрос и вот что получили:

Ответ ChatGPT на «Продолжи фразу: ни пуха» (1)
Ответ ChatGPT на «Продолжи фразу: ни пуха» (1)

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

Ответ ChatGPT на «Продолжи фразу: ни пуха» (2)
Ответ ChatGPT на «Продолжи фразу: ни пуха» (2)

И тут уже нейросеть раскрыла нам даже перевод на английский язык, но основной ответ по-прежнему верный.

Давайте вернёмся к нашим (баранам) медведям. Попросим нейросеть написать историю по точно таким же вводным, которые были у нас в начале статьи.

История про медведя в лесу от ChatGPT. Аж слёзы навернулись
История про медведя в лесу от ChatGPT. Аж слёзы навернулись

Давайте разберем самые первые слова истории, написанной нейросетью:

Однажды, в глубоком лесу жил один медведь.

ChatGPT

И для сравнения возьмём начало нашей историю, придуманной человеком:

Жил-был медведь.

Человек

Скажите же, вы слышали такое начало уже сотни, если не тысячи раз? Жил-был старик… Однажды в древнем царстве… В интернете даже есть мемы на это явление.

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

Увы, никакой магии, хотя радости данная технология вызывает не мало. Кстати о радостях: один из пользователей Reddit подключил ChatGPT к The Elder Scrolls V: Skyrim и смог настроить всё таким образом, чтобы игровые персонажи отвечали ему на любой вопрос, сказанный голосом. А это уже больше похоже на магию вне Хогвартса!

3
4 комментария

Время переименовывать VC в ChatGPT

1
Ответить

та не медленно GPT пишет

Ответить

Тут больше шла речь про то, почему ChatGPT пишет по "одному слову", а не выдает весь ответ сразу)

Ответить

GPT-4 пишет медленно, это сказывается на комфорте работы с ним.

Ответить