TGViewer
КПД КПД @quant_prune_distill · 3.49K subscribers
Post #746 1.98K
🔬 Метод

Ключевое наблюдение статьи в следующем - признаки, отвечающие за способность модели отказывать в ответе, лежат в низкоразмерном подпространстве. Перплексия / стандартные бенчи оценивают возмущение в более высокоразмерном пространстве. Можно в среднем не сильно исказить общие признаки, но существенно задеть safety.

Далее авторы исследуют природу safety признаков.

Если safety каналы соотвествуют выбросам (каналам с большой нормой), то большой разницы между per-tensor квантизацией и per-channel (per-group) не будет. Если же они лежат в каналах с небольшой нормой, то они более чувствительны к выбору гранулярности.

Вводится PCR Score (FlipRate - доля ответов, где модель со сжатым кэшом согласилась на harmful запрос, а с несжатым отказалась)

PCR=1 − FlipRate_{per-tensor}​ / FlipRate_{per-channel​​}

Кроме того safety может быть распределена между несколькими подряд идущими слоями (spread). Их тогда следует обрабатывать аккуратнее.

Общая процедура safety-aware квантизации следующая:
• Квантизуем кэш каждого слоя по отдельности. Находим те, где большой процент флипов.
• Находим слои, где FlipRate превышает 10-20%.
• Считаем PCR

Для чувствительных слоев:
• Если PCR < 30% держим в FP16
• PCR 30-70% - в FP16 первый слой из группы подряд идущих критических слоев, остальные квантизуем с размером группы 64.
• PCR > 70% (low spread) - просто квантизуем с размером группы 64
• PCR > 70% (high spread) - FP16 для первых 3-4 слоев, а далее все с размером группы 64

Для такой калибровки достаточно ~20 промптов, и оно неплохо, как утверждается, обобщается.

🧪 Эксперименты

Исследования проводят на разных моделях (Qwen-2.5, Mistral, Mixtral, Gemma-2, Yi) и для разных техника сжатия (наивное сжатие / KIVI). Замеряют на совокупности из 5 safety бенчей - AdvBench, HarmBench, XSTest, IFEval, и каком-то своем датасете.

У разных моделей разные паттерны Safefy
• У Квена Safety сконцентирована в 0 слое
• Gemma-2 больше всего в первом слое, но еще и на нескольких соседних
• Mistral / Yi - Safety распределена широко по всей модели

Safety ломается на разных битностях (при per-tensor квантизации). У квена уже при 6-битной квантизации refusal ломается, у Mistral на 4-х битах, Gemma-2 / Mixtral только при 2-битной, когда уже сама по себе модель перестает выдавать что-то внятное.

Далее авторы валидируют свой подход по safety-aware квантизации. Защищая конкретные слои удается для некоторых моделей (для Qwen-2.5-7B) прямо хорошо сохранить safety (в 1.9% модель согласилась выполнить harmful запрос против 90.3% без защиты). Но всегда оно так хорошо работает.

Еще утверждается, что подход обобщается на разные модели (Olmo / KIVI квантизатор). FP8 квантизация KV-кэша для Квена тоже существенно сказывается на safety, а вот если квантовать в INT - то почти без разницы с FP16.

💡 Выводы

Довольно важное наблюдение для развертывания моделей на практике. Провайдерам и владельцам разных сервисов стоит быть начеку, ибо экономия памяти без видимой просадки качества может привести к репутационным рискам и потерям. Интересно, если заквантовать кэш Фаблы 5-ой будет ли справедливо то же самое? Немного удивляет выбор моделей для статьи вышедшей в июне 2026 года - модели в основном довольно старые, никаких тебе последних квенов и гемм.
  • 👍 2
More from @quant_prune_distill
  1. Oct 6, 2026Совпадение? Не думаю!
  2. Oct 5, 2026Теперь уже даже время прочтения блога это ориентир не для человека, а для LLMки. https://r…
  3. Oct 4, 2026"Горячие" эксперты
  4. Oct 4, 2026photo post
  5. Oct 1, 2026🛠 Метод Типичный scaling law имеет вид: L(N, D) = A N^α + B D^β + c 🔄 Скейлинг по рекурс…
  6. Oct 1, 2026Scaling Laws for Looped Mixture of Experts 📄 Статья Есть MoE, которые как-то скейлятся (п…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →