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

Семейство моделей Laguna: XS.2, S 2.1 и M.1 — архитектура MoM для агентного кодинга и локального запуска

Полный разбор семейства моделей Laguna от poolside: архитектура MoM с token-choice роутером, softplus-гейтингом и 256 экспертами. Практическое руководство по ло

Коротко

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

  1. 01

    Архитектура Mixture-of-Models: как устроены Laguna XS.2, S 2.1 и M.1

  2. 02

    Laguna XS.2: 3B активных параметров для локального инференса

  3. 03

    Laguna S 2.1 и M.1: масштабирование для сложных задач

  4. 04

    Сравнение моделей Laguna: какую выбрать для своих задач

Poolside выпустила три модели Laguna на архитектуре Mixture-of-Models (MoM) - XS.2 (33B-A3B), S 2.1 (118B-A8B) и M.1 (225B-A23B). Все три уже поддерживаются в llama.cpp и доступны для локального инференса. Ключевая особенность семейства - token-choice роутер с softplus-гейтингом, 256 экспертов плюс один общий эксперт, GQA и гибридное внимание, чередующее полные и sliding-window слои.

XS.2 с 3B активных параметров на токен специально спроектирована для запуска на локальных машинах. Для S 2.1 уже доступны GGUF-кванты от unsloth и оригинальные сборки, что позволяет развернуть 118B-модель на системах с 64+ ГБ ОЗУ или VRAM. M.1 масштабирует архитектуру до 225B общих параметров для задач, где критично максимальное качество генерации кода.

В этом разборе - детали архитектуры MoM, практические инструкции по запуску XS.2 и S 2.1, сравнение моделей и сценарии интеграции в рабочие процессы разработки. Без маркетинговой воды, с конкретными цифрами и командами.

Архитектура Mixture-of-Models: как устроены Laguna XS.2, S 2.1 и M.1

Все три модели построены на архитектуре Mixture-of-Experts с token-choice роутером. В отличие от классических dense-моделей, где каждый параметр участвует в обработке каждого токена, MoE-архитектура активирует только небольшую долю параметров. Это радикально снижает вычислительные затраты при инференсе без пропорциональной потери качества.

Laguna использует 256 экспертов плюс один общий эксперт, Grouped Query Attention (GQA) и чередование полного внимания со sliding-window. Такая конфигурация оптимизирована под задачи агентного кодинга - генерацию, отладку и рефакторинг кода с длинными цепочками инструментов.

Token-choice роутер и softplus-гейтинг: маршрутизация токенов

Token-choice роутер принимает решение о маршрутизации каждого токена к конкретным экспертам независимо. Это контрастирует с expert-choice роутерами, где эксперты сами выбирают токены для обработки. Token-choice подход обеспечивает более равномерную загрузку экспертов и лучшую масштабируемость при увеличении числа экспертов.

Функция гейтинга использует softplus вместо традиционного softmax. Softmax нормализует веса так, что сумма равна единице - это создаёт конкуренцию между экспертами и может приводить к коллапсу, когда один эксперт доминирует. Softplus, напротив, вычисляет активацию для каждого эксперта независимо:

gate_i = softplus(W_i · x + b_i)

Результат - модель может активировать от 1 до k экспертов без принудительной нормализации. Это повышает разреженность и качество: эксперт активируется только когда он действительно нужен, а не потому что кто-то должен получить меньший вес. На практике softplus-гейтинг снижает вероятность коллапса экспертов и улучшает специализацию.

256 экспертов + общий эксперт: баланс специализации и обобщения

Общий эксперт (shared expert) - архитектурное решение, которое решает проблему «холодного старта» для редких паттернов. Когда токен не попадает уверенно ни под одного из специализированных экспертов, общий эксперт обеспечивает базовое качество обработки. Он активируется всегда и обучается на всём корпусе данных, выступая страховочной сеткой.

Специализированные эксперты, напротив, обучаются на кластерах данных и активируются только для релевантных токенов. В задачах кодинга это проявляется в естественной специализации: одни эксперты фокусируются на синтаксисе Python, другие - на типах данных, третьи - на алгоритмических паттернах. Token-choice роутер обучается распознавать эти паттерны и направлять токены к нужным экспертам.

Балансировка загрузки решается на уровне функции потерь при обучении - добавляется auxiliary loss, штрафующий неравномерное использование экспертов. Это предотвращает ситуацию, когда 90% токенов уходят к 10% экспертов.

Гибридное внимание: полное + sliding-window

