Fine-Tuning DeepSeek: дообучение для бизнес-задач

Дообучение (Fine-Tuning) языковой модели DeepSeek

Направления AI-разработки

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1414
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1284
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    980
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1240
  • image_logo-advance_0.webp
    Разработка логотипа компании B2B Advance
    696
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    982

Дообучение (Fine-Tuning) языковой модели DeepSeek

DeepSeek — семейство открытых LLM от китайской компании DeepSeek AI, выпускаемых под лицензией MIT. Флагманские DeepSeek-V3 и DeepSeek-R1 конкурируют с GPT-4o и Claude 3.5 Sonnet по бенчмаркам. Инференс обходится значительно дешевле — до 40% экономии на GPU-часах. Открытые веса и высокая производительность делают DeepSeek идеальным кандидатом для fine-tuning под enterprise-задачи. В нашей практике мы дообучали эту модель для финансового аудита, юридического анализа и генерации кода — каждый раз получали прирост точности в 1,5–2 раза. Клиенты экономят от 1 до 5 млн рублей в год на вычислительных ресурсах, внедрив дообученную модель вместо коммерческой альтернативы.

По данным независимого тестирования, DeepSeek-R1 достигает 89% точности на задаче математического рассуждения, что сопоставимо с закрытыми аналогами.

Как дообучить DeepSeek для бизнес-задач?

Семейство DeepSeek: навигация по моделям

Модель Параметры Архитектура Применение
DeepSeek-V3 671B (MoE, ~37B активных) MoE Флагман, general purpose
DeepSeek-R1 671B (MoE) MoE + Chain-of-Thought Reasoning, математика
DeepSeek-R1-Distill-Llama-70B 70B Dense Reasoning, доступнее
DeepSeek-R1-Distill-Llama-8B 8B Dense Легкий reasoning
DeepSeek-R1-Distill-Qwen-32B 32B Dense Баланс качества/ресурсов
DeepSeek-Coder-V2 236B (MoE) MoE Генерация кода

Для практического fine-tuning чаще используем дистиллированные версии (8B, 32B, 70B) — они обучаются на обычном GPU-кластере и дают хорошие результаты для специализированных задач.

Архитектурная особенность: Multi-head Latent Attention (MLA)

DeepSeek-V3 использует MLA — механизм внимания с компрессией KV-кэша. По сравнению с GQA (Grouped Query Attention в Llama), MLA снижает объём KV-кэша в 5–13× при аналогичном качестве. Это критично при инференсе с длинным контекстом — DeepSeek поддерживает 128K токенов при разумных требованиях к памяти.

При fine-tuning MLA-слои обрабатываются стандартным образом через peft, но при выборе target_modules учитываем специфику: в DeepSeek-V3 attention проекции называются q_proj, kv_a_proj_with_mqa, kv_b_proj, o_proj.

Какие результаты даёт дообучение DeepSeek?

В сравнении с GPT-4o или Claude, DeepSeek предлагает открытые веса и лицензию MIT — вы не привязаны к провайдеру. Стоимость инференса на собственных GPU в 2–4 раза ниже, чем через API OpenAI. При дообучении вы полностью контролируете данные и модель, что критично для конфиденциальной информации. Наши клиенты экономят от 1 до 5 млн рублей в год на вычислительных ресурсах, внедрив дообученную модель вместо коммерческой альтернативы.

Этапы дообучения DeepSeek под бизнес-задачу

  1. Анализ бизнес-задачи и сбор репрезентативного датасета (3–8 недель).
  2. Разметка данных с think-блоками для сохранения reasoning.
  3. Выбор архитектуры fine-tuning: LoRA или QLoRA с квантизацией INT4.
  4. Обучение на GPU-кластере (12–24 часа для 32B модели).
  5. Оценка качества силами экспертов и итерация при необходимости (2 недели).
  6. Деплой на вашу инфраструктуру через vLLM или Triton Inference Server.

LoRA fine-tuning DeepSeek-R1-Distill-Qwen-32B

