
Число параметров всегда имело значение — по крайней мере, так нас убеждали. Этой догме следовали до тех пор, пока 6 марта Alibaba не представила QwQ-32B — компактную модель с 32 млрд параметров, бросившую вызов тяжеловесу DeepSeek‑R1 с его 671 миллиардами. Это классическая история Давида и Голиафа, но, к удивлению многих, маленькая и ловкая модель не просто держится на плаву — она даже обходит гиганта в ключевых задачах.
Но как нейросеть, уступающая в размерах в 20 раз, может показать такие впечатляющие результаты? Давайте разберёмся. В этом обзоре я сравнил между собой Qwen‑QwQ-32B, Qwen-2.5-72B‑Instruct, DeepSeek‑R1 и ChatGPT‑o3-mini‑high на нескольких сложных задачах и делюсь с вами результатами.
Основные характеристики QwQ-32B
В модели QwQ-32B применено обучение с подкреплением — метод, при котором модель обучается не просто на размеченных данных, а путём проб и ошибок. Это даёт значительное преимущество: для работы QwQ-32B требуется гораздо меньше вычислительных ресурсов — всего 32 миллиарда параметров против 671 миллиарда у DeepSeek‑R1 (из которых в процессе работы одновременно задействуются около 37 миллиардов).
Несмотря на свою компактность, QwQ-32B по ряду задач показывает в бенчмарках результаты, сопоставимые с более крупными моделями, а иногда и превосходящие.
Взглянем на её характеристики поближе:
Тип: автокорреляционная языковая модель (causal language model) — предсказывает каждый следующий шаг текста, основываясь на предыдущем контексте.
Этапы обучения: предобучение и постобучение, включая дообучение с надзором и обучение с подкреплением.
Архитектура: трансформер с RoPE, SwiGLU, RMSNorm и attention QKV bias.
Количество параметров: 32,5 млрд, включая 1,5 млрд параметров‑эмбеддингов.
Число слоёв: 64.
Число голов внимания GQA: 40 для Q и 8 для KV.
Контекстное окно: до 131 072 токенов.
Одним из преимуществ QwQ-32B стала её открытость: Alibaba выпустила модель под лицензией Apache 2.0 и опубликовала на платформах Hugging Face и ModelScope. Для разработчиков это означает свободу настраивать, экспериментировать и интегрировать модель в свои проекты.
Хотя QwQ-32B хорошо прошла бенчмарки по математике и кодингу, ограниченное число параметров будет сказываться в задачах, требующих энциклопедических знаний, и в мультиязычных сценариях — в этих областях модель заведомо будет проявлять уязвимости.
Если взглянуть на бенчмарки, показатели QwQ-32B находятся на уровне DeepSeek‑R1 и ChatGPT‑o1-mini. Обладая только 32 млрд параметров, в сравнении с 671 млрд у R1, эта модель способна держаться на одном уровне с оппонентами в различных бенчмарках и даже обгонять их:
Математические задачи: модель справилась с тестами уровня AIME24 на том же уровне, что и DeepSeek‑R1.
Программирование: в кодинговых тестах, таких как LiveCodeBench, QwQ-32B продемонстрировала результаты, сравнимые с DeepSeek‑R1.
Общие задачи: в тестах на понимание инструкций и работу с инструментами QwQ-32B слегка опережает DeepSeek‑R1.
График сравнения:

