Архив рубрики ~Лента новостей~

2. Рекурсивный движок llama.cpp на RTX 3050: тесты Qwen 32B и 7B Coder — прирост качества х3 и аппетиты по памяти

2. Рекурсивный движок llama.cpp на RTX 3050: тесты Qwen 32B и 7B Coder — прирост качества х3 и аппетиты по памяти
2. Рекурсивный движок llama.cpp на RTX 3050: тесты Qwen 32B и 7B Coder — прирост качества х3 и аппетиты по памяти

Всем привет! Это вторая часть статьи про форк llama.cpp. В ней я покажу реальные цифры и посмотрим, насколько лучше модель решает сложные задачи по сравнению с обычным движком, а также насколько вырастет потребление VRAM и загруженность видеокарты. Обозначения: D=0 — llama.cpp без патча, D=12 — улучшенный форк.

Железо

Все модели запускались на RTX 3050 6 ГБ, поэтому результаты на других видеокартах могут отличаться. Все модели запускались в формате Q4.

Начнём с запуска простых ИИ-моделей, после чего перейдём к более сложным. Каждую модель проверяем в тестах производительности и сравниваем оба движка. Сегодня тестируем: Qwen 32B-A3B и Qwen 2.5 Coder 7B, дообученную на трассировках лучших моделей. Проведём тесты, а затем сравним два варианта кода от Qwen 32B.

Qwen3.5 35B-A3B: самая большая модель

Сразу предупреждаю: у меня слабая видеокарта — RTX 3050 Mobile 6 ГБ. Поэтому скорость генерации составляет примерно 3 токена в секунду. Я активно работаю над решением этой проблемы и в будущем смогу показывать более репрезентативные тесты.

Для этой модели я выбрал простой, компактный, но показательный бенчмарк — Zux1U/microbench_16. Конечно, я взял простые уровни — 4 теста лёгкой сложности. Вот результаты запуска по Easy-треку:

Benchmark
Benchmark

Результаты вполне ожидаемые: обе модели показали абсолютно одинаковый результат, но рекурсивная версия оказалась чуть медленнее. Я замечал такое только на больших моделях, на маленьких подобного не наблюдалось. Следующий тест — это уже Hard-сегмент. Здесь мы наконец-то увидим, какой из движков даёт лучший результат в реальных задачах. В задаче на код-ревью мы попросили обе модели проанализировать код и получили следующие результаты:

ревью кода
ревью кода

Как мы видим, количество правильных исправлений увеличилось почти в 3,1 раза. Хотя оба варианта выполнили свою задачу, рекурсивный всё-таки сделал намного больше и точнее. Разница во времени составила 17%. В будущем в проект будут внесены оптимизации для ускорения работы и KV-кэша. Вот основные моменты:

Ключевые выводы на основе сравнения D = 0 и D = 12:

  1. Решение проблемы «ленивого кода» (ленивой генерации):
    • В D = 0 (базовый запуск) модель выдала фрагментированные куски (snippets), оставив заглушки и опустив критически важные части кода (импорты, инициализацию, запуск).
    • В D = 12 движок заставил модель собрать код в единый, монолитный и готовый к продакшену скрипт с полной обвязкой (логированием, типизацией typing и корректным асинхронным сценарием запуска через asyncio.gather).

  2. Существенный рост глубины проработки (observability и инварианты):
    • Базовый проход (D = 0) ограничился стандартным исправлением состояния гонки (добавлением блокировки lock).
    • Рекурсивный проход (D = 12) поднял уровень инжиниринга: добавил структурированный сбор метрик прямо в класс (metrics для подсчёта успешных/неуспешных транзакций и объёмов переданных средств), ввёл валидацию типов на входе и корректно поместил логирование транзакций внутрь контекста блокировки (защитив логи от race condition, что в D = 0 было сделано лишь частично).

  3. Логическая связность и отсутствие «галлюцинаций контекста»:
    • При глубокой рекурсии контекст итеративно уточняется, что позволило выдать полностью валидный Python-код без потери структуры, который можно запускать сразу из коробки.

Qwen 2.5 7B Coder Instruct

