Современные языковые модели (large language models) стали ключевым элементом в развитии искусственного интеллекта и обработки естественного языка.
Модели, основанные на глубоком обучении и архитектуре трансформеров, способны генерировать текст, отвечать на вопросы, писать код, создавать художественные произведения и даже участвовать в логических рассуждениях.

Освоение ключевых концепций, лежащих в основе LLM, позволяет глубже осознать их возможности и ограничения. В этом материале мы рассмотрим базовые термины и идеи, необходимые для работы с LLM и понимания их роли в современном мире.
Знание фундаментальных принципов, лежащих в основе работы LLM, открывает двери как для исследователей и разработчиков, так и для бизнес-специалистов, студентов и всех, кто хочет эффективно использовать эти технологии в своей практике.
Приятного прочтения!
Токены
Давайте поговорим о токенах — тех самых «атомах», из которых LLM собирают свои текстовые вселенные. Рассмотрим предложение как сложную последовательность, где каждое слово представляет собой отдельный элемент. Нейросетевая модель действует как инструмент точечного анализа, извлекающий и обрабатывающий эти составляющие. Каждый лексический элемент содержит в себе определённый смысловой и структурный потенциал, являясь базовым звеном в общей архитектуре языковой системы. Опираясь на комбинации этих минимальных единиц, модель способна не только интерпретировать входной текст, но и формировать новые связные высказывания, воспроизводя разнообразные формы речевых конструкций — от простых фраз до сложных сюжетных и концептуальных формаций.
Что такое токен?
В контексте LLM токен — это минимальная единица текста, с которой оперирует модель: слово, часть слова, знак препинания или даже пробел.
Модели работают не с текстом напрямую, а с числами, поэтому каждый токен преобразуется в уникальное числовое значение — токен ID из словаря модели.
Например, фраза «Привет, мир!» может быть разбита на токены ["Привет", ",", " ", "мир", "!"] и для модели она разбивается на ещё один список ID токенов [1234, 5678, 452, 9101, 1121].
Как происходит токенизация?
Процесс токенизации можно разделить на три этапа:
Предобработка текста
На этом этапе текст приводится к виду, удобному для дальнейшей обработки.
Происходит: удаление лишних пробелов и переносов строк, нормализация регистра (не всегда; зависит от модели) и обработка специальных символов (например, замена — на -).
Разбиение на токены
Используя токенизатор и его внутренний словарь, текст разбивается на последовательность токенов.
Словарь — это фиксированный набор токенов, известных модели. Например, у GPT-2 он содержит ~50 тыс. токенов.
Кодирование в токен-ID
Каждому токену ставится в соответствие уникальный числовой идентификатор — токен-ID, который подаётся на вход модели.
Этот ID используется для поиска соответствующего эмбеддинга слова или подслова в embedding layer модели.

Подходы к токенизации
Word-based tokenization (по словам)
Текст делится на слова как целые единицы.
Исходный текст: «Собака гавкает, кошка прячется.».
Токенизация: ["Собака", " ", "гавкает", ",", " ", "кошка", " ", "прячется", "."]
Этот способ хорош тем, что его просто реализовать и он хорошо работает с частыми словами, но у него довольно ограниченный словарь и если не предусмотрены различные орфографические варианты одного слова, то нейросеть не справится с таким запросом.
Character-based tokenization (по символам)
Текст делится на отдельные символы.
Исходный текст: «Собака».
Токенизация: ["С", "о", "б", "а", "к", "а"]
Данный способ обладает полной гибкостью, то есть любое слово может быть закодировано, но это приводит к очень длинным последовательностям. Размер словаря довольно мал — алфавит нужного языка, но из-за этого модель должна сама учиться собирать слова из букв, что сложно.
Subword tokenization (подсловная токенизация)
Текст делится на подслова — последовательности букв, которые часто встречаются вместе.
Исходный текст: «Собака гавкает, кошка прячется.».
Токенизация: ["Собак", "а", " гавк", "ает", ",", " кошк", "а", " пряч", "ется", "."]

