Qwen2.5-Coder-7B — C#-дообучение (QLoRA, GGUF-кванты)

Это Qwen/Qwen2.5-Coder-7B-Instruct, дообученный методом QLoRA (LoRA r=64, alpha=32, все 7 проекций) на ~93K примерах с акцентом на C# и русскоязычные диалоги о программировании. В репозитории — GGUF-кванты слитой (merged) модели для llama.cpp / LM Studio / Ollama.

Кванты

Файл Размер Рекомендация
final_Q8_0.gguf 7.54 ГБ Максимальное сходство с bf16-оригиналом
final_Q6_K.gguf 5.82 ГБ Практически без потерь
final_Q5_K_M.gguf 5.07 ГБ Оптимум: качество/размер/скорость

⚠️ Не используйте Q4_K_M для этой модели: на нём стирается эффект дообучения (ответы совпадают с базовой моделью). Начиная с Q5_K_M преимущества адаптера сохраняются.

Как тестировалась модель

MultiPL-E (humaneval-cs 158 + mbpp-cs 386 задач, greedy, компиляция через dotnet 9, Debug.Assert-тесты):

Модель humaneval-cs mbpp-cs
Базовая Qwen2.5-Coder-7B (bf16) 50.6% 47.4%
Эта модель (bf16 merged) 48.1% 46.6%
Эта модель (Q5_K_M) 47.5% 48.5%

Различия статистически незначимы (тест Макнемара, p 0.08–0.87): на англоязычном бенчмарке в стиле MultiPL-E модель ведёт себя на уровне базы.

Качественный тест на русскоязычных задачах (5 задач: багфикс ×2, консольное приложение, LINQ, рефакторинг; greedy):

Модель Компилируемость ответов
Базовая (bf16) 3/5
Эта модель (bf16, Q5/Q6/Q8) 5/5

Дообученная модель даёт более компактные и идиоматичные ответы, реже допускает ошибки компиляции (именованные кортежи через :, корректные пространства имён). На Q5_K_M/Q6_K/Q8_0 это преимущество сохраняется; на Q4_K_M — исчезает.

Обучение

  • Метод: QLoRA (4-bit NF4 база), LoRA r=64, alpha=32, dropout 0.05, target: q/k/v/o/gate/up/down проекции
  • Данные: ~93K примеров (54.9M токенов): C#-ядро ~57% (Magicoder, CommitPackFT, OpenCodeInstruct, CodeFeedback), русскоязычные диалоги ~30% (ru_stackoverflow, WildChat, ru_turbo_alpaca), агентские задачи ~8.5% (hermes-function-calling)
  • График: 2 эпохи, 23242 шага, эффективный батч 8, seq len 2048
  • eval_loss: 0.598 → минимум 0.5626 (середина 1-й эпохи) → 0.5793 в конце

Использование

# llama.cpp
llama-server -m final_Q5_K_M.gguf -ngl 99 -c 4096 --port 8080

# Или llama-cli в интерактивном режиме
llama-cli -m final_Q5_K_M.gguf -ngl 99 --chat-template qwen

Модель использует стандартный chat-шаблон Qwen (ChatML). Промпты на русском работают нативно — модель дообучалась в том числе на русскоязычных диалогах о C#/.NET.

Лицензия и ограничения

  • База Qwen2.5-Coder-7B-Instruct — Apache 2.0
  • Часть обучающих данных имеет некоммерческие ограничения (research/non-commercial) — при коммерческом использовании проверьте состав смеси
  • Модель может галлюцинировать API и генерировать небезопасный код — стандартные оговорки для кодовых LLM
Downloads last month
651
GGUF
Model size
8B params
Architecture
qwen2
Hardware compatibility
Log In to add your hardware

5-bit

6-bit

8-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for testingusera1/Qwen2.5-Coder-7B-CSharp-QLoRA-GGUF

Base model

Qwen/Qwen2.5-7B
Adapter
(798)
this model

Datasets used to train testingusera1/Qwen2.5-Coder-7B-CSharp-QLoRA-GGUF