Введение
Развертывание локальных LLM является распространённой практикой в наше время.
Существуют компактные модели вроде Qwen 3.6 или Gemma 4, которые можно запустить даже на потребительских видеокартах, но их возможностей часто не хватает.
Для тех, у кого немного больше VRAM, хорошим вариантом будет DeepSeek V4 Flash. Полноценная, без квантования, версия весит 167 ГБ. Модель достаточно умная и при этом относительно экономичная в плане KV-кеша. Для написания кода на 1С, конечно, будет заметно хуже топовых моделей, но явно сильно лучше, чем небольшие Qwen и Gemma.
Однако, 167 ГБ тоже немало.
Что можно сделать?
В современных моделях с архитектурой MoE модель разделена на множество отдельных "экспертов" и на каждый токен активируется только часть из них.
Для решения задач определённого типа не все эксперты нужны, и часть из них в целом может быть удалена. И, соответственно, это я и попробовал сделать.
Что получилось?
Модель доступна на HF: https://huggingface.co/kn322/DeepSeek-V4-Flash-0731-os-192e
Из 256 экспертов было удалено 25%, то есть 64. Осталось 192 эксперта.
Для упрощения задачи в процессе прунинга из модели был убран модуль DSpark, поэтому эта версия будет работать медленней, чем 0731. На уровне изначальной модели без спекулятивного декодирования. Но, так как из-за этого модель потеряла ещё где-то 6 ГБ, то удаление DSpark тоже способствует основной цели - уменьшению размера чекпоинта.
Для проверки результата я использовал бенчмарк PRISM (genlab-1c на github). Кажется, он единственный, который активно развивается, и его можно прогнать самостоятельно у себя на машине.
В PRISM уже есть оригинальный DeepSeek Flash, с результатами которого можно сравнить результат пруненой модели.
Модель со 192 экспертами весит 119 ГБ. Тестировал я на видеокарте H200 с 141 ГБ VRAM.
Результаты моего тестирования и результаты оригинальной модели с сайта бенчмарка:
| Модель | Категория задач | % решеных задач | Итоговый балл |
|---|---|---|---|
| Оригинальная | А, алгоритмика | 67% | 7.96 |
| Пруненая | A, алгоритмика | 40% |
7.28 |
| Оригинальная | B, платформенные | 45% | 7.08 |
| Пруненая | B, платформенные | 55% | 7.34 |
Результаты получились, кажется, примерно на уровне оригинальной модели. Категория B, почему-то, даже стала немного лучше)
Подробно сравнивать код и приводить примеры я не стал. Бенчмарк оценивает код, сгенерированный с первой попытки, без проверки синтаксиса и доступа к синтаксис-помощнику. Думаю, если дать модели ещё проверку синтаксиса и доступ к справке, то результаты будут сильно лучше.
ВНИМАНИЕ!
Это не дообученная модель, а обрезанная оригинальная. Модель не получила новые знания, а потеряла ту часть, которая не должна была влиять на работу с кодом в 1С.
Заключение
Данный проект - это больше эксперимент, проведенный "на скорую руку". Потому что арендовать под это карты по 10$ в час выходит дороговато. А результат получился, в целом, нормальный.
Буду рад любой обратной связи и тестам. Если у вас есть возможность сравнить работу моделей - делитесь результатами в комментариях.
____________________________________________________________________
Возможно, вам будут интересны мои предыдущие публикации:
1. Редактор кода для "1С:Документооборот 3"
2. Проверка запросов на лишнюю выборку и разыменование полей составного типа
Вступайте в нашу телеграмм-группу Инфостарт