Многие читатели просили протестировать именно эту модель, поэтому я проверю её на 3 задачах, по которым можно определить качество кода и то, насколько в разных сценариях помогает рекуррентность. Все подробные результаты этой модели вы сможете найти на моём Google Диске, ссылку на который я оставлю в конце статьи.

Основных задач всего три, остальные я посчитал нецелесообразными:

  1. 1. Код-ревью: найти баги, исправить их и развернуть (деплой) Flask-сервер.

  2. 2. Фулстек-разработка: создание полноценного сервиса по продаже Orange Pi (с каталогом, дизайном, оформлением заказа и имитацией оплаты).

  3. 3. 2D-игра «Динозаврик»: популярный тест среди авторов контента.

Конечно, это не HumanEval и не SWE-Bench, но эти тесты показывают реальные возможности модели без затяжных прогонов (ограничения по железу всё ещё сказываются). Учитывайте также, что перед нами 7B-модель, поэтому её решения могут выглядеть достаточно скромными.

test_1
test_1

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

тест2
тест2

В этом тесте обе версии справились хуже, чем их старшие модели, однако ТЗ полностью выполнил только рекурсивный вариант.

тест3
тест3

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

Итоги по Qwen 2.5 Coder Instruct

06af2477a02f1c199a1a57a571714a2d

Как видите, рекурсивная версия стабильно опережает стандартную, однако почти на каждой задаче приходится жертвовать 11–13% скорости генерации. По-моему, это вполне приемлемый компромисс, но для некоторых сценариев это может оборачиваться заметными потерями времени. Именно поэтому форк продолжает развиваться — вы можете поддержать его, создав PR или Issue на GitHub.

Mistral 7B Instruct v0.2

По вашим просьбам я также протестировал известную модель Mistral 7B Instruct v0.2 на тех же трёх практических задачах. Сравнение показало очень интересную разницу между базовым движком (D = 0) и рекурсивным (D = 12).

c5cc2d4c341b39e0b42ba7b9d221e7b9

1. Исправление уязвимостей Flask (Код-ревью): В базовом режиме (D = 0) модель пыталась защитить опасные эндпоинты через локальные фильтры, оставив частичные уязвимости. Рекурсивный вариант (D = 12) радикально переработал архитектуру и полностью заблокировал опасные руты (/ping, /math), доведя уровень защищённости кода до 98%.

97b5d0e0e027ccfb1eafbd8ca9ceb6fc

2. Фулстек-платформа OrangeSell: В этой задаче прирост оказался максимальным (2.2x). Обычная модель опустила блоки FAQ, отзывов и формы входа, ограничившись простейшим списком товаров. Рекурсивный движок выполнил 100% бизнес-логики, добавив всю необходимую верстку и интерактивную корзину. И это пока что лучший из всех вариантов

743c1c9ba26acaed36f5430aac294a92

3. 2D-игра «Динозаврик»: Обе версии реализовали рабочий игровой цикл и физику прыжка, однако рекурсивная модель показала более аккуратную адаптивную верстку без наложения блоков.

Итоги

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

Почему так мало тестов Qwen 3.5 35B?

Моё оборудование не позволяет запускать большие модели полностью в VRAM. Пришлось использовать дополнительные решения, чтобы выполнить просьбы из анонимной формы обратной связи.

Почему на диаграммах рекурсивная модель выглядит значительно лучше стандартной?

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

Ссылки

  1. https://github.com/cubetitled-ui/llama.cpp/tree/patch-speedup

  2. https://drive.google.com/drive/folders/15QYzCQkJvjaPsv1U-K3PBpp3Rai9q_SY?usp=sharing

P.S. Я очень извиняюсь если результаты Mistral оказались неверными ведь я доверил слишком много ии агенту но вроде все нормально

Для запуска моделей используйте именно https://github.com/cubetitled-ui/llama.cpp/tree/patch-speedup

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.Что будем делать в следующей статье?58.33%Туториал как это запускать.78.33%Сравнения harness какая вообще между ними разница.133.33%Что было сделано чтобы ускорить форк с 2 токенов в сек до 11 токенов в сек.40%Статью на другую тему не форк а рассказ принципов работы или обзор на модельки00%Другое вообще не ИИ0 Проголосовали 12 пользователей. Воздержавшихся нет.