Кажется, результаты подтверждают, что модель обладает высокой практической ценностью и может эффективно применяться в разных сферах. Но так ли это на самом деле? Ниже мы протестируем QwQ-32B с мощными рассуждающими нейросетями — Qwen-2.5-72B‑Instruct, DeepSeek‑R1 и ChatGPT‑o3-mini‑high. Сюда можно было бы добавить ChatGPT‑o1, Claude-3.7-Sonnet‑Thinking, Grok-3 и ещё что‑нибудь рассуждающее, но остановимся пока на этой четвёрке, чтобы не перегружать голову.
Несмотря на умение размышлять, QwQ-32B, увы, немультимодален, то есть отправить ему картинки невозможно. Немного забавно, потому что все перечисленные оппоненты эту функцию имеют. Серьёзно, хотелось бы поинтересоваться, как так? Отправлять вместо картинок их описания, конечно, тоже не вариант, поэтому визуальные задания пришлось оставить до лучших времён.
Кстати, все тестирования я буду проводить в BotHub, где можно быстро переключаться между разными моделями в одном интерфейсе.
Нужен доступ без ВПН? Зарегистрируйтесь по этой специальной ссылке в нашем агрегаторе нейросетей и получите 100 000 токенов на любые модели.
Тест 1. Загадка с запиской
Начнём с задачи не очень трудной, а скорее сложной в том плане, что в ней несколько взаимосвязанных условий, каждое из которых создаёт новые логические рамки. Эта задача оптимальна для LRM (рассуждающих моделей), потому что для её решения как раз таки нужны пошаговые рассуждения. Ну а для LLM, обычных больших языковых моделей, решить её будет затруднительно, из‑за множества условий последовательного характера.
Семеро друзей — Лера, Максим, Софья, Илья, Диана, Елисей и Анна — участвовали в квесте, в одной из комнат которого находился «ящик времени», в который можно было положить одну записку для её отправки в будущее. После завершения квеста организаторы обнаружили в ящике записку с загадочным посланием и выяснили, что записку оставил один из участников. Каждый участник заходил в комнату с ящиком ровно один раз и поодиночке. Организаторы восстановили следующие факты:
1. Илья вошёл в комнату после Дианы, но до того, кто оставил записку.
2. Лера вошла сразу после Софьи.
3. Елисей вошёл либо первым, либо последним.
4. Пятый посетитель обнаружил, что ящик уже был открыт.
5. Анна вошла раньше Максима.
6. Тот, кто оставил записку, зашёл в комнату позже Дианы, но раньше Максима.
7. Диана не вошла первой.
Определите, в каком порядке заходили в комнату участники и кто оставил записку.
Qwen-QwQ-32B
Тут QwQ-32B застрял в бесконечном рассуждении, так и не предоставив результата.
Qwen-2.5-72B-Instruct
Скрытый текст

DeepSeek-R1
Скрытый текст

ChatGPT-o3-mini-high
Скрытый текст

