В предыдущих главах перевода руководства по масштабированию LLM рассматривалось обучение моделей. Пятая глава посвящена инференсу — применению обученного трансформера. В отличие от тренировки, здесь добавляется критический фактор — задержка. Пользователь не будет ждать ответа чат-бота пять минут, поэтому инференс требует иных подходов к оптимизации.
Генерация текста в LLM — авторегрессионный процесс: модель предсказывает следующий токен на основе предыдущих, затем добавляет его к промпту и повторяет. Если каждый раз прогонять весь промпт через модель, сложность составит O(n^2) на MLP-блоке и O(n^3) на блоке внимания при генерации n токенов. Решение — кэширование: значения key и value для предыдущих токенов сохраняются в KV-кэш, и для нового токена вычисляется только attention с уже сохранёнными векторами. Это снижает сложность до квадратической.
| Параметр | Значение |
|---|---|
| L (кол-во слоев) | 40 |
| D (размерность входных эмбеддингов) | 5120 |
| F (размерность MLP слоя) | 13824 |
| N (кол-во голов Query) | 40 |
| K (кол-во голов Key и Value) | 40 |
| H (размерность голов Q, K, V) | 128 |
| V (размер словаря токенов) | 32000 |
| T (длина входной последовательности) | 8192 |
Инференс состоит из двух режимов. Prefill — обработка входного промпта параллельно для всех токенов, с записью K и V в кэш. Generation — пошаговая генерация: сэмплирование токена, обновление KV-кэша, повтор до токена <EOS> или достижения лимита длины. Эти режимы сильно различаются по вычислительной нагрузке, что создаёт проблемы при масштабировании.
Ключевой параметр инференса — латентность, которая измеряется двумя метриками. TTFT (time to first token) — время до появления первого токена, характеризует Prefill. Per-token latency — время генерации одного токена, характеризует Generation. В зависимости от сценария приоритеты меняются: для офлайн-генерации латентность неважна, для чат-бота критичен низкий TTFT и скорость выше скорости чтения, для агентских систем важны оба параметра.
Инференс — это всегда компромисс между латентностью, памятью, нагрузкой на железо и качеством. Понимание этих режимов и метрик — основа для проектирования инфраструктуры, от одного ускорителя до целого ЦОДа.

