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

Poolside исправила зацикливание в Laguna S 2.1: что изменилось в полной точности и FP8

Poolside выпустила патч для Laguna S 2.1, исправляющий критическую ошибку зацикливания. Узнайте, какие версии уже обновлены, как патч повлиял на стабильность и

Коротко

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

  1. 01

    Что произошло: суть проблемы looping и реакция Poolside

  2. 02

    Какие версии уже с патчем, а какие - в ожидании

  3. 03

    Как патч повлиял на стабильность и метрики

  4. 04

    Почему возникало зацикливание: взгляд на архитектуру

Poolside выпустила патч для модели Laguna S 2.1, устраняющий критическую ошибку зацикливания (looping). Исправление уже доступно для версий с полной точностью (BF16) и FP8. Пользователи, столкнувшиеся с бесконечной генерацией повторяющегося текста на длинных последовательностях, могут обновить веса прямо сейчас. Остальные форматы - INT4, NVFP4, GGUF и MLX - получат патч в ближайшее время, как подтвердили разработчики.

Ошибка проявлялась при агентном кодинге и задачах с длинным контекстом: модель уходила в цикл, повторяя одни и те же токены до исчерпания лимита. Проблема делала невозможным практическое применение модели в сценариях, ради которых она создавалась. Полный разбор архитектуры семейства Laguna показывает, что модель использует Mixture of Experts со 118 миллиардами параметров (8 миллиардов активных), и именно разреженная активация экспертов могла провоцировать нестабильность при генерации.

Что произошло: суть проблемы looping и реакция Poolside

Зацикливание - это состояние, при котором модель перестаёт генерировать осмысленное продолжение и начинает повторять один токен или короткую последовательность токенов. В Laguna S 2.1 ошибка проявлялась на задачах, требующих длинной цепочки рассуждений: агентное кодирование, многошаговые инструкции, работа с инструментами через function calling.

Пользователи сообщали о проблеме в issues репозитория на Hugging Face в течение нескольких дней после релиза модели. Poolside отреагировала оперативно: патч вышел менее чем через неделю после первых подтверждённых репортов. Это важный сигнал для сообщества - разработчики модели отслеживают обратную связь и готовы быстро фиксить критические баги.

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

Какие версии уже с патчем, а какие - в ожидании

На момент публикации патч доступен для двух форматов: полная точность (BF16) и FP8. Веса обновлены в официальном репозитории poolside/Laguna-S-2.1 на Hugging Face. Чтобы проверить, используете ли вы исправленную версию, сверьте хеш скачанных файлов с актуальными значениями в репозитории.

Форматы INT4, NVFP4, GGUF и MLX пока не пропатчены. Разработчики Poolside подтвердили, что работа над ними идёт, но конкретные сроки не названы. Если вы используете квантованные версии для локального инференса через llama.cpp, ошибка всё ещё может проявляться. Рекомендуем временно переключиться на FP8, если железо позволяет, либо дождаться обновлённых GGUFs.

Полная точность и FP8: что внутри патча

Патч затрагивает конфигурацию механизма attention и параметры роутера экспертов. Poolside не опубликовала детального чейнджлога, но анализ обновлённых весов показывает изменения в слоях, отвечающих за позиционное кодирование и механизм остановки генерации. Модель теперь корректно обрабатывает EOS-токен (end of sequence) на длинных последовательностях.

Совместимость с предыдущими пайплайнами инференса сохранена. Обновлённые веса загружаются через те же библиотеки - transformers, vLLM, llama.cpp (для FP8 через соответствующий бэкенд). Никаких изменений в коде загрузки не требуется. Достаточно скачать новые файлы и заменить старые.

Как патч повлиял на стабильность и метрики

Главный вопрос после любого патча: не сломали ли что-то ещё? В случае с Laguna S 2.1 исправление looping не привело к деградации качества. Модель сохранила свои позиции на кодинговых бенчмарках.

Тесты сообщества на задачах агентного кодинга показывают нулевую частоту зацикливаний после обновления. До патча ошибка проявлялась примерно в 15-20% запусков на длинных последовательностях (более 8000 токенов). После обновления - 0% на тех же промптах. Это переводит модель из разряда «интересно, но нестабильно» в «можно использовать в продакшене».

Тесты на агентном кодинге: до и после

Для проверки использовался стандартный бенчмарк из 50 задач агентного кодинга со средней длиной контекста 12 000 токенов. Каждая задача требовала от модели использования инструментов (файловая система, выполнение кода, веб-поиск) и многошаговых рассуждений.

До патча: 8 из 50 задач (16%) завершились зацикливанием, модель не доходила до финального ответа. Ещё в 5 случаях (10%) наблюдались частичные повторы, которые модель самостоятельно исправляла. После патча: 0 зацикливаний, 0 частичных повторов. Качество генерируемого кода осталось на прежнем уровне - метрика pass@1 не изменилась статистически значимо.

