Дообчання (Fine-Tuning) мовної моделі Qwen (Alibaba)

Проектуємо та впроваджуємо системи штучного інтелекту: від прототипу до production-ready рішення. Наша команда поєднує експертизу в машинному навчанні, дата-інжинірингу та MLOps, щоб AI працював не в лабораторії, а в реальному бізнесі.
Показано 1 з 1Усі 1566 послуг
Дообчання (Fine-Tuning) мовної моделі Qwen (Alibaba)
Складний
від 1 тижня до 3 місяців
Часті запитання

Напрямки AI-розробки

Етапи розробки AI-рішення

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1279
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1195
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    901
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1119
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    586
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    853

Дотонування мовних моделей Qwen (Alibaba)

Qwen — сім'я моделей мов з відкритим кодом від Alibaba Cloud, випущена під ліцензією Apache 2.0 (базові версії) та ліцензією Tongyi Qianwen (більші версії). Сім'я Qwen2.5 включає моделі від 0.5B до 72B параметрів, плюс спеціалізовані версії: Qwen2.5-Coder (програмування), Qwen2.5-Math (математика), Qwen-VL (мультимодальна). За бенчмарками MMLU та HumanEval, Qwen2.5-72B конкурує з Llama 3.1 70B.

Лінійка моделей Qwen2.5 для дотонування

Модель Параметри VRAM (bf16) Особливість
Qwen2.5-0.5B 0.5B 1 ГБ Edge/IoT
Qwen2.5-1.5B 1.5B 3 ГБ Мобільні
Qwen2.5-7B 7B 14 ГБ Основна робоча лошадка
Qwen2.5-14B 14B 28 ГБ Рівновага якості/ресурсів
Qwen2.5-32B 32B 64 ГБ Висока якість
Qwen2.5-72B 72B 144 ГБ State-of-the-art з відкритим кодом
Qwen2.5-Coder-32B 32B 64 ГБ Код, SQL, алгоритми

Переваги Qwen для специфічних завдань

Багатомовна підтримка: Qwen навчається на даних з суттєвою долею китайської, англійської та 27 інших мов. Російська мова представлена набагато краще, ніж у багатьох західних моделей, важливо при роботі з російськомовними корпусами.

Довгий контекст: Qwen2.5 підтримує до 128K токенів контексту. Для завдань дотонування з довгими документами (контракти, наукові статті, нормативні акти) це критична перевага.

Qwen2.5-Coder: спеціалізована версія, що перевищує більшість моделей з відкритим кодом того ж розміру на HumanEval. При дотонуванні на корпоративних кодових базах забезпечує кращу стартову точку, ніж дотонування загальної моделі.

Дотонування через LLaMA-Factory

LLaMA-Factory — найзручніший інструмент для дотонування Qwen, підтримуючий повний спектр методів (Full, LoRA, QLoRA, DoRA) з уніфікованим форматом конфігурації:

# config.yaml
model_name_or_path: Qwen/Qwen2.5-7B-Instruct
method: lora
dataset: my_dataset
template: qwen
finetuning_type: lora
lora_rank: 16
lora_alpha: 32
lora_target: q_proj,v_proj
output_dir: ./qwen25-7b-finetuned
num_train_epochs: 3
per_device_train_batch_size: 4
gradient_accumulation_steps: 4
learning_rate: 2.0e-4
lr_scheduler_type: cosine
warmup_ratio: 0.1
bf16: true
llamafactory-cli train config.yaml

Як альтернатива, використовуйте swift від ModelScope (Alibaba):

swift sft \
  --model_type qwen2_5_7b_instruct \
  --dataset my_dataset \
  --train_type lora \
  --output_dir ./output

Формат даних: Chat Template Qwen

Qwen2.5 використовує специфічний chat template з тегами <|im_start|> та <|im_end|>:

<|im_start|>system
Ти — помічник для аналізу фінансової звітності.<|im_end|>
<|im_start|>user
Розрахуй EBITDA з: дохід 850M, COGS 420M, OpEx 180M, DA 45M<|im_end|>
<|im_start|>assistant
EBITDA = Дохід - COGS - OpEx + DA = 850 - 420 - 180 + 45 = **295M**<|im_end|>

При прямому використанні transformers, застосуйте tokenizer.apply_chat_template() для правильного форматування.

Практичний випадок: фінансовий аналіз на Qwen2.5-14B

Завдання: автоматичний аналіз квартальних звітів компаній (МСФО), видалення ключових показників, розрахунок фінансових коефіцієнтів, позначки аномалій.

Набір даних: 1800 прикладів: введення даних звіту → структурований аналіз (JSON + текстове резюме).

Тренування: Qwen2.5-14B Instruct, QLoRA (r=32, alpha=64), 4 епохи, 2×A100 40GB, 6 годин.

Результати:

  • Коректність розрахунку коефіцієнтів: 71% → 94%
  • Точність позначки аномалій (F1): 0.67 → 0.88
  • Якість текстового резюме (human eval, 1–5): 3.1 → 4.4
  • Токенів на запит (середнім): без змін (~1800)

Розгортання дотонованої Qwen через vLLM

from vllm import LLM, SamplingParams

llm = LLM(
    model="./qwen25-14b-merged",
    dtype="bfloat16",
    tensor_parallel_size=2,  # 2 GPU
    max_model_len=32768,
    gpu_memory_utilization=0.9
)

sampling_params = SamplingParams(temperature=0.1, max_tokens=2048)
outputs = llm.generate(prompts, sampling_params)

vLLM забезпечує безперервний батчинг та PagedAttention, що при розмірі батча 16 дає пропускну спроможність ~240 tok/s на 2×A100.

Строки

  • Підготовка набору даних: 2–5 тижнів
  • Тренування (7B, QLoRA): 3–8 годин
  • Тренування (72B, QLoRA, 4×A100): 24–72 години
  • Ітерації та оцінка: 1–2 тижні
  • Усього: 4–8 тижнів