
Утечка Qwen 4: пул-реквест SGLang по хост-стейджингу показывает, как таблица PLE объёмом 47,7 ГиБ помещается на одном GPU
- OrcaНОВИНКАOrca: OrcaCyber Zero 1.02026-09-17$3.00 / $5.00 за 1 млн токенов
- orcaНОВИНКАOrca: OrcaVerify Text 1.02026-09-16$2.00 / $0.00 за 1 млн токенов
- deepseekНОВИНКАDeepSeek: DeepSeek V4.1 Flash2026-09-1040Интеллект
- openaiOpenAI: GPT-6 Astra2026-09-0453Интеллект77Кодинг
- googleGoogle: Gemini 3.8 Flash2026-09-0241Интеллект76Кодинг
- qwenQwen: Qwen3.8 Max (0902)2026-09-0245Интеллект76Кодинг
- anthropicAnthropic: Claude Fable 5.12026-09-0153Интеллект82Кодинг
- AlibabaQwen: Qwen3.8 Flash2026-08-26$0.15 / $0.47 за 1 млн токенов
- z-aiZ.ai: GLM 5.3 Flash2026-08-2642Интеллект72Кодинг
- DeepSeekDeepSeek: DeepSeek V4 Flash Vision (Exp)2026-08-21$0.22 / $0.66 за 1 млн токенов
- z-aiZ.ai: GLM 5.32026-08-1845Интеллект75Кодинг
- obsidianQwen3.8 27B2026-08-1534Интеллект68Кодинг
- deepseekDeepSeek: DeepSeek V4 Pro 08132026-08-1236Интеллект69Кодинг
- grokSpaceXAI: Grok 4.62026-08-1244Интеллект77Кодинг
- metaMeta: Muse Spark 1.22026-08-0540Интеллект72Кодинг
- qwenQwen: Qwen3.8 Max2026-08-0345Интеллект76Кодинг
- deepseekDeepSeek: DeepSeek V4 Flash 07312026-07-3135Интеллект69Кодинг
- minimaxMiniMax: MiniMax-H32026-07-31minimax/minimax-h3
- qwenQwen: Qwen3.7 Flash2026-07-27$0.03 / $0.13 за 1 млн токенов
- orcaOrcaDub: OrcaDub 1.02026-07-27orca/dub
Число, которое определит, является ли Qwen 4 моделью, которую вы сможете обслуживать самостоятельно, — это не количество её параметров. Это 47,7 ГиБ — размер таблицы n-граммных эмбеддингов, которая идёт в паре с архитектурой Qwen4, отдельно от весов, и должна где-то размещаться, пока модель декодирует. Запрос на слияние, открытый в репозитории SGLang 18 сентября 2026 года под названием [Qwen4-Exp] Добавить хост-стейджинг для PLE с файловым хранением, — попытка помешать этой таблице диктовать, сколько оперативной памяти нужно машине, прежде чем она вообще сможет запуститься. Qwen 4 всё ещё не выпущена: ни карточки модели, ни весов, ни записи в каталоге, ни даты. Единственная выпущенная модель, реализующая эту архитектуру, — это Qwen3.8-Flash-Next, предварительная версия с открытыми весами, опубликованная 26 августа 2026 года, в конфигурации которой объявлено model_type=qwen4_exp — та же строка, которая дала название запросу на слияние. Её производственный собрат Qwen3.8-Flash — это версия, до которой клиент API может реально добраться сегодня. Всё в этом материале о Qwen 4 — вывод из той предварительной версии и из кода движка; запрос на слияние открыт и не объединён, так что воспринимайте всё это как сигнал, а не как уже выпущенную возможность.
Что на самом деле представляет собой сигнал
![A screenshot of the GitHub pull request page for sgl-project/sglang#40235, titled '[Qwen4-Exp] Add host staging for file-backed PLE', shown open with Dev-Jahn wanting to merge 1 commit into sgl-project:main from Dev-Jahn:task/ple-host-staged, counters reading Conversation 0, Commits 1, Checks 119 and Files changed 21, and a diff stat of +1,476 lines and -168. The Motivation section quotes the existing file backend (#37068) keeping the 47.7 GiB n-gram PLE table in a sparse file and requiring cudaDevAttrPageableMemoryAccessUsesHostPageTables, glossed as the GB10 class, and notes the HMM alternative running at 2.8x the pinned TPOT at concurrency 16 on an RTX PRO 6000 with an FP8 TP4 64 GB memory cap. The Modifications section lists PageCacheRowSource in qwen4_exp_ple_rows.py advising pages with POSIX_FADV_WILLNEED, PleHostStaging in qwen4_exp_ple_staging.py giving each PLE layer two pinned 8192-row buffers of 1.25 MiB each at FP8 plus one worker, host-side n-gram hashing in hash_contexts_numpy, and a CUDA-graph replay preparation step costing 0.5 to 1 ms per decode step over pinned. The right rail lists nine requested reviewers all awaiting review, with a note that at least 1 approving review is required to merge.](https://cms.orcarouter.ai/api/media/file/2-1002.png)
Запрос на включение sgl-project/sglang#40235 не является запуском и не объединён. Он находится на одном коммите, открытом участником Dev-Jahn, который сливает ветку task/ple-host-staged в основную ветку SGLang. Девять владельцев кода были запрошены для ревью, и все они отображаются как ожидающие, поэтому как минимум одно одобряющее ревью отделяет это от основной ветки. Три задания CI — базовый тест PR, дополнительный тест PR и запуск AMD ROCm — терпят неудачу на открытом коммите. Это нормальное состояние крупного изменения движка в процессе, и именно поэтому интересная часть этого PR не в том, приземлится ли он, а в том, что его автору пришлось измерить, чтобы аргументировать его. Описание содержит примерно 1400 добавленных строк, включая тесты, и таблицу бенчмарков, которая является самыми конкретными публичными данными, которые кто-либо публиковал о запуске этой архитектуры на одном GPU.
Почему таблица — это вся история
Эмбеддинги для каждого слоя — структурная аномалия этого поколения. Там, где обычная модель размещает один эмбеддинг токена в начале, в архитектуре Qwen4 используется большая таблица n-грамм — биграмм и триграмм, хешированных в словарь, намного превосходящий по размеру словарь токенизатора, — и из неё по всей глубине стека подаются результаты поиска эмбеддингов для каждого слоя. В собственных предварительных материалах Alibaba n-gram-компонент описывается как десятки миллиардов параметров поверх MoE-тела на 125 млрд параметров; по разборам сообщества выпущенного чекпоинта, файл таблицы занимает 47,7 ГиБ. Эти цифры взяты из источников производителя и сообщества, а не из независимого воспроизведения, и точное соотношение между таблицей из превью и тем, что в итоге поставляет Qwen 4, неизвестно.
Что не вызывает сомнений — так это инженерные последствия. Побочная таблица размером 47,7 ГиБ, к которой приходится обращаться на каждом шаге декодирования, — это не то, что можно тихо задвинуть в уголок видеопамяти. На карте с 96 ГБ она напрямую конкурирует с KV-кэшем; на картах поменьше она просто не помещается. Именно поэтому SGLang, обеспечивший поддержку предварительной версии в день её выхода в конце августа, потратил следующие три недели на выпуск одного пул-реквеста за другим, посвящённых этой единственной структуре данных, а не самой модели.
Что было сломано до этого PR
У SGLang уже было два способа удерживать таблицу, и у обоих было жёсткое ограничение.
• Pinned хранит всю таблицу в оперативной памяти хоста и читает её оттуда. Это работает, это быстро, и это делает требование к объёму памяти хоста абсолютным — более компактной версии не существует.
• С файловой поддержкой, добавленный ранее в отдельном pull request, хранит таблицу в разреженном файле и позволяет ядру gather читать отображение напрямую, так что кэш страниц операционной системы решает, какая её часть будет резидентной. Загвоздка носит аппаратный характер: этот путь прямого чтения требует, чтобы GPU сообщал cudaDevAttrPageableMemoryAccessUsesHostPageTables — возможность, которую в самом тексте PR называют «классом GB10». На GPU без неё файловый бэкенд отклоняется сразу, и единственным оставшимся вариантом является pinned.
Возникающий при этом разрыв не является теоретическим. В отдельном отчёте, поданном по тому же пути кода, описан пользователь с двумя RTX 3090, у которого доля таблицы на ранг составила 23,84 ГиБ при 23,56 ГиБ доступной памяти — на 0,28 ГиБ меньше, при этом 188 ГиБ оперативной памяти хоста оставались свободными. В такой конфигурации файловый бэкенд был отклонён аппаратной проверкой, а обычный флаг CPU-offload вызывает исключение при использовании вместе с флагом PLE offload. Нехватка трёхсот мегабайт при ста восьмидесяти свободных гигабайтах — это ровно та проблема, для устранения которой и существует этот пул-реквест.
Какие изменения в промежуточной среде хоста?
Механизм, который добавляет этот PR, — это промежуточный слой между файлом и устройством. Вместо того чтобы просить GPU разыменовывать страницы хоста, компонент на стороне CPU читает нужные ему строки через существующее отображение загрузчика и подсказывает ядру подтянуть эти страницы заранее; переменная окружения, SGLANG_QWEN4_PLE_FILE_PREFETCH, отключает эту подсказку, если вы хотите измерить без неё. Каждый слой PLE затем получает два закреплённых буфера по 8 192 строки — примерно по 1,25 МиБ каждый при FP8 — и одного воркера. Строки собираются в один буфер, пока другой копируется на устройство, поэтому сбор и передача перекрываются, а не выполняются последовательно. Идентификаторы N-грамм хешируются на хосте, а не на устройстве. Перед каждым воспроизведением графа выполняется подготовительный вызов, и запускающий поток ожидает завершения предыдущего шага.
Эта последняя деталь — это цена, и в PR об этом сказано прямо: примерно 0,5–1 миллисекунда, добавляемая на каждый шаг декодирования по сравнению с закреплённым путём. Всё остальное — выигрыш. Измерено на одном RTX PRO 6000 Blackwell с 96 ГБ, на хосте AMD EPYC с 377 ГиБ ОЗУ, CUDA 13.2, с использованием публичных чекпойнтов FP8 и NVFP4 модели Qwen3.8-Flash-Next:
• Кэш страниц хоста, FP8 TP4/EP4 — 71 ГБ закреплено и без ограничения, против 49 ГБ при ограничении 64 ГБ, 15 ГБ при 32 ГБ и 6 ГБ при ограничении 24 ГБ
• Задержка декодирования, те же прогоны — 8,62 мс на токен при фиксированном параллелизме 1, против 9,16 / 9,20 / 9,12 мс по трём прогонам с ограниченным файлом
• Параллелизм 16 — 16,54 мс с фиксацией против 17,62 / 17,85 / 17,37 мс с ограничением, что соответствует снижению с 893 токенов в секунду до 827–840
• Пропускная способность предзаполнения — 620 токенов в секунду при 8k в закреплённом режиме против 624 / 630 / 631 в ограниченном режиме; при 32k — 1 347 против 1 358 / 1 359 / 1 361
• NVFP4 TP2 — 69 ГБ закреплённой памяти против 24 ГБ с файловым бэкендом при ограничении в 32 ГБ, при 8,87 мс против 9,18 мс
• NVFP4 на одном GPU — 69 ГБ закреплённой памяти против 51 ГБ при ограничении в 64 ГБ, 6,44 мс против 6,73 мс
• Альтернатива, которую он превосходит — чтение того же файла через управление памятью хоста на этом GPU давало 10,8 мс при параллелизме 1 и 46,5 мс при параллелизме 16, что в PR описывается как 2,8× задержки pinned-памяти при таком параллелизме

Сторона точности описывается как чистая. Детерминированный жадный вывод на восьми промптах по 256 токенов оказался токен-в-токен идентичным между путями pinned и file на FP8 TP4, а GSM8K показал 97,6% для pinned против 98,0% для file при ограничении 64 GB — разница в шесть вопросов, которую автор объясняет вариативностью от запуска к запуску, а не путём offload. Все эти числа принадлежат самому автору pull request, измерены один раз на одной машине, и никто их не воспроизвёл.
Издержки, которые признаёт PR
Беспристрастное прочтение этого pull request включает и то, от чего он отказывается. Несколько режимов выполнения отклоняются на этапе конструирования, а не молча деградируют, и при каждом отклонении в качестве запасного варианта указывается закреплённый бэкенд: prefill CUDA graphs, data-parallel attention, путь мультиплексирования prefill-decode, перекрытие двух батчей, графы декодирования DLLM и компактные графы проверки ragged — всё это исключено. Не менее важно, что он не добавляет ни нового флага, ни нового пользовательского переключателя — staging-путь — это то, что делает файловый бэкенд на оборудовании, которое раньше вообще не могло его использовать. А прогон на точность сопровождается оговоркой, которую автор приводит сам: прогоны с ограничением объёма никогда не вмещали всю таблицу, потому что таблица занимает 47,7 GiB, а ограничения опускаются до 24 GB, так что рабочая нагрузка с действительно равномерным, непредсказуемым шаблоном доступа ко всей таблице — это не то, что измерялось.
Почему это особенно важно именно для Qwen 4
Отбросьте детали движка — и закономерность становится очевидной. 26 августа Alibaba выпустила предварительный обзор архитектуры с инструкциями для сообщества открытого исходного кода подготовить среды выполнения, квантование и движки вывода до выхода полного семейства. SGLang сделала это, а затем три недели подавала пул-реквесты об одном компоненте, который делает архитектуру неудобной для развертывания. Если читать это как прогноз, это утверждение о том, что Qwen 4 потребует от вашего оборудования, а не о том, на что она способна в бенчмарке.
Это также обостряет вопрос о сроках. Qwen 4 ещё не выпущена, а сентябрьские предположения вокруг неё указывают на конференцию Apsara компании Alibaba 22–24 сентября в Ханчжоу — площадку, где анонсировали предыдущие поколения Qwen. Ничего из этого не подтверждено, а закономерность последнего цикла превью такова, что превью архитектуры предшествует полному семейству на месяцы, а не на недели. Пул-реквест, открытый за три дня до этой конференции, можно считать намёком, и не более того.
Честный итог для читателя: Qwen 4 не существует, Qwen3.8-Flash-Next существует, и второй подсказывает, во сколько обойдётся запуск первого. Если таблица на 47,7 ГиБ продолжит сокращаться в эффективном объёме — а три недели пул-реквестов говорят о том, что над этим активно работают, — то планка для развёртывания семейства Qwen 4 ниже, чем предполагала неделя запуска предварительной версии.
Что вы на самом деле можете сделать с этим уже сегодня
Ничего из этого пул-реквеста нет в main, и модель, на которую он нацелен, — не та, что можно вызвать через API. Чекпойнт Qwen3.8-Flash-Next с открытыми весами — это история про самостоятельный хостинг: вы скачиваете веса, обслуживаете их сами, и путь PLE с файловым бэкендом — это то, о чём вы сейчас читаете. Здесь он не маршрутизируется. А вот что как раз маршрутизируется — так это продакшн-вариант — Qwen3.8-Flash, доступный как qwen/qwen3.8-flash по цене $0.15 за миллион входных токенов и $0.47 за миллион выходных, с контекстом на 1 млн токенов и вводом текста, изображений и видео — а также более крупный Qwen3.8-Max по цене $2.00 и $6.00.

Для читателя, который решает, что делать на этой неделе, полезно именно это различие. Preview — это исследование, которое вы проводите сами; served-вариант — это production-путь той же архитектуры, и до него — один эндпоинт. OrcaRouter передаёт прайс-листовую цену провайдера с наценкой 0%, поэтому изменение цены вендором на этом эндпоинте видно в тот же день, а не в следующем расчётном цикле, и каждая модель на ключе доступна через один OpenAI-совместимый базовый URL — вместо отдельного контракта, SDK и учётных данных для каждого вендора. Для архитектуры столь молодой — где работа над движком всё ещё выходит еженедельно, а дорожная карта не опубликована, — автоматическое переключение при сбое между провайдерами и есть практичный способ зависеть от served-варианта, не ставя production-путь на доступность одного провайдера. Всё это — о моделях, которые можно вызвать сегодня. О Qwen 4 здесь не сказано ничего, и в их число он не входит.
Чего мы до сих пор не знаем
Будет ли Qwen 4 поставляться с той же таблицей того же размера. Сольётся ли пул-реквест вообще — у него три падающих CI-прогона и пока ни одного ревью. Сохранится ли штраф в 0,5–1 миллисекунды на шаг за пределами конфигураций автора с низким параллелизмом. И скажет ли Alibaba что-нибудь на Apsara 22 сентября. Судя по текущим данным, самое безопасное, что можно заключить о Qwen 4, — это не то, сколько она набирает, а то, сколько инфраструктуры индустрия строит только ради того, чтобы она поместилась, — а это само по себе полезно знать до того, как у модели появится имя в каком-либо каталоге.
Сравнение в этой статье1
Определено по этой статье · Бенчмарки: Artificial Analysis · обновляется ежедневно
