Перейти к содержанию
Публикация AiManual

Qwen3.8-27B: реальная скорость инференса на практике — сколько токенов в секунду выдают конфигурации разных пользователей?

Реальные цифры скорости генерации Qwen3.8-27B: тесты на RTX 3090 с 64 ГБ DDR4 и AMD 7950x, настройка llama.cpp, сравнение квантований, оптимизация для продакшен

Коротко

Что будет в материале

  1. 01

    Введение: почему скорость инференса Qwen3.8-27B вызывает вопросы

  2. 02

    Методология тестирования: как мы собирали данные о скорости

  3. 03

    Результаты тестов: скорость Qwen3.8-27B на разных конфигурациях

  4. 04

    Оптимизация инференса: как выжать максимум из llama.cpp

Qwen3.8-27B - модель с контекстным окном 262 144 токена и 27 миллиардами параметров. Многие хотят запустить её локально, но упираются в неопределённость: как быстро она генерирует на доступном железе. Один из воспроизводимых ориентиров - конфигурация с RTX 3090, 64 ГБ DDR4 и AMD 7950x. На квантованной версии Q5_K_M GGUF через llama.cpp она выдаёт около 30-32 токенов в секунду. Это не единственный сценарий: скорость зависит от GPU, CPU, памяти, формата квантования и выбранного рантайма.

В статье собраны реальные цифры от разных пользователей, разобраны узкие места и способы оптимизации. Если вы планируете запускать Qwen3.8-27B на своей машине, здесь есть конкретика для сравнения и настройки.

Введение: почему скорость инференса Qwen3.8-27B вызывает вопросы

Модель Qwen3.8-27B привлекает сочетанием размера и возможностей: нативный контекст 262K, поддержка изображений и видео, механизм MTP для спекулятивного предсказания. Но практическая применимость упирается в скорость генерации. Для локального запуска нужна видеокарта с достаточным объёмом VRAM либо гибридная схема с выгрузкой части слоёв в системную память.

Базовая цифра для ориентира: RTX 3090 24 ГБ, AMD 7950x, 64 ГБ DDR4, формат Q5_K_M GGUF, рантайм llama.cpp. Результат - 30-32 токена в секунду. Это рабочий темп для интерактивных задач, но для высоконагруженных сервисов потребуются другие инструменты и квантования. Ниже - детальный разбор по конфигурациям и настройкам.

Методология тестирования: как мы собирали данные о скорости

Цифры в статье взяты из пользовательских тестов, сообщений в профильных сообществах и воспроизводимых конфигураций. Основные рантаймы - llama.cpp и vLLM. Форматы квантования - GGUF (Q4_K_M, Q5_K_M, Q6_K) и GPTQ (4-bit, 8-bit).

Ключевые параметры, влияющие на замеры:

  • размер контекста: при заполнении длинного контекста скорость декодирования падает;
  • количество генерируемых токенов: короткие ответы дают более высокие средние значения;
  • настройки сэмплирования: температура, top_p, штрафы за повтор;
  • распределение слоёв между GPU и CPU;
  • версия llama.cpp или vLLM, флаги кэша KV.

Скорость генерации - не константа. Один и тот же конфиг может показывать 30 ток/с на коротком промпте и заметно меньше на контексте в десятки тысяч токенов. Поэтому все цифры ниже стоит воспринимать как ориентиры, а не гарантированные значения.

Результаты тестов: скорость Qwen3.8-27B на разных конфигурациях

Наиболее воспроизводимый сценарий - RTX 3090 24 ГБ в связке с AMD 7950x и 64 ГБ DDR4. С квантом Q5_K_M GGUF и llama.cpp скорость составляет 30-32 ток/с. Это гибридный режим: часть слоёв на GPU, часть на CPU. Полная загрузка модели на видеокарту в этом формате невозможна из-за размера кванта.

Для сравнения: на RTX 5090 с 32 ГБ VRAM модель в Q6_K выдаёт 80-100 ток/с на коротких запросах и около 40 ток/с при заполнении контекста 262K. Подробный разбор этой конфигурации есть в статье про оптимизацию llama.cpp для Qwen 3.6 27B на RTX 5090.

На связке из двух RTX 5060 Ti 16GB модель Qwen3.8-27B также запускается. Практические пресеты и замеры скорости декодирования разобраны в материале про RTX 5060 Ti для локальных LLM.

Для бюджетных GPU AMD есть отдельный кейс: Qwen 3.6 35B A3B на Radeon RX 7600 через ROCm 7 даёт 18-21 ток/с. Разбор команды и флагов - в статье про запуск на RX 7600.

CPU-only варианты для 27B модели существуют, но скорость редко превышает 3-7 ток/с даже на современных процессорах с быстрой DDR5. Такой режим подходит для фоновых задач без требований к отзывчивости.

Оптимизация инференса: как выжать максимум из llama.cpp

llama.cpp даёт несколько рычагов для ускорения Qwen3.8-27B. Первый - количество потоков CPU. Для AMD 7950x оптимально выставлять значение, близкое к числу физических ядер, а не потоков. Флаг --threads управляет этим параметром.

