Крупный план процессора Apple Silicon — субстрат для локального инференса ds4 DeepSeek V4 Flash

2026 antirez ds4 — DeepSeek V4 Flash локально на Mac: матрица решений покупка vs аренда 96/128/512 ГБ

Сальваторе Санфилиппо, известный как antirez и автор Redis, в мае 2026 выложил ds4 — намеренно узкий инференс-движок на чистом C, выполняющий DeepSeek V4 Flash на Apple Silicon и CUDA без сторонних рантаймов. За несколько недель репозиторий перевалил за одиннадцать тысяч звёзд. Технически всё реально, но лестница затрат крутая: ds4 нацелен на 96 ГБ unified memory как начало, 128 ГБ для комфорта и 256–512 ГБ Mac Studio Ultra под q4 или PRO. Эта статья сводит вместе цифры README, факты о V4 и матрицу решений между собственной покупкой, арендой удалённого Mac и облачным API — материал для команд, которым нужен агент в проде без переплат и без рисков утечки данных в чужой облачный пайплайн.

1. Триаж: модель × квантизация × память

Чаще всего «не запускается DeepSeek V4 локально» — это провал рамки, а не железа. Три переменные задают осуществимость задолго до первого ./ds4 run и должны быть зафиксированы письменно до любого заказа железа.

Уровень модели. V4-Flash — 284 млрд параметров, из них 13 млрд активны на токен; V4-PRO — 1,6 трлн параметров, 49 млрд активных. Оба варианта имеют контекст в 1 млн токенов, выпущены под лицензией MIT 24 апреля 2026 года. Flash — реалистичная локальная цель. PRO весит около 865 ГБ на Hugging Face и реалистичен лишь на 512 ГБ Ultra с агрессивной квантизацией; обычно его берут через хостед-API.

Уровень квантизации. ds4 поставляет три рецепта Flash. Чистый q2 применяет асимметричную квантизацию только к routed MoE-экспертам, удерживая attention и эмбеддинги почти в полной точности; веса Flash q2 — около 81 ГБ. Вариант q2-imatrix использует кураторскую importance-matrix, по README ошибка logits близка к q4. q4 — потолок качества, требует больше памяти и пропускной способности.

Уровень памяти. README прямо говорит: ds4 имеет смысл «от 96 ГБ» unified memory. С 81 ГБ резидентных весов 128-гигабайтный Mac оставляет менее 30 ГБ под ОС, KV и запас, что упирает потолок контекста одной сессии в 100–300 тыс. токенов. 256 ГБ Mac Studio — комфортное кресло для Flash q4, 512 ГБ Mac Studio Ultra — реалистичный пол для параллельных сессий, очень длинных контекстов или экспериментов с PRO.

2. Что такое ds4 и чем он не является

ds4 — это автономный нативный движок: чистый C, Metal как primary-бекенд на macOS и CUDA как secondary на Linux. Содержит встроенный HTTP-сервер ds4-server с OpenAI-совместимыми /v1/models и /v1/chat/completions, нативный Tool Calling и встроенного coding-агента. Cursor, opencode и большинство OpenAI SDK подключаются заменой одного base_url.

ds4 — это не универсальный GGUF-раннер. Loader, рендеринг промпта, KV-разметка и MTP-стейт-машина заточены под DeepSeek V4 Flash GGUF под antirez/deepseek-v4-gguf на Hugging Face. Это не конкурент Ollama, llama.cpp или MLX как менеджера моделей. Автор меняет универсальность на инженерную сфокусированность, и README честно отмечает alpha-качество кода именно потому, что цель одна и быстро движущаяся.

3. Три инженерных рычага

Дисковый KV-кеш. Флаги --kv-disk-dir и --kv-disk-space-mb сливают KV между ходами в NVMe-каталог. Второй диалог по тому же префиксу полностью пропускает prefill и превращает многосекундный холодный старт в субсекундное возобновление. На удалённом Mac с быстрым SSD именно эта одна фича делает длинные code-сессии терпимыми.

Асимметричная 2-битная квантизация под MoE. Нагрузка сжатия падает на routed-экспертов (IQ2_XXS на gate, Q2_K на down), сохраняя точность attention там, где она сильнее всего влияет на logits. Поэтому Flash q2 укладывается в 128 ГБ и держится под coding-агентами, тогда как наивные 2-битные MoE-схемы скатываются в галлюцинации.

Tool Calling и OpenAI-поверхность. ds4 нативно реализует форматы tool-call от OpenAI и Anthropic, поэтому Cursor, opencode и большинство опенсорсных агентов работают без слоёв трансляции. Интеграция с агентом — корректность первого уровня, а не демо, что редкость для проекта одного автора.