Laguna чередует слои с полным вниманием (full attention) и sliding-window вниманием. Полное внимание вычисляет зависимости между всеми парами токенов в контексте - квадратичная сложность O(n²). Sliding-window внимание ограничивает поле зрения фиксированным окном (например, 4096 токенов) - линейная сложность O(n·w), где w - размер окна.

Схема чередования: каждый второй или третий слой использует sliding-window, остальные - полное внимание. Это снижает общие вычислительные затраты на 30-40% при длинных контекстах, сохраняя способность модели улавливать дальние зависимости через полные слои. Для задач кодинга с контекстом до 128K токенов это критично: полное внимание на всей длине потребовало бы нереалистичных объёмов памяти.

Grouped Query Attention (GQA) дополнительно оптимизирует механизм внимания, разделяя ключи и значения между группами запросов. При стандартном числе голов 32 и 8 группах GQA снижает размер KV-кэша в 4 раза по сравнению с Multi-Head Attention, что прямо уменьшает требования к VRAM при инференсе.

Laguna XS.2: 3B активных параметров для локального инференса

XS.2 - самая компактная модель семейства с 33B общих параметров, из которых только 3B активны на каждый токен. Это достигается за счёт высокой разреженности MoE: при 256 экспертах и top-2 роутинге активируется лишь малая доля параметров. Результат - модель, которая требует памяти как 3B dense-модель, но сохраняет знания 33B-архитектуры.

Для сравнения: Qwen3.5-32B - dense-модель, все 32B параметров активны на каждом токене. При 4-битном квантовании Qwen занимает около 18 ГБ VRAM. XS.2 в аналогичном качестве потребует 6-8 ГБ - в 2-3 раза меньше. Это делает её пригодной для запуска на ноутбучных GPU и даже CPU с достаточным объёмом ОЗУ.

Ограничения XS.2 связаны с объёмом знаний, распределённых по экспертам. На узкоспециализированных задачах, где требуется редкая экспертиза, модель может уступать dense-аналогам сходного размера. Однако для типовых сценариев кодинга - автодополнение, рефакторинг, генерация тестов - разреженная архитектура показывает конкурентоспособные результаты.

Требования к оборудованию и первые шаги в llama.cpp

Для запуска XS.2 через llama.cpp достаточно 8-16 ГБ ОЗУ при использовании квантованных версий. Точные цифры зависят от уровня квантования:

  • Q4_K_M: ~6 ГБ RAM, минимальная потеря качества, рекомендуется для GPU с 8 ГБ VRAM
  • Q5_K_M: ~7 ГБ RAM, баланс качества и размера
  • Q8_0: ~10 ГБ RAM, близко к FP16 качеству, требует GPU с 12+ ГБ VRAM

Пример команды для запуска с Q4_K_M квантом:

./llama-cli \
  -m laguna-xs.2-Q4_K_M.gguf \
  -p "Напиши функцию на Python для парсинга JSON с обработкой ошибок" \
  -n 512 \
  -t 8 \
  -ngl 99

Флаг -ngl 99 загружает все слои на GPU. Если VRAM не хватает, уменьшите число до 20-30 - часть слоёв будет обрабатываться на CPU, скорость снизится, но модель запустится.

Для продакшен-использования запускайте llama.cpp server с OpenAI-совместимым API:

./llama-server \
  -m laguna-xs.2-Q4_K_M.gguf \
  --host 0.0.0.0 \
  --port 8080 \
  -ngl 99

После этого модель доступна через стандартный эндпоинт /v1/chat/completions для интеграции с VS Code, Continue.dev и другими инструментами.

Laguna S 2.1 и M.1: масштабирование для сложных задач

S 2.1 (118B-A8B) и M.1 (225B-A23B) масштабируют архитектуру MoM для сценариев, где качество генерации кода критично. S 2.1 активирует 8B параметров на токен, M.1 - 23B. Обе модели демонстрируют сильные результаты на бенчмарках агентного кодинга.

S 2.1 набирает 70.2% на Terminal-Bench 2.1 и 78.5% на SWE-bench Multilingual, обходя DeepSeek V4 Flash при меньшей стоимости инференса. В тестах на RTX Pro 6000 модель показала 109 токенов/с и глубину цепочек инструментов до 6 уровней - рекордный показатель для моделей этого класса.

M.1 с 23B активных параметров на токен нацелена на сценарии, где допустимы более высокие затраты на инференс ради максимального качества: сложный рефакторинг, межфайловые изменения, генерация архитектурно значимого кода.

GGUF-кванты для S 2.1: где скачать и как запустить

