Титульная карточка для статьи «Квантование с учётом чувствительности: объяснение» с подзаголовком «Как OrcaSAQ решает, какие веса MoE получают больше битов — калибровочный набор не требуется», показывающая плоские весы в виде линейной иконки, на более тяжёлой стороне которых лежат несколько больших округлых синих кубов, а на более лёгкой — много маленьких серых кубов.
Guides & Insights

Объясняем квантование с учётом чувствительности: как OrcaSAQ решает, каким весам достаётся больше битов

Автор

Alistair Wren

Дата публикации

Новые модели · 20Все модели
Бенчмарки: Artificial Analysis · обновляется ежедневно
Назад ко всем статьям

Квантование с учётом чувствительности — это практика расходования битового бюджета там, где это важно: тензоры, которым квантование вредит больше всего, получают больше битов, а всё остальное остаётся на более низкой базовой разрядности. Эта статья объясняет, как OrcaSAQ — наш метод смешанной точности без калибровки и с учётом архитектуры, выпущенный вместе с GLM-5.3-Flash, квантованным семейством orcarouter/GLM-5.3-Flash-MLX — определяет, какие из 37 338 тензоров в модели смеси экспертов с 320 миллиардами параметров заслуживают дополнительных битов, и полностью без калибровочного набора данных. Универсальный урок для тех, кто квантует другую MoE: общие эксперты и понижающие проекции заслуживают дополнительных битов, и их можно найти, используя не более чем собственные метаданные квантования исходного релиза.

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

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

Что это вам даёт — быстрый, детерминированный конвейер без калибровки. Не нужно собирать калибровочный корпус, не нужно искать чувствительность по слоям и перенастраивать каждую модель — один и тот же рецепт переносится на новую архитектуру в тот же день, когда выходят её веса. Чем приходится жертвовать — это адаптация: метод, основанный на калибровке, такой как GPTQ или AWQ, смотрит на фактическое распределение активаций вашей модели и ваших данных и обычно выжимает больше качества при той же средней битовой ширине. Ставка OrcaSAQ заключается в том, что для моделей Mixture-of-Experts роль тензора говорит вам почти всё то, что дал бы прогон калибровки, но за долю стоимости.

Два способа найти чувствительные веса

Прежде чем перейти к политике, возникает вопрос: как узнать, каким тензорам вредит квантование? Два ответа — это всё пространство проектирования.

Калибровочный подход. Прогнать небольшой корпус через модель, измерить ошибку, которую вызывает каждый тензор или блок, и распределить биты для минимизации общей ошибки реконструкции. GPTQ использует аппроксимацию на основе гессиана для оценки ошибки квантования на уровне слоёв; AWQ использует статистику активаций, чтобы выявить значимые веса, которые нужно защитить. Преимущество — адаптация к вашим реальным данным; затраты — курируемый корпус, прямые проходы и вычисление обратного гессиана для каждого слоя, а также результаты, которые меняются при изменении калибровочного набора.

Без калибровки.Определите порядок чувствительности до просмотра любых данных, исходя из архитектуры. В MoE вы уже знаете, какие роли несут основную нагрузку: эксперт, который срабатывает на каждом токене, и проекция, которая записывает в остаточный поток. Закодируйте этот порядок как фиксированную политику и применяйте её механически.

OrcaSAQ уверенно относится ко второму лагерю, и эта статья — защита этого лагеря применительно к квантованию MoE — с трезвым описанием того, от чего приходится отказываться ради этого.

Политика: какие тензоры получают больше битов

Политика распределения битов OrcaSAQ изложена в карточке модели для orcarouter/GLM-5.3-Flash-MLX, и она сводится к трём правилам плюс одному исключению. Базовая точность — это собираемая вами версия: 6, 4, 3 или 2 бита — и политика ставит конкретные роли тензоров выше неё:

Общий эксперт: base +2 бита. Общий эксперт срабатывает на каждом токене, поэтому его ошибка квантования воспроизводится в каждом выходе модели. Это тензор с наибольшим влиянием в модели, и он получает больше всего битов.

down_proj: базовый +1 бит.В блоке SwiGLU MLP down-проекция является узким местом остаточного потока — её выход добавляется напрямую в остаточный поток, который считывают все более глубокие слои. Ошибка здесь напрямую искажает то, что видит всё нижестоящее.

