Как работают LLM изнутри
Разбираем токены, эмбеддинги и механизм предсказания следующего токена — без математики, но достаточно глубоко, чтобы понимать поведение моделей.
Токены: атомы языковой модели
LLM не читает текст побуквенно и не по словам. Она разбивает текст на токены — фрагменты, которые могут быть частью слова, целым словом или знаком препинания. Примерно 1 токен ≈ 0.75 слова в английском; в русском токенов обычно больше из-за морфологии.
"Hello, world!" → ["Hello", ",", " world", "!"] // 4 токена
"Привет, мир!" → ["При", "вет", ",", " мир", "!"] // 5 токенов (примерно)
Почему это важно:
- Лимит контекста считается в токенах, не в словах
- Редкие слова (специфические термины) бьются на больше токенов → дороже
- Цена API рассчитывается по токенам
Эмбеддинги: смысл как вектор
Каждый токен превращается в вектор чисел (эмбеддинг) — точку в многомерном пространстве смыслов. Близкие по смыслу слова → близкие векторы.
"король" - "мужчина" + "женщина" ≈ "королева"
Это не метафора — классические эмбеддинги (Word2Vec) действительно давали такие результаты. Современные трансформеры строят контекстные эмбеддинги: одно слово «замок» будет иметь разные векторы в «замок двери» и «рыцарский замок».
Трансформер: механизм внимания
Ключевое изобретение (статья «Attention is All You Need», Google, 2017) — механизм внимания (attention). При генерации каждого токена модель смотрит на все предыдущие токены и взвешивает, какие из них наиболее релевантны для предсказания следующего.
Входная фраза: "Я оставил ключи на..."
Модель взвешивает:
"ключи" → высокий вес (релевантно для места)
"оставил" → средний вес
"Я" → низкий вес
→ предсказывает: "столе", "полке", "машине"...
Именно это позволяет модели улавливать зависимости на большом расстоянии — «её» в конце длинного предложения относится к «Анне» в начале.
Предобучение и файнтюнинг
-
Предобучение: модель обучается на сотнях миллиардов токенов текста из интернета, книг, кода. Задача — предсказывать следующий токен. После этого модель умеет продолжать любой текст.
-
RLHF (Reinforcement Learning from Human Feedback): люди оценивают ответы модели, и она учится давать те ответы, которые люди предпочитают. Именно это превращает «предсказатель токенов» в полезного ассистента.
-
Системный промпт: при развёртывании модели ей дают системный промпт, который задаёт роль, ограничения и стиль поведения.
Почему температура меняет поведение
Температура — параметр, контролирующий случайность при выборе следующего токена. При temperature=0 модель всегда берёт самый вероятный токен (детерминированный вывод). При temperature=1 добавляется случайность — ответы разнообразнее, но менее предсказуемы.
В любом LLM-интерфейсе задайте одинаковый вопрос 3 раза подряд без изменений. Сравните ответы — заметите вариативность. Если доступна настройка температуры (например, в OpenAI Playground), попробуйте temperature=0 и temperature=1 на одном промпте.
Скопируйте и адаптируйте под свой контекст. Текст в треугольных скобках — то, что нужно заменить.
Продолжи текст тремя разными способами — формальным, разговорным и творческим. Покажи все три варианта: <вставьте начало текста>
- Думают, что у модели есть "память" между токенами как у человека — на самом деле она видит только текущий контекст окна.
- Путают температуру с "умностью" — высокая температура не делает модель умнее, только разнообразнее.
- Считают, что токен = слово — из-за этого неправильно оценивают лимиты и стоимость.
- Для задач с точным ответом (код, SQL, JSON) используйте temperature=0 или близко к нему.
- Для генерации идей, вариантов, историй — поднимите temperature до 0.8-1.0.
- Чтобы узнать, сколько токенов в тексте, используйте tokenizer.openai.com — полезно при работе с большими документами.
Это теоретический урок — понимание механизма помогает правильно формулировать промпты и интерпретировать поведение моделей.
Не нужно держать всю механику в голове при каждом промпте — достаточно понимать ключевые следствия: токены, контекст, температура.