Источник: habr.com

Оцените материал:

Поделиться
Понравилась статья? Расскажите другим
ВКонтакте
Читайте также
Новости робототехники Procore Technologies Знакомый ДронРазвертывание за 845 миллионов долларов Архив рубрики ~Коротко из Telegram~ Нашли очень крутой ИИ-сервис для музыкантов — Studio Moises 😇… Архив рубрики ~Коротко из Telegram~ Нейронки будут вершить СУДЬБЫ людей — в ОАЭ запустят первый в… Архив рубрики ~Коротко из Telegram~ ИТ-холдинг Т1 подвел финансовые итоги первого полугодия и дал прогнозы… Архив рубрики ~Коротко из Telegram~ LLM на 28 млн параметров смогли запустить на микроконтроллере за… Архив рубрики ~Коротко из Telegram~ ✅ OpenAI Academy открыла серию живых сессий Codex Bootcamp —… Архив рубрики ~Коротко из Telegram~ 🎞 Seedance 2.5 вышел глобально — ByteDance запустила модель в… Новости робототехники Компания Bright Machines заявляет, что ее новая гибридная роботизированная ячейка может помочь решить серьезную проблему, связанную с дефицитом инфраструктуры искусственного интеллекта. Архив рубрики ~Коротко из Telegram~ Razer выкатила настоящее RGB-кресло для геймеров Soma Chroma умеет реагировать подсветкой… Новости робототехники Робо-костюм Тони Старка создан Мы уже писали про это, но… Архив рубрики ~Коротко из Telegram~ Кейс: Claude находит дыры в криптографии, которые пропустили люди Представьте… Архив рубрики ~Коротко из Telegram~ Большинство текстов в сети, от экспертных статей до коммерческих предложений,… Архив рубрики ~Коротко из Telegram~ Winamp вернется в 2027 году с музыкальным сервисом на базе Deezer… Архив рубрики ~Коротко из Telegram~ Ozon увеличил чистую прибыль вдвое По итогам второго квартала 2026… Новости робототехники Procore Technologies Знакомый ДронРазвертывание за 845 миллионов долларов Архив рубрики ~Коротко из Telegram~ Нашли очень крутой ИИ-сервис для музыкантов — Studio Moises 😇… Архив рубрики ~Коротко из Telegram~ Нейронки будут вершить СУДЬБЫ людей — в ОАЭ запустят первый в… Архив рубрики ~Коротко из Telegram~ ИТ-холдинг Т1 подвел финансовые итоги первого полугодия и дал прогнозы… Архив рубрики ~Коротко из Telegram~ LLM на 28 млн параметров смогли запустить на микроконтроллере за… Архив рубрики ~Коротко из Telegram~ ✅ OpenAI Academy открыла серию живых сессий Codex Bootcamp —… Архив рубрики ~Коротко из Telegram~ 🎞 Seedance 2.5 вышел глобально — ByteDance запустила модель в… Новости робототехники Компания Bright Machines заявляет, что ее новая гибридная роботизированная ячейка может помочь решить серьезную проблему, связанную с дефицитом инфраструктуры искусственного интеллекта. Архив рубрики ~Коротко из Telegram~ Razer выкатила настоящее RGB-кресло для геймеров Soma Chroma умеет реагировать подсветкой… Новости робототехники Робо-костюм Тони Старка создан Мы уже писали про это, но… Архив рубрики ~Коротко из Telegram~ Кейс: Claude находит дыры в криптографии, которые пропустили люди Представьте… Архив рубрики ~Коротко из Telegram~ Большинство текстов в сети, от экспертных статей до коммерческих предложений,… Архив рубрики ~Коротко из Telegram~ Winamp вернется в 2027 году с музыкальным сервисом на базе Deezer… Архив рубрики ~Коротко из Telegram~ Ozon увеличил чистую прибыль вдвое По итогам второго квартала 2026…

Оставить комментарий