Ограничения по длине контекста

GPT-4.1 — модель с контекстным окном до 1 миллиона токенов. Чтобы опробовать, регистрируйтесь по этой ссылке и получайте 100 000 внутренней валюты для работы не только с GPT-4.1, но и с множеством других моделей! Всё работает без VPN.
Суммарное количество входных и выходных токенов должно укладываться в установленный лимит.
Используются различные стратегии обработки длинного текста:
Слайсинг
Разделение документа на фрагменты (чанки), обработка каждого отдельно. Может использоваться вместе с ранжированием или агрегацией результатов.
Сжатие контекста
Использование алгоритмов извлечения ключевых фрагментов (summary, extraction) перед подачей в модель.
Рефакторинг входных данных
Предварительная фильтрация нерелевантного контента, структурирование информации, использование аннотаций или метаданных.
Долгосрочные кэши и внешние базы знаний
Хранение части контекста во внешней памяти или кэше, с возможностью быстрого доступа при следующих запросах.
Архитектурные основы
Подавляющее большинство современных LLM используют архитектуру Transformer в режиме decoder-only, где модель учится предсказывать следующий токен последовательности на основе всех предыдущих, то есть играют в «угадай следующее слово» на профессиональном уровне.
Этот подход известен как каузальное языковое моделирование: модель смотрит на всё, что вы написали до текущего момента, и пытается предсказать, что будет дальше. Как если бы вы писали сообщение, а нейросеть каждую секунду подталкивала: «Дальше будет... „встреча“», «А теперь — „в пятницу“».
Формула записывается следующим образом:
Здесь модель оценивает условное распределение вероятностей для следующего токена , используя информацию из всей предыдущей последовательности
, ...,
.
Для этого применяется механизм внимания, нейросеть умеет «подсвечивать» важные части текста:
где:
Q — запрос,
— ключ,
— важность,
— размерность ключей.

Этот механизм — дорогой : каждое слово смотрит на все предыдущие. Для текста из 1000 токенов — миллион связей! Это как если бы вы на совещании обсуждали каждую тему со всеми коллегами сразу.
Функция потерь, по которой обучается модель, обычно представляет собой перекрёстную энтропию между прогнозируемым распределением вероятностей и истинным значением целевого токена.
Этот процесс повторяется на протяжении всего корпуса данных, при этом модель постепенно улучшает способность к предсказанию слов, логическим рассуждениям, кодированию и другим задачам.
Масштабирование
LLM — как спорткары: чтобы бить рекорды, нужны три вещи — большой двигатель (параметры), много топлива (данные) и крутая заправка (вычисления).
Закон масштабирования:
где α и β — эмпирические коэффициенты, зависящие от конкретной архитектуры и набора данных. Параметры
Чем больше параметров содержит модель, тем выше её ёмкость — то есть способность запоминать сложные зависимости между входами и выходами. Однако слишком большая модель без достаточного объема данных может полностью переобучиться, вместо того чтобы выявлять общие закономерности.
Данные
Больше данных позволяет модели лучше обобщать, снижает вероятность переобучения и улучшает работу на редких или нестандартных примерах.
Вычисления
Вычислительные ресурсы определяют, насколько глубоко можно обучить модель при заданных N и D. Недостаток C приводит к недообучению, даже если данные достаточно большие.

Эмбеддинги
Эмбеддинг — это числовой вектор, представляющий некоторый дискретный объект (например, слово, предложение или абзац) в многомерном пространстве. Главная идея эмбеддингов заключается в том, чтобы расположить близкие по смыслу элементы менее удалённо друг от друга в этом пространстве.
Например, слова «король» и «царь» должны иметь близкие эмбеддинги, тогда как «король» и «банан» — быть дальше друг от друга.
Как создаются эмбеддинги в LLM?
На этапе входного кодирования текст преобразуется в последовательность токенов , которые затем заменяются на соответствующие им векторы из матрицы эмбеддингов:
где:
— размер словаря,
— размерность эмбеддинга.
Для каждого токена его эмбеддинг
берётся из строки матрицы
под индексом
. Таким образом, входная последовательность становится последовательностью векторов
, где каждый