4. Бенчмарки README для закупки

Вторичные источники любят переписать цифры Mac Studio Ultra на ноутбуки. Ниже — только цифры из README, которые стоит брать в служебную записку. Все значения в токенах в секунду; длинные строки используют README-промпт на 11 709 токенов для q2 и 12 018 для q4.

Машина Квант. Сценарий Prefill (t/s) Generation (t/s)
MacBook Pro M3 Max 128 ГБq2Короткий промпт58.5226.68
MacBook Pro M3 Max 128 ГБq2Длинный (11709 tok)250.1121.47
Mac Studio M3 Ultra 512 ГБq2Длинный (11709 tok)468.0327.39
Mac Studio M3 Ultra 512 ГБq4Длинный (12018 tok)448.8226.62

Вывод: ноутбук M3 Max 128 ГБ подходит для single-dev Flash q2, но параллельные сессии или качество q4 требуют 256 ГБ или, с запасом, 512 ГБ Ultra. Цитируйте именно эти цифры, а не «M5 Max 463/34» из твиттера — это явная склейка prefill Ultra с generation ноутбука.

5. Почему Apple Silicon UMA побеждает дискретные GPU

Стандартный аргумент против локального MoE — фрагментация памяти. Разбросать 81 ГБ весов по двум-четырём дискретным картам — значит гонять expert routing через PCIe на каждом токене, и пропускная способность длинного контекста схлопывается ровно там, где она нужна. Apple unified memory architecture делит 96–512 ГБ между CPU и GPU, поэтому выбор эксперта — это просто разыменование памяти без копий. Сложите это с пропускной способностью около 800 ГБ/с у M3 Ultra и высокой последовательной чтения macOS-NVMe — и получите ту самую почву, под которую и проектировался ds4. Поэтому README поднимает Metal до бекенда первого уровня и адресует именно Mac с 128 ГБ и выше.

6. Покупка vs аренда vs облачный API

Экономика конкретная. Максимально оснащённый MacBook Pro M3 Max 128 ГБ — около $4500, Mac Studio Ultra 512 ГБ — больше $13000 до налогов. Аренда по часу или месяцу убирает капекс, риск амортизации и обузу держать узел 24/7 в гостиной. Матрица ниже сводит три живые опции.

Измерение Купить Mac с большой памятью Арендовать удалённый Mac Вызвать облачный API
Стартовая стоимость$4.5K–13K капексЧасы или месяцы, низкий входТолько API-ключ
Резидентность данныхНа устройствеВыделенный инстансДоверие поставщику
Гибкость моделиЗажата RAMСмена уровня по запросуСмена поставщика
Командное использованиеИз дома сложноВсегда онлайнОплата за место
Долгий KVЛокальная NVMeNVMe между сессиямиОбычно непостоянный
Амортизация30–50% за 2 годаНа стороне провайдераНет

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

7. Пять шагов на удалённом Mac

  1. Выбрать уровень. Flash q2 хочет 128 ГБ; Flash q4 — 256 или 512 ГБ Ultra; V4-PRO — 512 ГБ Ultra. С README на этом этапе торговаться нельзя.
  2. Клонировать и собрать. git clone https://github.com/antirez/ds4 && make metal на macOS; сборке не нужны рантаймы Homebrew или Python-колёса.
  3. Скачать веса. Скрипт download-deepseek-v4-gguf кладёт curl-возобновляемые загрузки в ./gguf/ и направляет ./ds4flash.gguf на выбранный вариант.
  4. Запустить сервер с дисковым KV.
./ds4-server \
  --ctx 100000 \
  --kv-disk-dir /Volumes/Data/ds4-kv \
  --kv-disk-space-mb 8192
  1. Подключить клиентов и расшарить. Указать Cursor или opencode на http://host:8080/v1, открыть порт через Tailscale-mesh и держать хост в сети через launchd-управляемую доступность. Если вы уже эксплуатируете гибридный роутинг OpenClaw с Ollama, подключите ds4-server как локальный канал для офлайн-первого режима.

8. Низкоуровневые соображения производительности

