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

DeepSeek V4.1 Flash 1017 в ds4: что даёт PR #1225 и какие квантованные сборки доступны для локального запуска

PR #1225 добавляет в antirez/ds4 поддержку чекпоинта DeepSeek V4.1 Flash 1017: новые engrams, обновлённый vision tower и проверку пары vision+language. Разбирае

Коротко

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

  1. 01

    Что произошло: PR #1225 и ревизия DeepSeek V4.1 Flash 1017

  2. 02

    Совместимость с квантами ds4 и отсутствие регрессий

  3. 03

    Что это значит для локального запуска на практике

  4. 04

    Какие квантованные сборки уже есть: Q2-Q8 и EXL3 2.9 bpw

Что произошло: PR #1225 и ревизия DeepSeek V4.1 Flash 1017

PR #1225 в репозитории antirez/ds4 добавляет поддержку чекпоинта DeepSeek V4.1 Flash 1017. Внутри три вещи: новые таблицы engrams, обновлённый vision tower и проверка того, что файлы vision и language взяты из одной ревизии. Ядро движка не менялось, архитектура модели осталась прежней.

Практический итог для локального запуска: после принятия PR чекпоинт встаёт в существующие кернелы без правок ядра, а файлы, квантованные набором ds4, загружаются без дополнительных модификаций. Регрессий для предыдущего чекпоинта автор PR не заявляет (текст PR и обсуждение в r/LocalLLaMA). Смешивать файлы разных ревизий нельзя: на паре vision+language из разных версий загрузка завершается ошибкой.

Ревизия крупная: около 40% routed expert-тензоров изменено, 30% в engrams и примерно 50% expert-тензоров vision tower. Отсюда главное ограничение: старые engram-шарды к 1017 не подходят, таблицы берут из базового репозитория 1017. И ещё один момент, который легко упустить: до влития PR чекпоинт к существующим кернелам не подключается вообще.

Инфраструктурный характер изменений: что именно добавили

Слово «поддержка» здесь описывает работу с файлами, а не с математикой модели. По пунктам:

  • Совместимость с новыми ревизиями файлов. Раскладка шардов 1017 отличается от предыдущего чекпоинта, и движок теперь разбирает её корректно.
  • Проверка соответствия vision+language. PR сверяет комбинацию файлов и поднимает ошибку, если vision tower и language-часть относятся к разным ревизиям.
  • Ноль правок ядра. Архитектура та же, поэтому чекпоинт занимает место в уже существующих кернелах.

Новых кернелов, нового формата весов и нового движка в PR нет. Кто ждал от 1017 прироста скорости за счёт переписанных вычислений, может выдохнуть и не ждать: считать будет тот же код, что и на предыдущем чекпоинте.

Масштаб ревизии в цифрах: 40% / 30% / 50%

КомпонентДоля изменённых тензоровЧто это значит на практике
Routed expert-тензорыоколо 40%основная масса весов MoE-экспертов пересчитана, старые кванты неприменимы
Engrams30%две таблицы Engram изменены, шарды берут из базового репозитория 1017
Expert-тензоры vision towerоколо 50%визуальная часть обновлена наполовину, пара с language должна быть из той же ревизии

Цифры объясняют, почему нельзя собрать frankenstein-сборку из файлов разных версий. Проверка vision+language поймает несовпадение ревизий vision и language, а вот за тем, что engrams взяты из 1017, следить приходится самому: такую проверку PR не описывает.

Совместимость с квантами ds4 и отсутствие регрессий

Файлы, квантованные набором ds4, грузятся без специальных изменений. Это ключевая практическая ценность для тех, у кого движок уже развёрнут: не нужно заново прогонять квантование и заново калибровать веса. PR не вносит регрессий для предыдущего чекпоинта, то есть старая сборка продолжает работать как работала.

Совместимость не означает «любые файлы от любых ревизий». Речь о файлах, собранных набором ds4 под конкретный чекпоинт; сторонние форматы и чужие пайплайны PR не покрывает. Если сборка делалась другим инструментом, совместимость придётся проверять самостоятельно, а не рассчитывать на неё по умолчанию. О том, как устроены кастомные кванты под ds4 и какие подводные камни там встречаются, подробно разобрано в материале про DS4 DwarfStar и кастомные квантизации Q2-Q4.

Почему engrams нужно брать из базового репозитория 1017

В релизе 1017 две таблицы Engram изменились. Их место - базовый репозиторий 1017, а шарды из более старого релиза переиспользовать нельзя (карточка сборки 1017 на Hugging Face с указанием на базовый репозиторий). Правило короткое: engrams и vision tower - из 1017, квантованные веса - из набора ds4.

Отдельная ловушка при апгрейде уже существующей установки V4.1: старые шарды 47/48 Engram могут остаться на диске, если не указать новый каталог и не сверить sha256. Загрузчик возьмёт то, что лежит рядом, и вы получите смесь ревизий без единого сообщения об ошибке.

Проверка vision+language: как работает защита от смешанных пар

PR сверяет комбинацию vision+language и намеренно падает при смешанной паре. Это защита от несовместимых файлов, а не баг и не поломка установки. Логика простая: обновлённый vision tower из 1017 и language-часть из предыдущего релиза дают на выходе мусор, поэтому дешевле остановиться на старте.

Практический порядок действий при такой ошибке: проверить, из одной ли ревизии взяты vision tower и language-часть, сверить путь к каталогу с чекпоинтом и только потом смотреть в сторону кернелов. В большинстве случаев проблема в каталоге, который остался от прошлой установки.

Что это значит для локального запуска на практике