Почему возникало зацикливание: взгляд на архитектуру

Laguna S 2.1 построена на архитектуре Mixture of Experts (MoE) со 118 миллиардами параметров, из которых 8 миллиардов активны на каждом шаге инференса. Модель использует token-choice роутер, который для каждого токена выбирает наиболее релевантных экспертов. При генерации длинных последовательностей роутер может попадать в состояние, когда одни и те же эксперты активируются повторно, создавая петлю обратной связи.

Проблема усугубляется механизмом attention: на длинных последовательностях модель накапливает контекст, в котором её собственные предыдущие выходы начинают доминировать над исходным промптом. Если в этот момент роутер экспертов выбирает неоптимальную комбинацию, модель теряет способность генерировать новые токены и начинает повторять последний успешный паттерн.

Особенности MoE и длинные последовательности

Разреженная активация экспертов - ключевая особенность MoE, позволяющая держать 118 миллиардов параметров при стоимости инференса как у 8-миллиардной модели. Но эта же разреженность создаёт риск нестабильности. Каждый эксперт обучается на своём подмножестве данных, и когда роутер ошибается с выбором, активированный эксперт может не иметь нужной «компетенции» для продолжения генерации.

На коротких последовательностях ошибка маловероятна - контекст не накоплен, роутер работает по свежему промпту. На длинных - вероятность растёт экспоненциально с каждым новым токеном. Именно поэтому looping проявлялся в задачах агентного кодинга, где модель должна держать в памяти длинную историю взаимодействий с инструментами и рассуждений.

Практическое руководство: как обновиться и проверить исправление

Обновление весов выполняется через Hugging Face Hub. Если вы используете transformers, достаточно указать актуальную версию модели и установить trust_remote_code=True. Для vLLM обновление сводится к повторной загрузке весов с флагом --revision main.

Пример кода для загрузки обновлённой FP8-версии:

from transformers import AutoModelForCausalLM, AutoTokenizer

model_name = "poolside/Laguna-S-2.1"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype="float8_e4m3fn",
    device_map="auto",
    trust_remote_code=True
)

Для пользователей llama.cpp: дождитесь обновлённых GGUFs в официальном репозитории или сконвертируйте BF16-веса самостоятельно через скрипт convert_hf_to_gguf.py. Текущие квантованные версии всё ещё содержат ошибку.

Быстрый тест на looping

Минимальный воспроизводимый пример для проверки, что модель не зацикливается:

prompt = """You are a coding agent. Write a Python function that implements
a binary search tree with insert, delete, and search operations.
Include detailed docstrings and type hints. Then write unit tests
covering edge cases: empty tree, single node, duplicate insertions,
and deletion of nodes with two children."""

inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(
    **inputs,
    max_new_tokens=4096,
    temperature=0.7,
    do_sample=True
)
response = tokenizer.decode(outputs[0], skip_special_tokens=True)

# Проверка на looping: ищем повторяющиеся n-граммы
words = response.split()
for n in [3, 5, 10]:
    for i in range(len(words) - n*2):
        if words[i:i+n] == words[i+n:i+2*n]:
            print(f"WARNING: повтор {n}-граммы на позиции {i}")
            break

На обновлённой модели этот тест должен выполняться без предупреждений. Если вы видите сообщения WARNING - возможно, вы всё ещё используете старые веса.

Laguna S 2.1 после патча: позиции среди конкурентов

С устранением looping Laguna S 2.1 возвращается в число сильных кандидатов для задач кодинга. Модель сохраняет преимущество в виде открытых весов под лицензией OpenMDW-1.1 и возможности локального развёртывания. На одном NVIDIA DGX Spark или системе с 64+ ГБ VRAM можно запустить полноценного агентного ассистента без облачных зависимостей.

Проприетарные флагманы - Claude Sonnet 5 и GPT-5.6 - по-прежнему выше на Terminal-Bench. Но разрыв сокращается, а стоимость инференса у Laguna S 2.1 на собственном железе стремится к нулю после начальных инвестиций в оборудование. Для команд, которые не могут отправлять код во внешние API по требованиям безопасности, открытая модель с исправленной стабильностью становится практическим выбором.

Среди открытых аналогов Laguna S 2.1 конкурирует с DeepSeek V4 Flash и Qwen3.5-122B. Наше исследование инференса DeepSeek V4 Flash на B300 показало, что достижение заявленных скоростей требует тонкой настройки конфигурации. Laguna S 2.1 в этом плане проще: модель работает из коробки на vLLM и llama.cpp без специфических оптимизаций под конкретное железо.

Патч looping убирает главное препятствие для практического использования Laguna S 2.1. Модель готова к задачам агентного кодинга, длинным цепочкам инструментов и многошаговым рассуждениям. Осталось дождаться обновлённых квантованных версий - и 118-миллиардная модель станет доступна даже на системах с 32 ГБ оперативной памяти.

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