Эта последовательность передаётся в первый слой модели (например, в блоки трансформера), где начинается обработка с использованием механизма внимания.
Обучение эмбеддингов
Эмбеддинги не задают вручную — модель учит их сама в процессе тренировки. Цель — минимизация функции потерь, чаще всего перекрёстной энтропии.
Сначала модель будет путать «кот» и «кит», потом замечает, что «кот» чаще рядом с «мышью», а «кит» — с «океаном» и разводит их векторы в разные стороны.
Перекрёстная энтропия — это способ оценить, насколько хорошо предсказания модели совпадают с реальностью .
Она штрафует модель , если она уверенно ошибается.
Если модель неуверенна, но в правильном направлении — штраф меньше.
Идеальное предсказание (100% вероятность правильного класса) получает минимальный штраф .
А если модель почти уверенна в неправильном ответе — штраф становится очень большим .
Промежуточные эмбеддинги
Одним из самых удивительных свойств эмбеддингов является возможность выполнять арифметические операции над векторами, отражающими логические и семантические отношения между словами. Например:
король − мужчина + женщина ≈ королева
Это стало возможным благодаря обучению на огромных корпусах текста, где модель сама находит скрытые зависимости между словами и их контекстами. Такие закономерности позволяют использовать эмбеддинги не только для генерации текста, но и для решения задач перевода, анализа тональности, рекомендаций и других задач NLP без явного указания этих целей при обучении.
В многослойных моделях, таких как ChatGPT или Llama✶, каждый слой может формировать свои собственные скрытые представления — так называемые промежуточные эмбеддинги. Они отражают разные уровни абстракции текста:
низкие слои захватывают морфологию и лексику,
средние слои — синтаксис и семантику,
верхние слои — концептуальные связи и контекст на уровне абзаца.
Именно поэтому часто выбирают либо верхний слой, либо комбинируют несколько уровней, чтобы получить наиболее информативное представление.
Контекстное окно
Контекстное окно — это параметр, определяющий максимальное число токенов, которое языковая модель способна обработать за один запрос. Фактически это буфер фиксированного размера, куда попадает вся история диалога.
Например, если модель имеет контекстное окно 8192 токена, то весь текст должен уложиться в этот лимит, а превышение лимита приводит к обрезке контекста (удаляются самые старые данные) или ошибке ContextLengthExceeded.
Структура контекстного окна
Контекстное окно может включать в себя разные компоненты.
Промпт пользователя — текст, введённый пользователем:
«Напиши код для парсинга CSV-файла на Python».
Системный промпт — формат ответа, внутренние инструкции, определяющие поведение модели:
«Пиши ответы в формате JSON/Markdown», «Избегай токсичности», «Соблюдай законы».
История диалога — предыдущие сообщения в чате, которые сохраняются для поддержания контекста разговора.
Генерируемый ответ — часть текста, который создаётся в процессе вывода.

Температура
Температура относится к параметру генерации текста, который влияет на степень случайности либо детерминированности при выборе следующего слова в сгенерированном тексте. Параметр температуры превращает нейросети из занудных статистиков в креативных писателей (или наоборот).
Формула:
где:
— логит (сырой вывод модели для
-го токена),
— температура,
— скорректированная вероятность выбора токена.
Как температура влияет на генерацию?
Для начала нам нужно знать, что такое логиты.
Логиты — инициальные прогнозы модели, которые ещё не нормализованы в вероятности. Они представляют собой значения, полученные от последнего слоя нейронной сети.