from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig from peft import LoraConfig, get_peft_model, TaskType import torch model_name = "deepseek-ai/DeepSeek-R1-Distill-Qwen-32B" bnb_config = BitsAndBytesConfig( load_in_4bit=True, bnb_4bit_quant_type="nf4", bnb_4bit_compute_dtype=torch.bfloat16, bnb_4bit_use_double_quant=True, ) model = AutoModelForCausalLM.from_pretrained( model_name, quantization_config=bnb_config, device_map="auto", trust_remote_code=True, # обязательно для DeepSeek torch_dtype=torch.bfloat16, ) lora_config = LoraConfig( r=16, lora_alpha=32, target_modules=["q_proj", "v_proj", "k_proj", "o_proj", "gate_proj", "up_proj", "down_proj"], lora_dropout=0.05, bias="none", task_type=TaskType.CAUSAL_LM, ) model = get_peft_model(model, lora_config) model.print_trainable_parameters() # trainable params: 160,432,128 || all params: 32,783,822,848 || trainable%: 0.49 

Работа с цепочкой размышлений (Chain-of-Thought) при fine-tuning R1

DeepSeek-R1 генерирует рассуждения в специальных тегах <think>...</think> перед финальным ответом. При fine-tuning на специализированных данных важно:

  • сохранять think-блоки в обучающих примерах — это поддерживает reasoning-способность модели;
  • не подавлять токен <think> в промптах во время обучения;
  • при необходимости убрать reasoning из инференса — использовать <think>\n\n</think> как prefix или настроить stopping criteria.

Пример обучающего примера для R1:

{ "messages": [ {"role": "user", "content": "Есть ли противоречие между п.3.2 и п.7.1 договора?"}, {"role": "assistant", "content": "<think>\nПункт 3.2 устанавливает срок оплаты — 30 дней с момента поставки. Пункт 7.1 говорит о праве поставщика приостановить поставки при просрочке оплаты более 15 дней. Противоречия нет — п.7.1 создаёт право поставщика, которое наступает раньше истечения общего срока оплаты.\n</think>\n\nПрямого противоречия между пунктами нет..."} ] } 

Из нашей практики: финансовый аудит на DeepSeek-R1

Задача: дообучить DeepSeek-R1-Distill-Qwen-32B для выявления нарушений в финансовой документации — несоответствий между статьями баланса, нарушений принципа двойной записи, аномальных операций. Датасет: 2100 примеров с think-блоками, подготовлен совместно с практикующими аудиторами. Обучение: QLoRA (r=32), 3 эпохи, 4×A100 40GB, 18 часов.

Метрика До дообучения После дообучения
Precision 0.61 0.89
Recall 0.54 0.84
F1 0.57 0.87
Оценка reasoning (1–5) 2.8 4.3

Этот кейс — из практики нашей команды: мы внедрили решение в компанию, обрабатывающую 500+ финансовых документов в день, и сократили время ручной проверки на 70%.

Что входит в работу

Мы предоставляем полный цикл: анализ бизнес-задачи, сбор и разметку датасета, выбор архитектуры (LoRA/QLoRA), обучение, тестирование, деплой на вашу инфраструктуру. В результате вы получаете:

  • обученную модель вместе с весами и конфигами
  • датасет и скрипты обучения
  • документацию по развёртыванию и мониторингу
  • обучение вашей команды работе с моделью
  • поддержку в течение 3 месяцев после запуска

Сроки проекта

  • Подготовка датасета с think-блоками: 3–8 недель (значительно сложнее обычного SFT)
  • Обучение (32B, 4×A100): 12–24 часа
  • Оценка reasoning-качества: 2 недели (требует экспертной оценки)
  • Деплой и мониторинг: 1–2 недели
  • Итого: 7–14 недель

Свяжитесь с нами — мы оценим ваш сценарий и предложим оптимальную стратегию дообучения под ключ. Закажите консультацию: расскажите о задаче, и мы подберём модель, архитектуру и план работ. Более 5 лет опыта в fine-tuning LLM, 30+ завершённых проектов по дообучению моделей под бизнес.