Технологии

Сколько токенов в секунду это нормально

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

«У меня 12 токенов в секунду — это нормально?» Ответить на такой вопрос числом нельзя, потому что нормальность здесь не техническая характеристика, а свойство восприятия. Двенадцать токенов в секунду — это быстро или медленно ровно в той мере, в какой это быстрее или медленнее того, как вы читаете.

Поэтому шкалу имеет смысл строить не от железа, а от человека.

#Короткий ответ

Ориентир для комфортной работы — от 10–15 токенов в секунду на русском тексте. Это примерно темп, в котором вы читаете глазами: текст появляется чуть быстрее, чем вы успеваете его прочитать, и ожидание не ощущается.

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

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

#Как это устроено

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

Отсюда прямое следствие: одна и та же скорость в токенах в секунду даёт на русском вдвое меньше текста, чем на английском. Двадцать токенов в секунду на английском — это бодрый темп. Двадцать токенов в секунду на русском — это темп неторопливого чтения. Именно поэтому чужие пороги комфорта переносить нельзя, и именно поэтому локальные модели субъективно «тормозят» на русском сильнее, чем должны бы по спецификациям.

Теперь привяжем к человеку. Речь вслух — примерно 150 слов в минуту, то есть 2,5 слова в секунду. Чтение глазами — 200–250 слов в минуту, около 4 слов в секунду. Пересчитываем в русские токены по коэффициенту 2,5:

Диапазон На что похоже Ощущение Пригодность
менее 3 ток/с медленнее диктовки текст «печатается» по слову только очень короткие ответы
3–8 ток/с темп речи вслух успеваете читать с запасом терпимо, длинные ответы утомляют
8–20 ток/с темп чтения глазами ожидания почти нет комфортная повседневная работа
более 20 ток/с быстрее чтения текст появляется быстрее вас ограничение уже не в скорости

Что здесь смотреть: три границы вместо одной. Первая — 3 токена в секунду — отделяет применимое от неприменимого. Вторая — 8 — отделяет терпимое от комфортного. Третья — 20 — точка, после которой дальнейший разгон перестаёт что-либо менять для человека за экраном.

Последнее наблюдение практически важно: гнаться за скоростью выше 20–25 токенов в секунду для интерактивного диалога бессмысленно. Освободившийся ресурс полезнее потратить на модель побольше или на более длинный контекст.

#Две величины, которые путают

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

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

Ориентиры по восприятию задержки:

  • до 0,5 секунды — воспринимается как мгновенный отклик;
  • 1–3 секунды — заметно, но не раздражает;
  • более 5 секунд — ощущается как «зависло», даже если потом текст пойдёт быстро.

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

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

#Что из этого следует на практике

Замеряйте оба числа раздельно. Утилиты замера выдают их отдельными колонками именно поэтому. Усреднённая «скорость модели» — бесполезная величина. Воспроизводимая методика — в материале о том, как измерить скорость локальной модели правильно.

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

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

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

#Где интуиция подводит

«Чем быстрее, тем лучше». До порога комфорта — да. После него прирост не ощущается вовсе, а достаётся ценой более слабой модели или короткого контекста. Двадцать токенов в секунду на модели 14B полезнее, чем шестьдесят на модели 3B.

«Скорость — свойство модели». Скорость — свойство связки «модель + квантизация + железо + контекст». Одна и та же модель на одной и той же карте даёт разные числа при контексте 4k и 32k.

«Медленно — значит нужна видеокарта помощнее». Часто нужна просто память побыстрее или модель поменьше. Что реально достижимо на машине без дискретной карты — в материале о запуске LLM на ноутбуке без видеокарты.

#Частые вопросы

#Сколько токенов в секунду даёт облачная модель?

Обычно десятки, и ощущается это как «быстрее, чем вы читаете». Локальная модель на дискретной карте среднего уровня попадает в тот же диапазон на моделях класса 7–8B. Разрыв с облаком возникает не в скорости, а в качестве ответов на сложных задачах.

#Почему первая генерация всегда медленнее?

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

#Токены в секунду — это слова в секунду?

Нет. На русском одно слово занимает в среднем 2–3 токена, точное значение зависит от токенизатора модели. Чтобы грубо перевести токены в слова, делите на 2,5.

#У меня 5 токенов в секунду — стоит что-то менять?

Стоит сначала проверить, упёрлись ли вы в физику. Разделите пропускную способность своей памяти на вес модели: если 5 близко к половине этого числа, ускоряться некуда без смены модели или железа. Если расчётный потолок сильно выше — дело в настройках.

#Влияет ли длина ответа на скорость генерации?

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

Хотите ИИ, который помнит вас?

Persona держит контекст между чатами и работает на вашем железе — если развернуть её у себя и подключить локальную модель.

Создать аккаунт