Простыми и понятными словами объясним всё!

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
Search
Close this search box.

Рекомендация

Когда-нибудь здесь будет размещён рекомендательный блок, а пока...

"Образованный человек тем и отличается от необразованного, что продолжает считать свое образование незаконченным."

Константин Симонов.

Что такое большая языковая модель (LLM) и как она пишет тексты?

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

Терминология.

Что означает аббревиатура LLM?

Аббревиатура LLM происходит от английского выражения Large Language Model, которое переводится как «большая языковая модель». Слово «большая» указывает на масштаб модели: современные LLM могут содержать огромное количество настраиваемых параметров и обучаться на очень больших объёмах данных с использованием мощных вычислительных систем.

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

Что такое большая языковая модель?

Большая языковая модель — это крупная модель машинного обучения, обученная на больших объёмах текстовых данных и способная обрабатывать и создавать текст на основе закономерностей, найденных во время обучения.

Современные LLM могут выполнять множество задач: отвечать на вопросы, продолжать текст, переводить его, менять стиль, составлять краткие пересказы, извлекать информацию, объяснять сложные темы и писать программный код.

При этом языковая модель и чат-бот — разные понятия. LLM является самой моделью, а ChatGPT и похожие сервисы предоставляют интерфейс и дополнительные функции для взаимодействия пользователя с такой моделью.

Что такое LLM простыми словами?

LLM простыми словами — это система, которая обучается на огромном количестве текстов, находит связи между их частями и затем использует эти связи для обработки запросов и создания нового текста.

Получив вопрос или инструкцию, модель анализирует доступный текст и последовательно формирует подходящее продолжение.

Мужчина общается с языковой моделью
Мужчина общается с языковой моделью

Как большая языковая модель учится работать с текстом?

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

Модель работает с текстом в специальном виде. Сначала он разбивается на небольшие части, которые называются токенами.

Что такое токены?

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

Например, короткое слово может превратиться в один токен, а длинное — в несколько. Конкретное разбиение зависит от системы токенизации, используемой в данной модели.

Каждому токену присваивается числовое представление. В таком виде данные уже может обрабатывать нейросеть.

Поэтому количество слов и количество токенов в одном тексте обычно различаются. Для работы LLM важны именно токены, а не привычное человеку количество слов.

Чему учится языковая модель?

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

Например, модель получает начало фразы:

«Столица Франции — …»

Она рассчитывает, какие токены могут продолжить эту последовательность. Во время обучения правильное продолжение уже известно, поэтому результат модели можно проверить.

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

Такой процесс повторяется огромное количество раз.

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

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

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

Что происходит после основного обучения?

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

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

Благодаря такой настройке LLM может выполнять команды вроде «объясни простыми словами», «составь список», «сократи текст», «исправь ошибки» или «напиши ответ в деловом стиле».

В сильно упрощённом виде подготовка LLM выглядит так:

  1. собираются большие объёмы текстовых данных;
  2. тексты разбиваются на токены;
  3. модель получает последовательности токенов;
  4. она пытается определить подходящее продолжение;
  5. результат сравнивается с нужным продолжением;
  6. параметры модели корректируются;
  7. процесс повторяется огромное количество раз;
  8. после основного обучения модель дополнительно настраивают для работы с запросами пользователей.

В результате получается модель с огромным количеством настроенных параметров. Именно эти параметры используются позднее при обработке запросов.

Девушка объясняет работу LLM
Девушка объясняет работу LLM

Как LLM создаёт ответ на запрос?

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

Предположим, пользователь спрашивает:

«Почему зимой становится холоднее?»

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

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

Так ответ создаётся последовательно, токен за токеном. Модель не получает сразу готовый абзац и не извлекает его целиком из своей памяти.

Как модель выбирает следующий токен?

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

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

Поэтому один и тот же вопрос может несколько раз получить разные формулировки ответа. Основной смысл при этом может сохраняться, а конкретные слова, примеры и порядок предложений — меняться.

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

Что такое контекстное окно?

Контекстное окно — это максимальный объём токенов, который модель может учитывать при одной обработке текста.

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

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

Контекст важно отличать от обучения. Информация, находящаяся в текущем разговоре, может влиять на ответ модели, но это само по себе не означает, что она становится частью обученных параметров LLM.

Специалисты проверяют ответ языковой модели
Специалисты проверяют ответ языковой модели

Почему LLM не является базой знаний с готовыми ответами?

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

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

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

Поэтому факт обычно не хранится внутри LLM как отдельная запись с названием и готовым ответом. Информация распределена по параметрам модели и проявляется при обработке конкретного запроса.

Получив вопрос, LLM формирует новый текст токен за токеном на основе своих параметров и текущего контекста.

Именно поэтому один вопрос можно задать разными способами и получить разные по форме ответы. Можно попросить модель объяснить одну тему кратко, подробно, простыми словами, в виде списка или обычного текста. Ответ каждый раз будет формироваться заново.

Откуда тогда LLM знает факты?

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

Такие повторяющиеся связи постепенно влияют на параметры модели. После обучения LLM может использовать их при создании ответа.

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

При этом LLM обычно не может определить конкретный текст, из которого она получила такой факт. Она также может воспроизвести сведения неточно, перепутать похожие факты или создать ошибочный ответ.

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

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

Почему LLM может придумывать факты?

Во время генерации языковая модель подбирает подходящее продолжение текста. При этом правдоподобное продолжение не всегда оказывается фактически верным.

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

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

Формулировка при этом может выглядеть уверенной и грамотной. Стиль ответа не показывает, насколько достоверна содержащаяся в нём информация.

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

Заключение.

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

Когда пользователь отправляет запрос, готовая LLM преобразует его в токены, учитывает доступный контекст и начинает последовательно создавать ответ. Каждый следующий токен выбирается с учётом уже имеющегося текста.

Общий принцип можно представить так: тексты → токены → обучение → параметры модели → запрос пользователя → расчёт продолжения → последовательное создание ответа.

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

Источники.

  1. «Внимание — всё, что вам нужно» — Ашиш Васвани, Ноам Шазир, Ники Пармара и другие, сборник конференции Advances in Neural Information Processing Systems.
  2. «Языковые модели обучаются по нескольким примерам» — Том Браун, Бенджамин Манн, Ник Райдер и другие, сборник конференции Advances in Neural Information Processing Systems.
  3. «Что такое большие языковые модели?» — IBM.
  4. «Что такое инференс больших языковых моделей?» — IBM.
  5. «Что такое контекстное окно?» — IBM.
  6. «Что такое большая языковая модель?» — Google Cloud.

Поделиться