Релизы и изменения моделей

JetBrains смешала две Qwen: на 71 % меньше токенов

JetBrains смешала две Qwen: на 71 % меньше токенов

JetBrains слила веса Qwen3.8-27B и Qwen3.6-27B в равных долях, без всякого дообучения, и получила модель, которая на внутреннем наборе из 100 задач решает 37 против 34 у младшей — и при этом пишет на 71 % меньше выходных токенов, чем старшая. Отдельно опубликована проверка, что экономия не объясняется досрочным отказом: на 30 задачах, решённых обеими, смесь потратила 279 тысяч токенов против 935 тысяч.

Эта публикация интересна не столько результатом, сколько дисциплиной замера — и выводом, который переносится на любого, кто платит за токены. Разберём обе части.

Что именно сделали

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

Задача, которую решали, сформулирована практично. В первой версии локального агента приходилось выбирать: младшая модель с выключенными рассуждениями работала быстро, но решала меньше; старшая решала больше, но требовала включённых рассуждений, и задача занимала примерно вчетверо дольше. Слияние было попыткой убрать этот выбор.

Цифры

МодельРешено из 100Выходные токены
Qwen3.6, рассуждения выключены34базовый уровень
Смесь37на 71 % меньше, чем у старшей
Qwen3.839базовый уровень для сравнения

Смесь не догнала старшую по числу решённых задач — 37 против 39. Зато подошла близко, потратив втрое меньше выхода.

На публичном наборе задач по коду картина похожая: по четырём прогонам смесь дала в среднем 85,47 % правильных ответов против 83,29 % у старшей при сопоставимой стоимости выхода. Младшая при этом набрала 67,87 %, израсходовав около 24,1 млн выходных токенов за прогон против примерно 6,14 млн у смеси.

Почему этот замер стоит уважения

Здесь самая полезная часть публикации, и она про метод, а не про модель.

Очевидное возражение к цифре «на 71 % меньше токенов» звучит так: может, модель просто быстрее сдаётся на трудных задачах, а сэкономленные токены — это токены недоделанной работы. Авторы сформулировали это возражение сами и проверили его.

Взяли 30 задач, которые решили обе модели — то есть случаи, где обе довели работу до конца. На них смесь потратила около 70 % меньше токенов: 279 тысяч против 935 тысяч. И была экономнее на 29 задачах из 30.

Это и есть нормальный замер: гипотеза, которая могла бы объяснить результат неудобным образом, проверена отдельно и отвергнута числами. Про то, как ставить такие сравнения у себя, мы писали в материале как сравнивать модели.

Где смесь проигрывает

Отдельно ценно, что в публикации есть и обратный пример.

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

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

И третье наблюдение, полезное всем: длина рассуждения сильно гуляет между одинаковыми прогонами. По их подсчёту, если бы каждый раз выбирался самый короткий из успешных путей, расход упал бы ещё на 24,5 %. То есть короткие правильные пути существуют, модель просто не всегда их выбирает.

Почему «думать меньше» не то же самое, что «думать хуже»

Результат выглядит парадоксально: модель пишет втрое короче и при этом решает больше задач, чем младшая. Стоит объяснить, почему это не противоречие.

Длинное рассуждение не равно глубокому. Значительная часть выхода у рассуждающих моделей уходит на перебор вариантов, которые сразу отбрасываются, на повторное проговаривание условия и на возвращение к уже проверенным путям. Полезная часть рассуждения обычно короче, чем его записанный объём.

Это косвенно подтверждает и наблюдение авторов про разброс между одинаковыми прогонами: если выбор самого короткого из успешных путей сэкономил бы почти четверть расхода, значит существенная доля длины — не необходимость, а случайность конкретного прогона.

Практический вывод для тех, кто платит: там, где задача укладывается в короткое рассуждение, длинное вы оплачиваете, ничего не получая взамен. Ловится это только сравнением на своей выборке — общего правила, какая позиция многословнее, не существует.

Ошибка в методике, о которой рассказали

Отдельный сюжет, который стоит знать всем, кто меряет модели сам.

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

Починили сдвигом зерна на каждом шаге агента, сохранив воспроизводимость. Примечательно, что старшая модель страдала от этого сильнее остальных.

Вывод для собственных замеров простой: настройка, сделанная ради чистоты эксперимента, сама может стать источником систематической ошибки. Проверять надо и её.

Что из этого забрать

Три вещи, и ни одна не требует локального запуска.