Соберём результаты выполнения в таблицу, чтобы всё стало нагляднее, — по пунктам видно, какие условия были выполнены моделями и какие остались без внимания.
| QwQ-32B | 2.5-72B-Instruct | R1 | o3-mini-high — вар. 1 | o3-mini-high — вар. 2 | o3-mini-high — вар. 3 | o3-mini-high — вар. 4 |
Илья вошёл в комнату после Дианы, но до того, кто оставил записку. | - | - | + | + | + | + | + |
Лера вошла сразу после Софьи. | - | + | + | + | + | + | + |
Елисей вошёл либо первым, либо последним. | - | + | + | + | + | + | + |
Пятый посетитель обнаружил, что ящик уже был открыт. | - | - | + | + | + | + | + |
Анна вошла раньше Максима. | - | + | + | + | + | + | + |
Тот, кто оставил записку, зашёл в комнату после Дианы, но раньше Максима. | - | - | + | + | + | + | + |
Диана не вошла первой. | - | + | + | + | + | + | + |
Самой неоднозначной оказалась история с QwQ-32B. Несмотря на длительные попытки, модель не смогла преодолеть свои внутренние размышления и так и осталась застрявшей в бесконечном круге рассуждений. К сожалению, это знакомая проблема для QwQ-32B, и она возникает очень часто.
2.5-72B‑Instruct подошёл к задаче с видимой уверенностью, но результат всё равно разочаровал: часть условий оказались проигнорированы, и итоговое решение выглядело просто случайным. При таком раскладе модель явно не подходит для задач, которые требуют строгой логики. Уже два участника уходят вниз.
R1 не сумел исследовать всё пространство правильных вариантов и привёл лишь один из них. Это решение совпало с первым из выданных моделью o3-mini‑high.
И наконец, o3-mini‑high приводит четыре решения, и каждое из них соответствует всем заявленным фактам. Хотя остаётся открытым вопрос, могли ли быть ещё какие‑то варианты.
Тест 2. Игра «2048»
Составить промт к этой генерации оказалось непросто. Изначально забыл уточнить, что мне нужен код в формате одного HTML‑файла, — как итог, Qwen-2.5 выдавал куски кода в стиле «собери сам», и некоторые из них требовали дописывания новых функций. Ошибка номер два — в описании механики я использовал слово «свайп» и не пояснил, что система должна поддерживать именно свайп мышью (а не только на сенсорном экране). Результат? Генерация на основе touchstart
, touchmove
, touchend
, которая работала на смартфонах, но игнорировала события mousedown
, mousemove
и mouseup
для десктопа.
Создай веб‑версию игры «2048» (одним HTML‑файлом). Добавь возможность свайпа мышью в четыре стороны, как в оригинальной игре, а также пусть это можно будет делать клавишами‑стрелками и клавишами W, A, S, D. Процесс сдвига нужно визуализировать анимацией — одновременным плавным перемещением всех клеток.
В примерах можно нажимать Edit on CodePen, чтобы открыть в новой вкладке.
Qwen-QwQ-32B
Qwen-2.5-72B-Instruct
DeepSeek-R1
ChatGPT-o3-mini-high
Итак, почти все выдали игры, которые как минимум функционируют.
Версия QwQ отличается незначительным багом — модель позабыла, что HTML‑тег <td>
не будет отображаться, пока в нём совсем ничего нет, и поэтому во время игры видны только клетки, в которых прямо сейчас есть числа. Исправить это можно, заменив в функции render()
строку tile.textContent = value || '';
, например, на tile.textContent = value || ' ';
(добавить символ неразрывного пробела в пустую строку).
К сожалению, анимаций тут не имеется — важное условие задания не соблюдено, — но зато клетки подсвечиваются цветами:

Qwen-2.5-72B‑Instruct сгенерировал неработающий код:


DeepSeek‑R1 тоже выдал урезанное решение: анимаций нет и здесь. Более того — клетки рендерятся со сдвигом, но, даже несмотря на это, игра запускается и взаимодействие с клетками происходит корректно.

o3-mini‑high показал лучший результат, решение получилось наиболее близким к исходному запросу: клетки плавно перемещаются, анимации действительно присутствуют. Однако и тут не без изъянов: слияние клеток не сопровождается анимацией — одна ячейка просто исчезает, а другая меняет число. Ах да, и различие цветов между ячейками отсутствует — что могло бы сделать игровой процесс более интуитивным. При повторной генерации попробую включить этот запрос в промт.