Температура — это параметр, который масштабирует эти вероятности перед применением функции softmax.
Допустим, у нас есть вероятности следующих слов: ["яблоко", "банан", "апельсин"], с логитами [2,0, 1,0, 0,5].
При
= 0,1: почти всегда будет выбираться «яблоко».
При
= 1: «яблоко» всё ещё доминирует, но есть небольшая вероятность выбрать «банан».
При
= 2: вероятности размываются, выбор каждого из трёх слов одинаково возможен.
Температуру можно настраивать, например указав её числом или слайдером в веб-интерфейсе:

Настройка температуры модели в Bothub
Для технических текстов ставьте = 0,3–0,7 — меньше галлюцинаций.
Поэзию/креатив генерируйте с = 1,2–1,5.
= 0 — режим «максимальной уверенности»: модель всегда выбирает токен с топ-1 логитом.
Управление выходной последовательностью
Генерация текста в современных языковых моделях — это не случайный процесс. Он управляется рядом параметров, которые позволяют контролировать разнообразие, точность, длину и структуру выходного текста. Эти параметры играют ключевую роль при работе с LLM как в исследовательских задачах, так и в реальных приложениях.
Top-k sampling
Представьте, что модель каждый раз подбирает следующий токен не из всего словаря (а там десятки или сотни тысяч вариантов), а только из топ-k кандидатов. Например, при = 50 — как если бы вы заказали пиццу, но вместо всех возможных начинок выбирали только из 50 самых популярных.
Данный подход отсекает откровенный бред вроде «кошка → квантовая механика».

Top-p sampling
Тут вместо фиксированного числа кандидатов модель собирает «корзину» токенов, пока их суммарная вероятность не наберёт заданный порог p.
Цель top-p — управление уровнем случайности и креативности при выборе следующего токена (слова или части слова) в генерируемой последовательности, обеспечение баланса между предсказуемостью и разнообразием вывода.

Beam search
Этот метод работает как группа разведчиков, которые исследуют несколько троп одновременно: вместо одного варианта ответа модель держит в уме b путей (лучей), выбирая самые перспективные.
Beam search уместен в формальных задачах вроде перевода «Hello» → «Привет», где важен точный маршрут. Но представьте, что каждый разведчик требует отдельный GPU, — для длинных текстов это довольно проблематично.

Repetition penalty
Алгоритм «штрафует» уже использованные токены, чтобы избежать бесконечных циклов вроде:
«Сегодня я расскажу расскажу расскажу...»
Помогает снизить явление, когда модель начинает зацикливаться и повторять одни и те же фразы.
Как работает repetition penalty:
За каждый случай повторения текста к ответу модели добавляется штраф.
Его вычисляют на основе сходства между сгенерированной частью и предполагаемым продолжением.
Затем модель на основе показателя этого штрафа корректирует свой ответ и тут же генерирует менее повторяющийся текст.

Max new tokens
Стратегия max new tokens останавливает нейросеть после определенного количества токенов. Задали 1000 токенов? Модель отключится на 1001-м токене, даже если не закончила фразу:
«Итак, квантовая гравитация — это... [Достигнут лимит.]».
Спасёт от бесконечной воды, но может обрубить ответ на полуслове. Обычно этот параметр включают лишь для моделей, склонных к зацикливанию ответов (таких, как Qwen QWQ 32B).
Таблица вышеописанных стратегий

Итог
Современные языковые модели продолжают быстро развиваться, становясь всё более мощным и универсальным инструментом в самых разных областях: от программирования и образования до медицины и креативных индустрий. Однако чтобы использовать эти технологии осознанно, необходимо понимать, как они работают изнутри.
Надеюсь, эта статья не только предоставила вам полезные знания, но и вдохновила углубиться в мир искусственного интеллекта и обработки естественного языка. Ведь чем лучше мы понимаем технологии, тем ответственнее и эффективнее можем ими пользоваться.
Если у вас остались вопросы или нужно раскрыть что-то подробнее — обязательно пишите в комментарии!
Спасибо за прочтение!
✶ Llama — проект компании Meta Platforms Inc., деятельность которой запрещена на территории Российской Федерации.