Автор PR анонсировал смешанный квант Q2-Q8 для 128 ГБ с небольшим SSD-оффлоадом: 152 ГБ wired, 366 ГБ всего с engrams, ожидаемое декодирование около 20 tps на M5 Max. Всё это заявление о будущей загрузке, а не подтверждённый замер: на момент публикации PR сборка не выложена.

Требования к памяти и диску: 152 ГБ wired и 366 ГБ всего

Разбираем цифры. 152 ГБ wired - та часть, которая должна постоянно жить в оперативной памяти и не выгружается в swap. 366 ГБ - общий объём файлов с учётом engrams. Если вычесть из 366 ГБ 152 ГБ, остаётся около 214 ГБ под engrams и то, что читается с SSD; небольшой оффлоад как раз про это.

Цифры стоит свести самому: квант анонсирован «для 128 ГБ», при этом wired-часть указана как 152 ГБ. Автор не пояснял, как одно сочетается с другим, поэтому ориентируйтесь на фактическое потребление своей системы, а не на круглое «128». И держите в голове, что 128 ГБ - конфигурация, под которую квант анонсирован, а не универсальный минимум для 1017.

Ожидаемые ~20 tps на M5 Max: как трактовать цифру

Около 20 tps на M5 Max - ожидание автора PR, а не независимый замер. Декодирование при SSD-оффлоаде плавает: скорость зависит от того, сколько весов реально читается с диска на каждом токене, от пропускной способности SSD и от длины контекста. Для сравнения масштаба полезны сторонние замеры того же семейства моделей на другом железе, например 40,3-40,7 tok/s в Q2_K на восьми A40 у TensorSharp. Но это другая конфигурация, другой движок и другая сборка, поэтому напрямую переносить цифры на M5 Max нельзя.

Какие квантованные сборки уже есть: Q2-Q8 и EXL3 2.9 bpw

На выбор два разных пути, и путать их не стоит. Первый - анонсированный смешанный квант Q2-Q8 под 128 ГБ и macOS-сетап с SSD-оффлоадом. Второй - уже существующая EXL3-сборка под GPU-кит.

EXL3 2.9 bpw: размер, шарды и целевой сетап

Сборка LibertAIDAI/DeepSeek-V4.1-Flash-1017-EXL3-2.9bpw занимает 210.7 ГБ (196.3 GiB) и разложена на 43 safetensors-шарда. Vision tower и aligner в ней скопированы из базового чекпоинта без изменений.

  • Целевой сетап: vLLM-based kit, 2x DGX Spark, TP=2. Раскладка чекпоинта следует именно этому набору.
  • Ограничение тулинга: в upstream exllamav3 пока нет класса модели DeepseekV41, поэтому загрузить чекпоинт напрямую не получится. Это ограничение инструмента, а не ошибка в вашей конфигурации.
  • Практика запуска vLLM: многое решают настройки экспертного параллелизма и режим attention, о чём предметно писали в разборе запуска DeepSeek-V4-Flash на одном B300.

Насколько проседает качество при квантовании

Для EXL3 2.9 bpw есть конкретная метрика: на отложенном тексте perplexity выше неквантованной модели на 1.8% для кода и на 0.4% для прозы. Для кода деградация заметнее, и это ожидаемо: код чувствительнее к мелким искажениям весов.

Важная оговорка: perplexity - метрика предсказания следующего токена, а не результат задач. Она не говорит, насколько чаще модель ошибается в агентном цикле или в вызове инструментов. И переносить эти проценты на анонсированный Q2-Q8 нельзя: для него замеров нет вообще, а 2-битные уровни обычно стоят дороже по качеству, чем 2.9 bpw.

Кому стоит обновляться, а кому подождать

Обновляться имеет смысл тем, кто уже работает на ds4 и хочет именно новую ревизию: PR не ломает прошлый чекпоинт, кванты ds4 грузятся без правок, а ядро трогать не нужно. Переход сводится к замене файлов и проверке каталогов.

Подождать стоит в трёх случаях. Если ваш пайплайн завязан на upstream exllamav3: класса DeepseekV41 там нет, прямой загрузки чекпоинта не будет. Если памяти меньше 128 ГБ и нет запаса SSD под 366 ГБ с engrams: анонсированный квант рассчитан на другую конфигурацию, а требований под меньшие объёмы автор не приводил. Если нужны подтверждённые цифры скорости: ~20 tps на M5 Max остаются ожиданием, независимых замеров нет.

Чек-лист перед обновлением

  1. Взять engrams и vision tower из базового репозитория 1017. Шарды из более старого релиза не переиспользовать, старые 47/48 удалить или убрать из пути.
  2. Сверить sha256 скачанных шардов: при апгрейде существующей установки файлы от прошлой ревизии часто остаются на месте.
  3. Убедиться, что vision и language из одной ревизии. Иначе загрузка упадёт с ошибкой, и это штатное поведение.
  4. Проверить свободное место: около 366 ГБ с engrams плюс запас под SSD-оффлоад.
  5. Для EXL3-сборки: наличие vLLM-based kit (2x DGX Spark, TP=2) и понимание, что upstream exllamav3 чекпоинт напрямую не грузит.
  6. Не планировать рост скорости: кернелы те же, прирост может дать только новая ревизия весов, а не движок.

Начните с одного теста: скачайте engram-шарды из 1017, сверьте хеши и попробуйте загрузить текущий квант ds4 на новом каталоге. Если загрузка прошла без ошибки vision+language, можно переносить остальные файлы и только после этого думать про анонсированный Q2-Q8.

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