Длина ответа — это деньги. На одной и той же задаче разные модели тратят кратно разный объём выхода. Ставка за миллион токенов — только половина ответа на вопрос «сколько это стоит»; вторая половина — сколько токенов модель напишет.

Дешёвая по ставке позиция бывает дороже по счёту. Если рассуждающая модель пишет втрое длиннее, разница в ставке перестаёт иметь значение. Мерить надо стоимость решённой задачи, а не цену за миллион.

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

Проверить это у себя стоит недорого: KeyDealer даёт один ключ на каталог из 56 позиций, 43 из которых доступны сейчас, с оплатой российской картой в рублях и ставками от 1 ₽ за миллион токенов. Семейство Qwen представлено четырьмя позициями по 3 ₽ за миллион, и расход по каждому запросу виден в журнале — то есть посчитать стоимость решённой задачи, а не цену за миллион, можно на своей выборке за вечер.

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

Занимает вечер и не требует ничего, кроме журнала.

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

Шаг второй: прогоните на двух позициях. Одна — текущая, вторая — кандидат. Условия одинаковые: тот же промпт, та же температура, тот же формат ответа.

Шаг третий: отберите задачи, решённые обеими. Только на них сравнение честное. Всё остальное — сравнение качества, а не расхода.

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

Типичный результат этого упражнения неприятный: позиция, выбранная по ставке, оказывается дороже по счёту, потому что пишет длиннее. Что именно писать в журнал, чтобы такие подсчёты делались за минуты, разобрано в материале логирование запросов к моделям.

Чем это отличается от экономии на обвязке

Два разных рычага, и полезно их не путать.

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

Модель определяет, сколько она напишет на каждом ходу. Это сегодняшний сюжет.

Рычаги независимы и складываются. Обвязка режет вход, выбор модели режет выход, и считать их нужно по отдельности — иначе непонятно, что именно дало результат. Смежный случай со стороны обвязки разобран в материале обвязка решает: NVIDIA SoL-Pi.

Чего мы не утверждаем

Три оговорки.

Все цифры — замер вендора о себе. Внутренний набор из 100 задач закрытый, независимой проверки нет.

Этой модели нет в каталоге. Она выложена для локального запуска, и в наш каталог не входит. Четыре позиции Qwen, которые там есть, — другие модели, и переносить на них результаты слияния нельзя.

Слияние весов не универсальный приём. Оно сработало на двух моделях одного семейства и одной архитектуры, где старшая построена на младшей. Авторы сами называют это простым экспериментом и продолжают другие.

Что держать в голове

Первое. Самая недооценённая статья расхода — многословность. Её не видно в прайсе и видно только в журнале.

Второе. Хороший замер отличается от плохого не размером выборки, а тем, проверена ли неудобная гипотеза. Здесь она проверена и названа.

Третье. Инструмент замера тоже надо проверять. История с фиксированным зерном — напоминание, что стабильный результат и правильный результат не одно и то же. Что мы за проект — на странице о проекте, ключ заводится на keydealer.ru/login.

Частые вопросы

Что сделала JetBrains?

Слила веса двух моделей одного семейства, Qwen3.8-27B и Qwen3.6-27B, в равных долях. Дополнительного дообучения не проводилось. Получилась одна модель на 27 млрд параметров, которую компания поставила в свой локальный кодовый агент.

Какие цифры заявлены?

На внутреннем наборе из 100 задач: смесь решила 37, Qwen3.6 с выключенными рассуждениями — 34, Qwen3.8 — 39. При этом смесь сгенерировала на 71 % меньше выходных токенов, чем Qwen3.8.

Может быть, она просто раньше сдаётся?

Авторы проверили ровно эту гипотезу и опубликовали проверку. На 30 задачах, которые решили обе модели, смесь потратила около 70 % меньше токенов — 279 тысяч против 935 тысяч — и была экономнее на 29 задачах из 30. То есть экономия не объясняется досрочным отказом.

Есть ли случаи, где смесь хуже?

Да, и они названы. На визуальных задачах смесь потратила больше токенов, чем Qwen3.8, и причина — она дольше рассуждала. Плюс авторы отмечают, что смесь склонна переусердствовать, когда решение не находится.

Есть ли эта модель в каталоге KeyDealer?

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

Что из этого применимо без локального запуска?

Главное — сама постановка вопроса. Длина ответа это деньги, и на одной и той же задаче разные модели тратят кратно разный объём выхода. Померить это на своей выборке можно за вечер, и часто выясняется, что дешёвая по ставке позиция дороже по счёту.

Источники