Для S 2.1 доступны GGUF-кванты от unsloth и оригинальные сборки от poolside. Unsloth предоставляет оптимизированные кванты с улучшенным качеством за счёт калибровки на репрезентативных данных:

  • Q4_K_M от unsloth: ~40 ГБ, минимальная потеря качества, рекомендуется для систем с 48+ ГБ VRAM
  • IQ4_XS от unsloth: ~35 ГБ, агрессивное квантование, подходит для 48 ГБ VRAM с запасом под KV-кэш
  • Q3_K_M: ~30 ГБ, заметное снижение качества, крайний вариант для 32 ГБ систем

Загрузка и запуск Q4_K_M кванта:

# Скачивание (требуется huggingface-cli)
huggingface-cli download unsloth/Laguna-S-2.1-GGUF \
  laguna-s-2.1-Q4_K_M.gguf \
  --local-dir ./models

# Запуск
./llama-cli \
  -m ./models/laguna-s-2.1-Q4_K_M.gguf \
  -p "Сгенерируй REST API на FastAPI с аутентификацией JWT" \
  -n 1024 \
  -t 16 \
  -ngl 99 \
  -c 32768

Для систем с Apple Silicon M5 Max модель запускается со скоростью 33-44 ток/с на 4-битном кванте, что достаточно для интерактивной работы.

Сравнение моделей Laguna: какую выбрать для своих задач

Выбор модели зависит от доступного оборудования, требований к качеству и сценария использования. Ниже - сводная таблица характеристик:

Характеристика Laguna XS.2 Laguna S 2.1 Laguna M.1
Общие параметры 33B 118B 225B
Активные параметры 3B 8B 23B
Экспертов 256 + 1 общий 256 + 1 общий 256 + 1 общий
Контекст до 128K до 128K до 128K
VRAM (Q4_K_M) ~6 ГБ ~40 ГБ ~70 ГБ
Минимальная система 8 ГБ RAM, любой GPU 48 ГБ VRAM (A6000, RTX Pro 6000) 80 ГБ VRAM (A100, H100)
Сценарий Локальное прототипирование, автодополнение Агентное кодирование, рефакторинг Сложные межфайловые изменения

XS.2 - выбор для локального прототипирования и повседневных задач кодинга. Модель запускается на большинстве современных ноутбуков и десктопов, обеспечивая достаточное качество для автодополнения, генерации тестов и простого рефакторинга.

S 2.1 - рабочая лошадка для серьёзных проектов. Подходит для агентного кодинга с длинными цепочками инструментов, межфайлового рефакторинга и генерации комплексных решений. Требует серьёзного GPU, но окупается качеством.

M.1 - флагман для задач, где допустимы высокие затраты на инференс. Максимальное качество генерации кода, лучшая обработка сложных архитектурных паттернов. Требует серверного оборудования.

Интеграция в рабочие процессы: llama.cpp и не только

Модели Laguna интегрируются в рабочие процессы разработки через llama.cpp server с OpenAI-совместимым API. Это открывает совместимость с большинством инструментов, поддерживающих OpenAI API.

Интеграция с VS Code через Continue.dev:

# config.json для Continue.dev
{
  "models": [
    {
      "title": "Laguna XS.2",
      "provider": "openai",
      "model": "laguna-xs.2",
      "apiBase": "http://localhost:8080/v1",
      "apiKey": "not-needed"
    }
  ]
}

После настройки модель доступна для автодополнения, чата и inline-редактирования прямо в редакторе. Для командной работы llama.cpp server поддерживает параллельные запросы - несколько разработчиков могут использовать одну модель одновременно.

Продвинутый сценарий - запуск S 2.1 как агента кодинга с доступом к инструментам (файловая система, терминал, браузер). Модель показала нулевое число JSON-ошибок при вызове инструментов, что критично для автономных агентов. Однако в тестах зафиксированы случаи галлюцинаций под давлением сложных цепочек - рекомендуется ручная проверка результатов для ответственных операций.

Для систем с несколькими GPU llama.cpp поддерживает тензорный параллелизм через опцию --tensor-split, позволяя распределить S 2.1 или M.1 между двумя GPU. Пример для S 2.1 на двух RTX 3090 (24 ГБ каждая):

./llama-server \
  -m laguna-s-2.1-Q4_K_M.gguf \
  --tensor-split 24,24 \
  --host 0.0.0.0 \
  -ngl 99

Файнтюнинг моделей Laguna на данный момент не поддерживается в открытых фреймворках - архитектура MoM с token-choice роутером требует адаптации обучающих пайплайнов. Poolside не публиковала скрипты для дообучения, поэтому модели используются в режиме zero-shot или few-shot через промпт-инжиниринг.

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