Второй - распределение слоёв. Флаг --n-gpu-layers определяет, сколько слоёв загружается на видеокарту. Для RTX 3090 с 24 ГБ и квантом Q5_K_M разумно выгрузить максимально возможное число слоёв, оставив запас под KV-кэш. Типичная команда:

llama-cli \
  -m qwen3.8-27b-q5_k_m.gguf \
  --n-gpu-layers 40 \
  --threads 16 \
  --ctx-size 8192 \
  --temp 0.7 \
  --repeat-penalty 1.1

Третий - квантование KV-кэша. Флаг --cache-type-k q8_0 и --cache-type-v q8_0 снижает потребление VRAM и ускоряет доступ к кэшу. Четвёртый - отключение mmap через --no-mmap может дать прирост на некоторых системах, но увеличивает время загрузки модели.

Пятый - размер батча. Для одиночных запросов --batch-size 512 и --ubatch-size 128 работают стабильно. Увеличение батча ускоряет префилл, но не влияет на скорость декодирования.

Квантование и его влияние на скорость и качество

Формат квантования напрямую определяет, поместится ли модель в VRAM и как быстро она будет работать. Для Qwen3.8-27B доступны два основных семейства: GGUF и GPTQ.

GGUF Q5_K_M - баланс между качеством и размером. Модель занимает около 19-20 ГБ, что не помещается целиком в 24 ГБ VRAM с учётом контекста. Поэтому часть слоёв уходит на CPU, и скорость ограничена пропускной способностью системной памяти. Q4_K_M уменьшает размер до 16-17 ГБ, что позволяет загрузить больше слоёв на GPU и получить прирост скорости, но с небольшим снижением качества.

GPTQ-Pro FOEM 4-bit - альтернатива для vLLM. Этот формат позволяет запустить модель на одном RTX 3090 24 ГБ с полной загрузкой на GPU. Скорость при этом выше, чем у гибридного GGUF, за счёт отсутствия обмена между CPU и GPU. Дополнительное квантование эмбеддингов и тензоров до INT8 увеличивает доступный контекст до 210K токенов.

Выбор простой: для llama.cpp и гибкости - GGUF; для максимальной скорости на NVIDIA GPU - GPTQ через vLLM.

Альтернативные инструменты: vLLM, TensorRT-LLM и другие

llama.cpp удобен для одиночных запросов и локального использования. vLLM решает другую задачу - высокую пропускную способность при параллельных запросах. PagedAttention и continuous batching позволяют обслуживать несколько пользователей одновременно без линейного роста задержки.

Для запуска Qwen3.8-27B в vLLM с GPTQ-квантованием достаточно команды:

vllm serve XReyRobert/Qwen3.8-27B-GPTQ-Pro-FOEM-4bit-g128-ns256 \
  --max-model-len 32768 \
  --gpu-memory-utilization 0.95

TensorRT-LLM для NVIDIA GPU даёт дополнительный прирост за счёт компиляции модели под конкретную архитектуру, но требует больше усилий по настройке. SGLang - ещё один рантайм с фокусом на скорость и поддержкой structured outputs. Для большинства локальных сценариев llama.cpp остаётся самым простым вариантом, для серверных - vLLM.

Применимость в продакшене: достаточно ли 30 токенов в секунду?

30-32 ток/с - это примерно 2-3 предложения в секунду. Для чат-бота в режиме реального времени такой темп приемлем: пользователь видит текст быстрее, чем читает. Для генерации кода - тоже: типичный ответ в 200-300 токенов формируется за 7-10 секунд.

Проблемы начинаются при масштабировании. Один запрос на RTX 3090 - это нормально. Десять одновременных запросов - уже очередь и задержки. Для высоконагруженных сервисов нужен vLLM с батчингом и, желательно, несколько GPU. Стоимость такой инфраструктуры сопоставима с API коммерческих моделей, но без зависимости от внешнего провайдера.

Для локального использования, прототипирования и задач с умеренным трафиком 30 ток/с на 27B модели - хороший результат. Он сопоставим со скоростью чтения человека и не создаёт дискомфорта при диалоге.

Заключение: итоговые рекомендации по выбору конфигурации

Qwen3.8-27B на RTX 3090 с Q5_K_M GGUF и llama.cpp даёт 30-32 ток/с. Это рабочий показатель для локального инференса. Если нужна максимальная скорость на одной GPU - используйте vLLM с GPTQ 4-bit: модель полностью загружается в VRAM, и скорость растёт за счёт отсутствия CPU-GPU обмена.

Для гибкости и простоты - llama.cpp с Q5_K_M. Для бюджетных конфигураций - уменьшайте квант до Q4_K_M или рассматривайте модели с MoE-архитектурой, которые эффективнее используют ограниченные ресурсы. Если вы тестировали Qwen3.8-27B на своём железе, делитесь цифрами: реальные замеры от разных пользователей помогают точнее оценивать применимость модели.

Подписаться на канал