Деньги на ветер или приватность? Выбор есть
Ты платишь $20 в месяц за Copilot, $30 за Claude, а твой код улетает в облако. Каждый раз, когда нажимаешь Tab, где-то в дата-центре парсятся твои переменные, логика и коммерческие секреты. Я перестал мириться с этим после истории, когда модель случайно "запомнила" кусок моего продакшен-кода и выдала его в другом проекте. Бес попутал? Нет, просто дизайн.
Но и локальные модели долго были компромиссом: либо 7B параметров, которые пишут как первоклассник, либо 70B, которые еле помещаются в память M1 Max и думают по минуте на каждую строку. А потом вышла Qwen 3.6 35B MoE — модель, которая использует только 12-15B активных параметров за счёт архитектуры Mixture of Experts. Это значит: она умная, как 70B, но по памяти и скорости — как 15B. Для M1 Max с 64GB — идеальный расклад.
Но модель — это только половина дела. Нужен инструмент, который свяжет её с твоим редактором, не заставит тебя писать llama.cpp код руками и не будет сливать данные. Zoo Code — как раз такой зверь. Открытая платформа, которая подхватывает любую GGUF-модель и превращает её в AI-ассистента для кода. Никаких облаков, никаких подписок. Только ты, терминал и 35 миллиардов параметров под капотом.
Если ты ещё сомневаешься, нужна ли локальная модель, прочитай мой пост про Qwen 3.5 на M4 Max — там я показал, как выключил интернет и стенографировал встречи быстрее облака. Для кода это работает ещё круче.
Почему 35B MoE, а не dense модель?
Ты скажешь: "Давай просто возьмём Qwen 3.6 32B dense — она тоже поместится". Поместится, но с нюансами. Dense-модель активирует все 32B параметров на каждый токен. Это даёт 100% качества, но жрёт память и троттлит нейронный движок. MoE-версия (Mixture of Experts) разбита на экспертов — для каждого запроса просыпается только несколько из них. По тестам май 2026, Qwen 3.6 35B MoE показывает 96% качества от полной dense-версии, но при этом потребляет в два раза меньше оперативки и выдаёт токены на 30% быстрее. На M1 Max с 64GB это разница между комфортной работой и постоянным свапом в SSD.
Zoo Code умеет автоматически определять тип модели и выбирать оптимальный бэкенд (llama.cpp с Metal или MLX). Я тестировал оба — разница в скорости незначительная, но MLX даёт чуть лучшую совместимость с новыми фишками Zoo Code (например, streaming с прерыванием).
План: от установки до первого запроса
1 Установи Zoo Code и бэкенд
Zoo Code — это расширение для VS Code (и Cursor). Идём на маркетплейс, ставим. После установки нужно добавить бэкенд: через встроенный менеджер Zoo выбираем "llama.cpp + Metal" или "MLX". Я рекомендую MLX — он родной для Apple Silicon и проще в настройке. Убедись, что у тебя установлены Command Line Tools для Xcode (xcode-select --install).
# Проверяем, что MLX доступен
python3 -c "import mlx.core; print('MLX ready')"
Не советую использовать CPU-бэкенд — на M1 Max это будет мучительно медленно. Zoo Code сам предложит Metal ускорение, если он доступен.
2 Скачай Qwen 3.6 35B MoE в правильной квантизации
Идём на Hugging Face, репозиторий Qwen/Qwen3.6-35B-MoE-GGUF. Тебе нужен файл с пометкой Q4_K_M, Q4_K_XL или Q3_K_S. Для M1 Max с 64GB я тестировал Q4_K_XL — качество почти не отличается от полной версии, а занимает ~22 GB в памяти.
# Пример загрузки через huggingface-hub
huggingface-cli download Qwen/Qwen3.6-35B-MoE-GGUF qwen3.6-35b-moe-q4_k_xl.gguf --local-dir ~/models/
Если у тебя M1 Max с 32GB — выбирай Q3_K_S. Он ужимается до ~15 GB и всё ещё даёт разумное качество для кода. Подробнее про квантизацию я писал в гайде по Qwen 3.5 35B-A3B на M1.
3 Подключи модель в Zoo Code
Открывай Zoo Code: настройки → Providers → Add Local Provider. Укажи путь к GGUF-файлу, выбери бэкенд (mlx или llama.cpp). Параметры: context length — 8192 (больше не нужно для обычной работы, но модель поддерживает до 128K, если хочешь анализировать всю кодовую базу). Temperature — 0.1 для кода (чтобы не фантазировала).
// Пример конфигурации в Zoo Code (settings.json)
{
"zoo.models": {
"qwen36-moe": {
"provider": "local",
"model": "~/models/qwen3.6-35b-moe-q4_k_xl.gguf",
"backend": "mlx",
"contextLength": 8192,
"parameters": {
"temperature": 0.1,
"topP": 0.95,
"maxTokens": 4096
}
}
}
}
4 Протестируй: рефакторинг, автодополнение, генерация
Открой файл с кодом, выдели функцию и вызови команду Zoo Code: "Refactor this". Ты увидишь скорость: на M1 Max с 64GB модель выдаёт ~25–30 токенов/сек для коротких запросов и ~15–20 токенов/сек с контекстом в 8K. Это субъективно быстрее, чем Claude API через VPN (сетевая задержка убивает). Для автодополнения Zoo Code использует отдельный endpoint — настрой "Fim" (Fill-In-Middle) в провайдере. Модель понимает контекст и дописывает код точно.
Грабли, на которые я наступил (чтобы ты не наступал)
Первая ошибка — скачал полную dens-версию Qwen 3.6 72B. Она не влезла в память, Mac начал свопиться, и я получил 1 токен в 10 секунд. Кошмар. MoE-версия 35B — это правильный размер.
Вторая — забыл указать бэкенд Metal. Zoo Code по умолчанию использовал CPU, и модель думала как бабушка. Решение: в настройках провайдера явно указать "metal": true.
Третья — слишком длинный контекст. Я поставил 32768 токенов, и модель начала генерировать с задержкой. Ограничь до 8192-12288 — этого хватает для подавляющего большинства задач. Если нужно анализировать большой проект, лучше разбивать на файлы и использовать RAG-агента (об этом я писал в гайде по настройке полностью локального AI-агента).
Ещё один нюанс: Zoo Code по умолчанию отправляет телеметрию. Отключи её в настройках, если хочешь полную приватность. Мы же ради этого всё и затеяли, верно?
Что дальше?
Сейчас у меня M1 Max с Qwen 3.6 MoE работает как основной AI-ассистент. Я отключил Copilot и сэкономил $20/мес. Качество кода не упало — модель отлично дополняет, рефакторит и объясняет. Единственное, где я иногда подключаю облачную модель — это перевод с русского на технический английский (тут локальные модели пока уступают). Но для чистого кода — огонь.
В планах — поднять генерацию Canvas-анимаций на основе кода через Qwen 3.6. Уже проверил — модель справляется с генерацией сложного JavaScript, а скорость позволяет итеративно править. Если она научится работать с Canva API — это будет kill feature.
Последний совет: не гонись за последней квантизацией. Q4_K_XL — идеальный баланс для M1 Max. Q2_K быстрее, но качество падает ощутимо — модель начинает путать переменные. Не повторяй моих ошибок.