惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Visual Studio Blog
爱范儿
爱范儿
GbyAI
GbyAI
博客园 - 叶小钗
Last Week in AI
Last Week in AI
Jina AI
Jina AI
Microsoft Security Blog
Microsoft Security Blog
云风的 BLOG
云风的 BLOG
C
Check Point Blog
H
Help Net Security
P
Proofpoint News Feed
酷 壳 – CoolShell
酷 壳 – CoolShell
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
大猫的无限游戏
大猫的无限游戏
H
Hackread – Cybersecurity News, Data Breaches, AI and More
B
Blog RSS Feed
Y
Y Combinator Blog
U
Unit 42
T
Tailwind CSS Blog
MyScale Blog
MyScale Blog
N
Netflix TechBlog - Medium
S
SegmentFault 最新的问题
J
Java Code Geeks
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知

Все публикации подряд на Хабре

Ловим музу за клавиатуру: как айтишнику стать автором Что умеет Midjourney в 2026? Мой немного грустный разбор этого шикарного инструмента Никто не любит писать тесты, но ИИ может исправить это IPv8 выглядит как мечта. Поэтому почти наверняка не взлетит Производители вернули в продажу материнки с DDR3. Что происходит? Управление агентом с телефона через Telegram теперь в KodaCode От координации к лидерству: как меняется роль руководителя разработки Я сделала родителям бизнес вместо пенсии: зарабатываем 70 тысяч, мама не даёт продать В три раза быстрее приемка товара и оптимизация трудозатрат на 73%: как «РСТ-Инвент» помог Gulliver Group ИИ-шечный мир победил? О влиянии искусственного интеллекта на игропром Кремль снижает давление на Телеграмм пока Европа строит интернет по паспорту Как CEO, CTO и CIO за 8 часов собрали ИИ-директора, который умеет держать позицию под давлением Как (не) потерять домен за выходные Вместо 8 разных VPS: как я организовал практику студентам на одном сервере Почему твой Open Source проект не замечают? R&D: искусство управления неопределенностью в разработке AI-дефляция: вакансий для разработчиков больше, а рост зарплат — худший за 15 лет Мы отдали управление роботами OpenClaw. Что из этого вышло Галактический ID: система идентификации для всех форм разумной жизни Шесть основ бизнес-анализа: начинаем с вопроса «Кто в игре?» Код-ревью, в котором дело не в коде Данные переехали. Команда — нет Системной подход к сдаче OSWE в 2025 Почему комната управления реактором покрашена в цвет морской пены 4 YAML-файла вместо PySpark: как аналитикам строить пайплайны без разработчиков LLM-агент для поиска свободных доменов: автоматизируем подбор Когда, зачем и как правильно начинать новую сессию в Claude Code? Как я заставил нейросеть писать макросы для FreeCAD Анатомия ИИ‑агента для подбора персонала. От тысячи резюме к топ‑10 за минуты Опыт разработчика как экономика внимания
Развернул Gemma 4 31B на одной 4090 48GB — и проверил, ну...
Даниил Иванов · 2026-06-25 · via Все публикации подряд на Хабре

Простой

3 мин

0

Развернул Gemma 4 31B на одной 4090 48GB — и проверил, нужен ли Q8

В прошлой статье я собрал бенчмарк под свою работу, и в практике победила Gemma 4 31B — мгновенный отклик, дёшево, почти как у 744-миллиардного гиганта. Логичный следующий шаг: поднять её у себя в контуре и ответить на два вопроса, которые все задают и никто не меряет.

→ Нужен ли «честный» Q8, или хватает 4-бит? → Переживает ли нормально tool-calling квантизацию?

Спойлер: Q8 не дал ничего, а tool-calling держится — но не из-за кванта. Дальше — как разворачивал, на чём споткнулся, и цифры.

Железо и стек

Одна RTX 4090 на 48 ГБ (спот), llama.cpp, GGUF от Unsloth. Никакого vLLM/SGLang: для одного пользователя на одной карте llama.cpp сейчас — король, а их continuous batching и RadixAttention выстреливают только под конкурентной нагрузкой, которой у меня нет.

Грабли при развёртывании, без них никуда:

-hf не качает. Сборка llama.cpp на споте была без SSL — встроенный загрузчик с HuggingFace падает на HTTPS is not supported. Пересобирать ради одного флага глупо: скачал GGUF обычным curl и указал --model на локальный файл. → systemd вместо nohup. Спот + флакающая сеть = nohup & не переживал обрыв SSH. systemd-run --unit=gemma4 --collect отвязывает процесс полностью — сервер живёт независимо от моей сессии. → Флаг сменил синтаксис. В свежем llama.cpp --flash-attn теперь требует значение: --flash-attn on, а не голый флаг.

Квант: Q4-dynamic vs Q8

Ключевая деталь — это не наивный Q4. Unsloth Dynamic 4-bit (UD-Q4_K_XL) держит чувствительные слои в большей точности, а 4-бит уходит только туда, где это безопасно; по их KL-дивергенции это near-lossless. Прогнал обе квантизации на тех же 50 задачах, тем же 3-судейным ансамблем:

Q4-dynamic

Q8

Балл

0.735

0.742

Прошло задач

45/50

42/50

Tool-calling

1.00

1.00

tok/s

39.8

25.4

VRAM

27 ГБ

40 ГБ

Q8 дал +0.007 — это шум. За него: в 1.6 раза медленнее, +13 ГБ видеопамяти (меньше места под контекст), и при этом Q4 прошёл задач даже больше. Прирост Q8 — микроскопический и только на доках/стратегии (+0.02–0.03). Все объективные задачи (код, SQL, инфра, tool-calling) — идентичны.

Вывод: на 48 ГБ можно влепить Q8 — но не нужно. Dynamic-4bit = та же точность, вдвое меньше памяти, полный контекст, быстрее. «Честный Q8» здесь — самообман.

Tool-calling: дело было не в кванте

Главный рычаг надёжности tool-calling оказался не в квантизации, а в одном флаге сервера: --jinja. Он включает родной chat-template модели, который и форматирует, и парсит вызовы инструментов. Без него tool-calling ломается хоть на Q4, хоть на Q8. С ним — 1.00 на обеих квантизациях.

То есть «4-бит ломает инструменты» — миф для наивного Q4 без правильного шаблона. Dynamic-4bit + --jinja держит вызовы идеально.

Неожиданный бонус: локально — надёжнее, не только дешевле

Тот же бенчмарк через облачный API на 50 задачах развалился: 33% вызовов упали с APIConnectionError — прокси не пережил длинный прогон. Локальные прогоны — ноль ошибок. Причина простая: при self-host кандидат отвечает напрямую, через прокси идут только судьи, то есть вдвое меньше точек отказа.

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

Что в итоге запускать

Gemma 4 31B, Dynamic-4bit, llama.cpp + --jinja, на одной 48 ГБ карте. Мгновенный отклик (TTFT 0.39 с — быстрее облака), полностью в контуре, ноль внешних вызовов в рантайме. Это рабочая лошадь под ежедневный поток. → GLM-5.2 (744B) остаётся короной качества для самых тяжёлых решений — но это «отправь и жди» на чужих картах.

«Лучшая модель под мою работу» оказалась моделью, которую я держу на одной карте у себя — и которая на 4-битах отвечает не хуже, чем на 8.