gate_proj и up_proj: базовая точность. Это пути расширения и стробирования; их выходы поэлементно перемножаются внутри функции активации. Небольшая ошибка там частично сглаживается стробированием, поэтому они мирятся с базовой шириной.

Никогда не квантованные, хранящиеся в BF16: 34 слоя линейного внимания, обученный разреженный индексатор, массивы гиперсвязей, нормы, embed_tokens, lm_head, и вся визуальная башня. В исходном релизе они не были FP8 и остаются в полной точности.

Биты округляются вверх до ближайшей поддерживаемой MLX ширины: {2,3,4,5,6,8}. В частности, на GLM-5.3-Flash — 320B всего / 18B активных, 288 маршрутизируемых плюс 1 общий эксперт с маршрутизацией top-8, 45 слоёв — в 4-битной сборке общий эксперт получает 6 бит, каждый down-проектор — 5 бит, а gate и up-проекторы — 4 бита. 6-битная сборка округляет down-проекторы вверх до 8 бит. Размер группы равен 64 для 4- и 6-битных сборок, 32 для 2- и 3-битных, а общий эксперт всегда использует 64.

OrcaSAQ bit-allocation policy card titled 'OrcaSAQ — the bit-allocation policy' on GLM-5.3-Flash, listing the rules 'shared expert base +2 bits', 'down_proj base +1 bit', 'gate_proj / up_proj base', 'never FP8 upstream BF16', with a concrete 'At a 4-bit base' column showing shared expert 6 bits, down_proj 5 bits, gate/up projections 4 bits, and BF16 for the linear-attention path, indexer and vision tower, plus a footer citing the orcarouter/GLM-5.3-Flash-MLX model card

Оправдано ли правило общего эксперта? При базовой разрядности 2 бита общий эксперт работает на 4 битах, а при базовой разрядности 6 бит — на 8. В обоих случаях дополнительные два бита стоят памяти, которую маршрутизируемые эксперты могли бы использовать иначе, и собственные числа в карточке модели, рассмотренные ниже, говорят о том, что компромисс окупается. Это та же логика, по которой сборку 2bit-lite вообще стоит выпускать: всегда активный эксперт — это то место, где небольшое дополнительное разрешение даёт больше всего.

Правило выбора: _scale_inv как свободный сигнал чувствительности

Политика распределения битов предполагает, что вы уже знаете, какие тензоры являются кандидатами. Выбор этого набора — вот где OrcaSAQ проявляет наибольшую изобретательность, потому что правило механическое и не требует данных: тензор реквантизуется тогда и только тогда, когда релиз FP8 поставил его с компаньоном _scale_inv.

Почему это работает: базовая модель GLM-5.3-Flash из апстрима использует FP8 — поблочный e4m3, блоки 128×128, с динамической схемой активации. Поблочное FP8-квантование хранит масштаб для каждого блока и его обратное значение вместе с весами; наличие _scale_inv в чекпоинте является надёжным маркером того, что тензор прошёл путь квантования в апстриме. Релиз апстрима уже сообщил вам, какие тензоры безопасно квантовать — ни гессиана, ни калибровочного корпуса, ни прямых проходов не требуется.

Для GLM-5.3-Flash этот набор — это линейные слои MoE и плотного MLP, плюс четыре проекции каждого deepseek_sparse_attention блока — q_a_proj, q_b_proj, kv_a_proj_with_mqa, а также o_proj — на 11 разреженных слоях на глубинах 3, 7, 11 … 43, плюс блок MTP, 12 × 4 = 48 тензоров. Всё остальное никогда не имело маркера и остаётся в BF16: 34 linear_attention слоёв, разреженный индексатор и визуальная башня. Слой MTP — слой 45 — включён в квантованные веса, а не экспортируется как отдельный модуль.

Суть, которую стоит позаимствовать, — сам трюк. Релиз модели, квантующий свои веса на предыдущем этапе, уже проделал огромную работу по определению того, что можно квантовать; маркер _scale_inv — это и есть то самое решение, сериализованное в формат файла. OrcaSAQ считывает его обратно. Именно это делает конвейер детерминированным и переносимым: любая модель, поставляющая FP8-веса с метаданными масштаба, может обрабатываться по одному и тому же правилу — вообще без конвейера данных.