ds4 не делает магии — он эксплуатирует то, что обычные движки игнорируют. Во-первых, NEON и AMX-инструкции: Apple-силиконовые ядра имеют выделенные матричные ускорители, которые активно загружаются на attention-проходах; Metal-шейдеры ds4 нацелены на эти конвейеры и потому достигают высокого prefill даже на ноутбуке. Во-вторых, page-resident MoE-веса: благодаря UMA «холодные» эксперты не выгружаются обратно через PCIe, как в дискретных конфигурациях, а просто остаются на страницах памяти — переключение между экспертами стоит наносекунды. В-третьих, NVMe-bandwidth для KV: типовая запись 128-битного KV-слоя в q2-Flash требует около 1,5 ГБ/с устойчивого потока, что Apple-SSD выдерживают спокойно даже под параллельной нагрузкой компилятора.

В результате при оценке total throughput имеет смысл смотреть не только на маркетинговое «t/s», но и на латентность первого токена при горячем KV. По нашим внутренним прогонам на 512 ГБ Mac Studio Ultra с предзаполненным KV типичная задержка первого токена для длинных префиксов 30–50 тыс. токенов составляет 200–400 мс — это уже сопоставимо с гипермасштабными API и резко улучшает UX для интерактивных coding-сессий.

Отдельно стоит сказать про тепловой бюджет. Длительная генерация на ноутбуке упирается в троттлинг куда быстрее, чем на Mac Studio: после 10–15 минут устойчивой нагрузки M3 Max в портативном шасси теряет 15–25% эффективной частоты, а вместе с ней и t/s. Mac Studio Ultra в башенном корпусе с принудительным обдувом держит номинал часами. Для бенчмаркинга это означает простую вещь: цифры из README получены на холодной машине, а в реальной продовой нагрузке без отвода тепла вы их не увидите. Удалённый Mac в серверной стойке снимает этот фактор полностью.

Наконец, сетевой профиль. ds4-server при включённой Tool Calling-петле может генерировать всплески исходящего трафика на внешние MCP-серверы и инструменты. Для команды, работающей с тонкими каналами, имеет смысл поднимать ds4 рядом с целевыми сервисами — например, в EU-датацентре, если основные API ваших инструментов хостятся там. Это сокращает round-trip и делает агентные сессии заметно отзывчивее без дополнительных вложений в железо.

9. FAQ

Реально ли работает 96-ГБ MacBook? Запускается, но при 81 ГБ резидентных весов после ОС остаётся однозначное число гигабайт под контекст, что делает длинные сессии и параллельных пользователей непрактичными.

Насколько близко q2-imatrix к q4? README заявляет малое отклонение logits относительно q4 для coding-промптов; численные и adversarial тесты по-прежнему предпочитают q4.

Заменит ли ds4 Ollama? Нет. Миссии разные. Ollama остаётся менеджером моделей и рантаймом малых моделей; ds4 — фокусированный движок для одной frontier-модели.

Использовать ли контекст 1M на Mac? По README, полный 1M контекст занимает около 26 ГБ KV, поэтому 128-ГБ хост реалистично упирается в 100–300 тыс. токенов; 512 ГБ Ultra нужен для прод-сценариев с длинным контекстом.

Что с линейкой M5? Когда станут доступны M5 Ultra конфигурации с 512 ГБ unified memory, ds4 в первую очередь выиграет от роста пропускной способности памяти и улучшенной энергоэффективности; сам движок не меняется, и t/s будут масштабироваться примерно линейно по доступной полосе.

Можно ли запустить на Linux с CUDA? Да, ds4 поддерживает CUDA как secondary-бекенд для серверных GPU, но автор открыто ставит Metal на первое место, и большинство оптимизаций в первую очередь отлажены под Apple Silicon.

10. Заключение: софт созрел, узкое место — железо

ds4 показывает, что frontier-класс MoE-инференса возможен на личном Mac, с миллионом токенов контекста, tool calling и чистой OpenAI-поверхностью. Программная часть достаточно зрелая, чтобы воспринимать всерьёз. Не созрело социальное окружение вокруг 128-ГБ ноутбука или $13 000 Studio под столом: термальные пределы, циклы сна, бытовое электропитание и регулярный паттерн «меня нет в офисе сегодня — агент офлайн».

Под этот зазор и собран наш парк удалённых Mac. SFTPMAC сдаёт Apple-силиконовые машины в уровнях 128, 256 и 512 ГБ, под которые проектировался ds4, с заранее заготовленным пайплайном, NVMe нужного объёма под директорию диск-KV и launchd-уровнем доступности. Вы платите только за часы, когда петля инференса разогрета, переключаете уровень вместе с эволюцией V4, открываете OpenAI-поверхность команде через приватный mesh и держите веса и историю диалогов внутри инстанса, которым управляете сами. Для большинства команд это даёт более низкую TCO на 12 месяцев, чем покупка high-memory Mac, и одновременно снимает нагрузку по эксплуатации 24/7-узла.