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

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

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

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

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

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1284
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1196
  • 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

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

Phi — сім'я компактних мовних моделей від Microsoft Research, оптимізована за принципом "якість даних важливіша за кількість параметрів". Phi-3 та Phi-4 показують результати, порівнянні з моделями в 3–5 разів більшими, на завданнях reasoning та програмування. Це робить їх привабливими для edge-розгортання, мобільних додатків і сценаріїв з обмеженими обчислювальними ресурсами.

Лінійка моделей Phi

Модель Параметри VRAM (fp16) Ключова особливість
Phi-3-mini-4k 3.8B 7.6 ГБ Edge/мобільні
Phi-3-mini-128k 3.8B 7.6 ГБ Довгий контекст
Phi-3-small 7B 14 ГБ Рівновага
Phi-3-medium 14B 28 ГБ Висока якість
Phi-4 14B 28 ГБ Поточний флагман
Phi-4-mini 3.8B 7.6 ГБ Компактний флагман

Phi-4 з 14B параметрами перевищує Llama 3.1 70B за кількома бенчмарками з математики та програмування — результат високої якості тренувальних даних (синтетичні дані, підручники).

LoRA дотонування Phi-4 через Transformers + TRL

from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig
from trl import SFTTrainer, SFTConfig
from peft import LoraConfig
import torch

model = AutoModelForCausalLM.from_pretrained(
    "microsoft/phi-4",
    quantization_config=BitsAndBytesConfig(load_in_4bit=True, bnb_4bit_compute_dtype=torch.bfloat16),
    device_map="auto",
    trust_remote_code=True,
    torch_dtype=torch.bfloat16,
)

trainer = SFTTrainer(
    model=model,
    args=SFTConfig(
        output_dir="./phi4-finetuned",
        num_train_epochs=4,
        per_device_train_batch_size=4,
        gradient_accumulation_steps=4,
        learning_rate=1e-4,
        bf16=True,
        max_seq_length=8192,
    ),
    peft_config=LoraConfig(
        r=16, lora_alpha=32,
        target_modules=["q_proj", "v_proj", "k_proj", "o_proj"],
        task_type="CAUSAL_LM"
    ),
    train_dataset=dataset,
)
trainer.train()

Специфіка: дотонування для edge та мобільних пристроїв

Phi-3/4-mini (3.8B) — найпопулярніший вибір для розгортання в мобільні додатки та розширення браузера. Після дотонування та квантизації:

  • GGUF Q4_K_M: ~2.2 ГБ, працює на CPU (MacBook M-series: ~12 tok/s)
  • ONNX INT4: використовується в ONNX Runtime для Windows/Android
  • ExecuTorch: розгортання на iPhone/Android через PyTorch Mobile

Microsoft надає версії ONNX Phi через microsoft/Phi-3-mini-4k-instruct-onnx, спрощуючи інтеграцію в .NET та Windows-додатки.

Практичний випадок: offline-помічник для польових інженерів

Завдання: мобільний додаток для інженерів технічного обслуговування промислового обладнання. Помічник працює offline (немає інтернету на об'єктах), відповідає на запитання про регламенти обслуговування та допомагає діагностувати несправності.

Базова модель: Phi-3-mini-128k-instruct (3.8B, контекст 128K необхідний для довгих технічних посібників).

Набір даних: 1400 пар (фрагмент документації / запитання інженера → відповідь із номером регламенту та кроками).

Результат:

  • Точність відповідей (відповідність регламентам): 58% → 86%
  • Рівень галюцинацій (придумує неіснуючі кроки): 31% → 8%
  • Модель після GGUF Q4_K_M: 2.1 ГБ, 9 tok/s на CPU смартфона (Snapdragon 8 Gen 3)

Строки

  • Підготовка набору даних: 2–4 тижні
  • Тренування (Phi-4 14B, QLoRA, A100): 4–10 годин
  • Квантизація та тестування на пристрої: 3–5 днів
  • Усього: 3–6 тижнів