OrcaSAQ selection-rule card titled 'OrcaSAQ — the mechanical selection rule' showing the rule 'Re-quantize a tensor iff the FP8 release shipped it with a _scale_inv companion', with a 'Quantized (had _scale_inv)' column listing the MoE and dense-MLP linears, 11 sparse layers x 4 projections at depth 3, 7, 11 … 43, the MTP block, 12 x 4 = 48 sparse-attention projection tensors and 37,338 tensors total, and a 'Never FP8 upstream (BF16)' column listing 34 linear-attention layers, the sparse indexer, hyper-connections, norms, embed_tokens, lm_head and the vision tower

Подвох: конфигурация на уровне модулей, а не верхнеуровневые флаги.

Если вы пишете свой собственный MLX-квантователь — а именно для таких читателей предназначен этот раздел, — самое полезное в карточке модели — это предупреждение: верхнеуровневых bits и group_size в config.json недостаточно.

Всего квантовано 37 338 тензоров. Назначение записано в config.jsonquantization как помодульные {group_size, bits} переопределения, привязанные к пути модуля MLX — например model.layers.3.mlp.switch_mlp.down_proj. Поскольку MLX объединяет маршрутизируемые эксперты слоя в один switch_mlp, 173 записи покрывают все 37 338 тензоров.

И загрузчик считывает эти записи во время загрузки. Если вы квантуете весь файл с базовой шириной, каждый тензор с повышенной точностью — общий эксперт с базой +2, каждая понижающая проекция с базой +1 — получает неправильную ширину, и модель загружается с нарушенной размерностью. Помодульная карта — это не оптимизация, которую можно пропустить; это путь загрузки. Когда вы пишете собственный квантователь, генерируйте переопределения для каждого тензора, точность которого повышает политика, и сверяйте их со значением по умолчанию верхнего уровня перед выпуском.

Окупает ли себя политика?

Доказательства — наши собственные, измеренные на одной модели: GLM-5.3-Flash, каждая сборка деквантизирована и прогнана через тот же самый glm5_next прямой проход, так что единственной переменной является квантование. Числа ниже взяты из карточки модели, и это не бенчмарки вендора и не цифры третьей стороны — воспринимайте их как единичную точку данных, а не как закон.

• Перплексия по сравнению с эталоном FP8, равным 2.7797: 6-бит 2.7864 (+0.24%), 4-бит 2.8620 (+2.96%), 3-бит 3.0566 (+9.96%), 2-бит 4.3622 (+56.9%).

• Совпадение Top-1 токена с эталоном, в том же порядке: 97.76%, 96.13%, 92.06%, 86.56%.

Результат ровно такой, как предсказывает политика. Всё вплоть до 3-бит деградирует плавно — это признак того, что битовый бюджет потрачен на правильные тензоры, — а 2-бит — это обрыв, потому что ниже определённой точки ролевые повышения перестают покрывать урон. При 4-бит +2.96% перплексии для сборки, которая примерно на 38% меньше эталона FP8, — это действительно хороший компромисс, и именно та же политика, применённая более агрессивно, позволяет сборке 2bit-lite объёмом 102 ГБ вообще загружаться. Независимые практики, квантующие ту же базу, сообщают о том же порядке — верхние ступени у уровня шума, 4-бит даёт реальное, но умеренное ухудшение, — но с другими абсолютными числами на другом оценочном корпусе.

OrcaSAQ quality card titled 'OrcaSAQ — quality versus the FP8 reference' listing perplexity versus the FP8 reference at 2.7797: 6-bit 2.7864 (+0.24%), 4-bit 2.8620 (+2.96%), 3-bit 3.0566 (+9.96%), 2-bit 4.3622 (+56.9%), with top-1 agreement 97.76%, 96.13%, 92.06%, 86.56%, and a footer noting these are OrcaRouter's own measurements on GLM-5.3-Flash, not vendor benchmarks

Что переносится на вашу собственную MoE

Повторно используемые рассуждения для модели, которая не наша:

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