Тест 3. Игра Slither
Slither.io — знаменитая игра с червяками. Почти как Worms, но только здесь существа соревнуются в гонке за еду, растут, стараются не врезаться в других червей (и подстроить всё так, чтобы врезались в них). Создать такую игру — задача довольно‑таки сложная, но раз уж мы тестируем рассуждающие модели, то, думаю, стоит попробовать.
Создай игру в стиле Slither.io, где несколько разноцветных червей (5–10) передвигаются и поедают появляющуюся еду, благодаря чему их длина увеличивается. Черви могут передвигаться прямо или волнообразно. Еду изобрази юникод‑символами (20+ вариантов). Если червь врезается в другого червя или в самого себя, он погибает, превращаясь в кучу еды, раскиданной по форме его тела. У червей есть глаза и рот, можно отрисовывать их набором кругов. Игрок тоже управляет одним из этих червей, указывая мышкой направление. Реализуй искусственный интеллект червей, чтобы они стремились к еде, старались не врезаться и устраивали друг другу ловушки. Выведи результат одним HTML‑файлом.
Актуальные ссылки на библиотеки:
https://cdnjs.cloudflare.com/ajax/libs/three.js/r128/three.min.js
https://cdn.jsdelivr.net/npm/three@0.128.0/examples/js/controls/OrbitControls.js
https://cdnjs.cloudflare.com/ajax/libs/tween.js/18.6.4/tween.umd.js
После того как несколько моделей затруднились встроить актуальные ссылки на JavaScript‑библиотеки (выдавались ошибки «Класс не найден» или «Элемент не является конструктором»), пришлось включить их адреса в промт. Указание этих точных ссылок сразу избавило от проблем с запуском для половины испытуемых моделей.
Qwen-QwQ-32B
Здесь QwQ-32B вновь застрял в бесконечном рассуждении и не выдал результата.
Qwen-2.5-72B-Instruct
DeepSeek-R1
ChatGPT-o3-mini-high
Итак, по факту работающая версия всего одна, но начнём с тех, кто разочаровал нас больше всего.
Qwen‑QwQ-32B показала свою склонность к бесконечным размышлениям — как и в предыдущих тестах, модель вновь застряла в бесконечном цикле генерирования и ничего не выдала. Проблема широко известна в сообществе (и пользователи активно ищут решение — например, здесь и здесь). Так что оценивать эту модель не приходится... идём дальше.
Версия DeepSeek‑R1 на этот раз осталась в стороне от сражения, показав просто чёрный экран. Ошибка, упомянутая в консоли, связана с неправильной передачей параметра:

QwQ-2.5–72B подарила некий намёк на успех, но в итоге добиться результата так и не удалось. Проблем две: управление червём работает настолько неудобно, что напоминает сломанную джойстиковую механику игровых консолей для смартфонов, а соперники словно решили сыграть в камикадзе‑челлендж, насмерть врезаясь в первый попавшийся фрукт. В итоге мы получили довольно забавное зрелище, но явно не то, что можно назвать играбельной версией Slither. Да, и червяк игрока тоже может погибнут при столкновении с едой, но почему‑то делает это более избирательно, скажем когда в одной точке скучкованы сразу несколько лакомств. Хорошо, что хотя бы базовая структура игры здесь видна — это уже достижение для нерассуждающей модели.
Генерация ChatGPT‑o3-mini‑high оказалась наиболее качественной:
Графика выполнена в 3D с помощью библиотеки Three.js, и вы можете вращать камеру перетаскиванием мыши и зумить колёсиком. Интеллект червей‑соперников, как и предупредила модель в ответе, является упрощённым — они в основном заняты тем, что устремляются к выбранной еде:
Важно: этот пример является упрощённой реализацией для демонстрационных целей. Для полноценной игры потребуется доработка (например, сглаженное управление, улучшенная коллизия, более сложный ИИ и оптимизация).
Единственный минус — некоторые углы камеры делают тела червей плохо различимыми, когда изменяешь обзор. Думаю, стоило видоизменить промт, написав, что тело должно состоять из множества кругов‑спрайтов, которые всегда поворачиваются лицом к камере, — как, кстати, и еда, уже отрисованная этим методом.
Заключение
Итак, мой неутешительный вывод: сегодняшний испытуемый Qwen‑QwQ-32B нестабилен настолько, что его едва ли можно использовать для чего‑либо. Зависания в бесконечных рассуждениях становятся навязчивой болью для пользователя — в проведённых тестах модель генерировала бесконечную цепочку размышления в двух из трёх задач (!) и лишь в одной показала приемлемый результат.
Те самые бенчмарки, где QwQ-32B обходит DeepSeek‑R1, выглядят сомнительно — не совсем ясно, как такие результаты были достигнуты, учитывая все проблемы модели. В итоге смысл применения QwQ-32B теряется, когда можно переключиться на проверенные рассуждающие решения (Claude-3.7, DeepSeek‑R1, ChatGPT‑o3-mini‑high, Grok-3 и т. д.), которые выглядят значительно надёжнее.
Благодарю за прочтение, буду рад комментариям👇