Когда 120 миллиардов параметров — это не шутка
Представьте модель, которая никогда не говорит "я не могу ответить на этот вопрос". Которая не уклоняется от острых тем. Которая на 120 миллиардов параметров. И которая работает на вашем железе. Звучит как фантастика? Это GPT-OSS 120B Uncensored.
Эта штука — не очередная обрезанная версия ChatGPT. Это полноценная Mixture of Experts архитектура с 128 экспертами, где каждый запрос активирует только top-4. В теории это должно быть быстрее. На практике — нужно знать, как заставить эту махину работать.
Архитектура, которая сводит с ума
MoE — это не просто "большая модель". Это 120B параметров, распределенных по 128 экспертам. Каждый эксперт — специалист в своей области. Когда вы задаете вопрос, модель выбирает 4 наиболее подходящих эксперта и комбинирует их ответы.
Почему это важно? Потому что стандартный llama.cpp до недавнего времени с MoE не дружил. Вернее, дружил, но требовал танцев с бубном. Сейчас появился флаг --n-cpu-moe, который меняет правила игры.
Железо: что реально нужно?
Давайте сразу отбросим иллюзии. GPT-OSS 120B Uncensored — не для слабых ПК. Но и не для дата-центров Google.
| Конфигурация | Минимум | Комфортно | Идеально |
|---|---|---|---|
| RAM | 64 ГБ | 128 ГБ | 256 ГБ+ |
| VRAM | 24 ГБ (Q4_K_M) | 48 ГБ (Q8_0) | 80 ГБ+ (FP16) |
| CPU ядра | 8 потоков | 16 потоков | 32+ потока |
| Скорость (токенов/с) | 1-2 | 4-6 | 10+ |
Самый частый вопрос: "А если у меня только 32 ГБ RAM и 12 ГБ VRAM?" Ответ: забудьте. Или читайте мой гайд про запуск больших моделей на старом железе, там другие техники.
Не пытайтесь запустить Q4_K_M версию на 16 ГБ RAM. Система упадет. Проверено. Неоднократно.
Шаг 1: Скачиваем правильную версию
Первая ошибка — скачать не ту квантованную версию. GPT-OSS 120B выпускается в разных форматах, но для llama.cpp нужен GGUF. И здесь есть нюанс.
1 Выбираем квантование
На 13.02.2026 актуальны три основных варианта:
- Q4_K_M — 48 ГБ файл, минимальное качество для работы
- Q6_K — 68 ГБ, баланс скорость/качество
- Q8_0 — 88 ГБ, почти без потерь
- MXFP4 — 44 ГБ, новый формат от Meta (самый интересный)
MXFP4 — это не просто очередное квантование. Это новый формат от Meta, который сохраняет больше информации в 4 битах. На практике — качество как у Q5_K, но размер как у Q4_K_M. Если ваш llama.cpp поддерживает MXFP4 (а на 2026 год должен), берите его.
# Скачиваем MXFP4 версию (пример для Hugging Face)
wget https://huggingface.co/TheBloke/GPT-OSS-120B-Uncensored-GGUF/resolve/main/gpt-oss-120b-uncensored.Q4_K_M.gguf
# Или через git-lfs, если файл огромный
git lfs install
git clone https://huggingface.co/TheBloke/GPT-OSS-120B-Uncensored-GGUF
Шаг 2: Собираем llama.cpp с MoE поддержкой
Стандартная сборка llama.cpp из репозитория может не иметь последних фич для MoE. Проверяем:
# Клонируем репозиторий (обязательно с подмодулями)
git clone --recursive https://github.com/ggerganov/llama.cpp
cd llama.cpp
# Смотрим, есть ли флаг --n-cpu-moe в help
grep -r "n-cpu-moe" .
Если не нашли — нужно обновить. На 13.02.2026 поддержка MoE должна быть в основной ветке, но проверяем:
# Собираем с поддержкой CUDA (если есть видеокарта)
make clean
LLAMA_CUDA=1 make -j$(nproc)
# Или без CUDA для CPU-only
make clean
make -j$(nproc)
Шаг 3: Магия флага --n-cpu-moe
Вот где начинается самое интересное. Флаг --n-cpu-moe позволяет оффлоадить экспертов на CPU. Зачем? Потому что 128 экспертов не помещаются даже в 80 ГБ VRAM.
2 Как работает оффлоад
Представьте: у вас 48 ГБ VRAM. GPT-OSS 120B в Q4_K_M занимает 48 ГБ. Кажется, все помещается? Не тут-то было. Нужно место для KV cache, для активаций, для буферов.
Флаг --n-cpu-moe 64 говорит: "Держи 64 эксперта в VRAM, остальные 64 гони на CPU". Когда нужен эксперт из CPU-пула — он загружается в VRAM, вытесняя менее используемого.
# НЕПРАВИЛЬНО: пытаемся все запихнуть в VRAM
./main -m gpt-oss-120b.Q4_K_M.gguf -p "Привет" -n 256 \
--n-gpu-layers 9999 # Так не работает с MoE!
# ПРАВИЛЬНО: используем оффлоад"./main -m gpt-oss-120b.Q4_K_M.gguf -p "Привет" -n 256 \
--n-gpu-layers 80 \
--n-cpu-moe 64 \
--tensor-split 0.8,0.2 # 80% на GPU0, 20% на GPU1 (если есть)
Почему --n-gpu-layers 80, а не 9999? Потому что в MoE-моделях не все слои одинаковы. Эксперты — это отдельные блоки. Фактически вы говорите: "Положи 80 экспертов в VRAM, остальные пусть болтаются в RAM".
Шаг 4: Тонкая настройка под ваше железо
Здесь нет универсальных рецептов. Каждая конфигурация уникальна. Но есть проверенные комбинации.
3 Конфигурация A: 48 ГБ VRAM + 128 ГБ RAM
./main -m gpt-oss-120b.Q4_K_M.gguf \
-p "Напиши техническое описание квантового компьютера" \
-n 512 \
--temp 0.7 \
--top-p 0.9 \
--repeat-penalty 1.1 \
--n-gpu-layers 72 \
--n-cpu-moe 56 \
--ctx-size 4096 \
--batch-size 512 \
--ubatch-size 256 \
--parallel 4 \
--mlock \
--no-mmap \
-t 16
Что здесь важно:
--n-gpu-layers 72— 72 эксперта в VRAM--n-cpu-moe 56— 56 экспертов в RAM (итого 128)--mlock --no-mmap— фиксируем модель в RAM, убираем swapping-t 16— 16 потоков CPU для обработки экспертов в RAM
4 Конфигурация B: 24 ГБ VRAM + 64 ГБ RAM (пограничный случай)
./main -m gpt-oss-120b.Q4_K_M.gguf \
-p "Объясни квантовую механику как пятилетнему" \
-n 256 \
--temp 0.8 \
--n-gpu-layers 32 \
--n-cpu-moe 96 \
--ctx-size 2048 \
--batch-size 256 \
--ubatch-size 128 \
--parallel 2 \
-t 8 \
--no-mmap \
--memory-f32 # Используем float32 для CPU вычислений
С конфигурацией B готовьтесь к скорости 0.5-1 токен/сек. Это не для диалогов, а для single-shot задач.
Почему эта модель такая "агрессивная"?
Uncensored в названии — не маркетинг. Это действительно модель без фильтров. В отличие от цензурированных версий типа dolphin, GPT-OSS 120B не имеет встроенных ограничений.
Что это значит на практике:
- Отвечает на вопросы по взлому систем (не советую проверять)
- Пишет контент любого уровня "жесткости"
- Не добавляет дисклеймеров и предупреждений
- Может генерировать фактически неверную, но уверенно звучащую информацию
Это одновременно и сила, и слабость модели. Сила — в свободе. Слабость — в ответственности. Вы полностью отвечаете за то, что сгенерирует модель.
Ошибки, которые убьют вашу производительность
Я видел десятки попыток запуска GPT-OSS 120B. 90% проваливаются на этих ошибках.
Ошибка 1: Игнорирование swap
128 ГБ модели + 16 ГБ системы + 8 ГБ на кэш = 152 ГБ. Если у вас 128 ГБ RAM — начинается swapping. А swapping для LLM — это смерть. Скорость падает в 100 раз.
Ошибка 2: Неправильный --n-gpu-layers
Не ставьте --n-gpu-layers 9999 с --n-cpu-moe. Эти флаги конфликтуют. Либо все слои на GPU, либо разделение экспертов.
Ошибка 3: Забытый --mlock
Без --mlock система может вытеснить часть модели в swap. Даже если swap отключен, могут быть page faults. --mlock фиксирует модель в физической памяти.
Ошибка 4: Слишком много потоков
GPT-OSS 120B — memory-bound задача. 32 потока на 8-ядерном CPU не дадут прироста, но съедят всю память. Оптимально: количество физических ядер × 1.5.
Сравнение с другими MoE-гигантами
GPT-OSS 120B — не единственная большая MoE-модель. Но она уникальна своей "нефильтрованностью".
| Модель | Параметры | Эксперты | Фильтры | Сложность запуска |
|---|---|---|---|---|
| GPT-OSS 120B Uncensored | 120B | 128 (top-4) | Нет | Высокая |
| Granite 4 Small | 30B | 16 (top-2) | Есть | Средняя |
| Solar-Open-100B | 100B | Другая архитектура | Есть | Высокая |
Если GPT-OSS 120B кажется слишком сложной, начните с Granite 4 Small. Она проще в запуске, но и менее способная.
Практическое применение: где эта модель реально нужна?
GPT-OSS 120B — не для чата. Не для small talk. Это инструмент для специфических задач.
- Анализ уязвимостей в коде — модель не будет отказываться анализировать потенциально опасный код
- Генерация тренировочных данных — для fine-tuning других моделей
- Исследование edge cases — тестирование граничных случаев в диалоговых системах
- Альтернативные перспективы — модель может генерировать контент с "непопулярных" точек зрения
Но помните: чем мощнее инструмент, тем опаснее он в неправильных руках. Эта модель может генерировать вредоносный код, дезинформацию, опасные инструкции. Используйте ответственно.
Что делать, если не хватает памяти?
Даже с 128 ГБ RAM и 48 ГБ VRAM могут быть проблемы. Вот спасательные варианты:
Вариант 1: Ультраагрессивное квантование
Если нет MXFP4, используйте Q3_K_S. Качество упадет, но модель поместится в 36 ГБ. Команда:
./main -m gpt-oss-120b.Q3_K_S.gguf \
--n-gpu-layers 40 \
--n-cpu-moe 88 \
--memory-f16 \
--no-mmap
Вариант 2: Чистый CPU режим
Да, это медленно. Очень медленно. Но работает. Прочитайте мой гайд про CPU-only инференс для оптимизаций.
Вариант 3: Распределение по нескольким GPU
Если у вас 2×24 ГБ карты, используйте --tensor-split 0.5,0.5. Но с MoE это сложнее — эксперты должны быть "близко" друг к другу для быстрой коммуникации.
Будущее MoE в llama.cpp
На 13.02.2026 поддержка MoE в llama.cpp все еще сыровата. Но тренд ясен: большие модели будут использовать Mixture of Experts. Потому что это единственный способ уместить 120B+ параметров в разумное количество памяти.
Что ждать в ближайшем будущем:
- Динамический оффлоад экспертов (не фиксированные 64/64, а по необходимости)
- Лучшая поддержка multi-GPU (прямо сейчас это боль)
- Оптимизация под новые форматы квантования (MXFP4 только начало)
- Интеграция с аппаратными ускорителями типа NPU
Если вы освоите GPT-OSS 120B сегодня, завтра сможете запускать 200B и 300B модели. Архитектура та же, масштаб больше.
Последний совет перед запуском
Сделайте бэкап важных данных. Серьезно. 120B модель в полной загрузке может подвесить систему на несколько минут. Если у вас SSD без DRAM-кэша — он может не пережить интенсивной swap-активности.
Запускайте сначала с короткими промптами (-n 50). Смотрите на потребление памяти. Только потом давайте длинные задачи.
И да — эта модель потребляет 400-600 ватт под нагрузкой. Убедитесь, что блок питания и охлаждение справятся.
GPT-OSS 120B Uncensored — это как атомный реактор в гараже. Мощно, опасно, и требует уважения. Но если вы справитесь — получите один из самых способных AI-инструментов, который не говорит "нет" практически никогда.
Удачи. И не сожгите блок питания.