Найдите остаточные узкие места. Проекция, записывающая в остаточный поток (обычно это нисходящая проекция каждого MLP-блока), получает базовое значение +1. Ошибка там видна каждому более глубокому слою.

Оставьте пути расширения и стробирования на базовом уровне. Если выход умножается поэлементно внутри активации, ошибка квантования в нём частично поглощается.

Неквантованный апстрим означает неквантованный вами. Если базовый релиз содержал эти тензоры в полной точности, сохраняйте их в полной точности.

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

Фиксируйте переопределения для каждого модуля. Глобальная разрядность при загрузке исказит форму каждого поднятого тензора. Задайте карту путей модулей.

И если у вас вообще есть калибровочный набор, используйте его для аудита политики, а не для её замены. Выполните квантование на основе калибровки с тем же средним числом бит и проверьте, соответствует ли упорядочение ролевого априора тому, что говорят данные. Для плотной модели или совершенно новой архитектуры такой аудит — это разница между обоснованным умолчанием и догадкой.

Где OrcaSAQ — неправильный выбор

Это раздел, который должен сохранять честность метода, потому что компромисс без калибровки реален.

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

Плотные модели без MoE. Ролевой априор — общий эксперт, gate/up/down — не существует, поэтому политика теряет структуру, которая делает её заслуживающей доверия. Остаётся лишь «всё, что квантовано выше по потоку, остаётся квантованным», что является более слабым утверждением.

Модели без FP8-релиза в апстриме. _scale_inv правилу выбора не на что опереться. Вы должны определить квантуемое множество каким-то другим способом, и аргумент о механической переносимости рушится.

Принципиально новые архитектуры. Априорные допущения — это как раз те предположения, которые могут не выполняться. Метод, основанный на калибровке, обнаружил бы хрупкий тензор, который ролевая политика пропустила; OrcaSAQ не обнаружит, потому что он никогда не смотрит.

Цели ниже 3 бит. Политика вас не спасет. При 2 битах перплексия модели выше на +56.9%, независимо от того, куда пошли дополнительные биты; сборка 2bit-lite существует, чтобы вписаться, а не ради качества.

Когда вам нужны гарантии.Потензорные гарантии, бюджеты обучения с учётом квантования (QAT) или наилучшее возможное качество для фиксированного размера без учёта стоимости конвейера — всё это относится к области калибровки.

Суть

Квантизация с учётом чувствительности — это практика; OrcaSAQ — один детерминированный рецепт без калибровки для неё. Устойчивые уроки: повышение весов shared-expert и down-projection, механическое _scale_inv правило выбора, а также конфигурация на уровне модуля, которую загрузчик реально читает. Для MoE с 320 миллиардами параметров, например GLM-5.3-Flash, этот рецепт даёт 4-битную сборку MLX с приростом перплексии +2.96% — и orcarouter/GLM-5.3-Flash-MLX репозиторий поставляет ту же политику в 2, 3, 4 и 6 бит, а также отдельную сборку 2bit-lite для машин на 128 ГБ. Наш GLM-5.3-Flash-MLX обзор шаг за шагом объясняет, какую сборку запускать на какой машине.

Если ваш приоритет — последняя доля качества при фиксированном размере и вы можете собрать калибровочный корпус, используйте инструменты на основе калибровки и позвольте им адаптироваться. Если ваш приоритет — воспроизводимая, быстрая квантизация без данных, переносимая на следующую архитектуру, или же вы просто не хотите вообще строить конвейер данных, то ролевая политика является оправданным выбором по умолчанию. А если вы предпочли бы вовсе не квантизовать, полной точности GLM-5.3-Flash предоставляется через OrcaRouter как z-ai/glm-5.3-flash. Выбор сводится к тому, какой объём пайплайна вы готовы запустить, а не к тому, стоит ли выполнять квантизацию с учётом чувствительности.

Предпочитаете вообще ничего не квантовать? z-ai/glm-5.3-flash — это модель полной точности, предоставляемая на OrcaRouter по ценам провайдера, 0% наценки.

© 2026 OrcaRouter

Провайдерам

Управляете инференс-платформой? Разместите свои модели на OrcaRouter.

providers@orcarouter.ai

Присоединяйтесь к сообществу

Discordsupport@orcarouter.aiXGitHubYouTube