Доучення (Fine-Tuning) відкритої LLM під ваші завдання

Ви навчили LLM на своєму датасеті. А модель галюцинує коди МКБ-10? Fine-tuning відкритої LLM — спосіб перетворити загальну модель на спеціаліста вашого домену. Ми доучуємо моделі з повним контролем над даними. Ви володієте вагами. Розгортаєте on-premise. Масштабуєте інференс без плати за токени. Нак

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

Часті запитання

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

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

Ви навчили LLM на своєму датасеті. А модель галюцинує коди МКБ-10? Fine-tuning відкритої LLM — спосіб перетворити загальну модель на спеціаліста вашого домену. Ми доучуємо моделі з повним контролем над даними. Ви володієте вагами. Розгортаєте on-premise. Масштабуєте інференс без плати за токени. Накопичений досвід — понад 50 проєктів: від класифікації до генерації складних звітів. QLoRA дозволяє економити до 75% бюджету на обчислювальних ресурсах. Типова економія становить від $500 до $5000 на проєкт. Ми гарантуємо якість доучення та надаємо звітність за кожним етапом проєкту. Наша команда має сертифікати та понад 5 років досвіду в NLP. Створіть свій чат-бот на LLM за допомогою fine-tuning. Оцінимо ваш проєкт. Пишіть, обговоримо деталі та підберемо стратегію. Отримайте консультацію щодо вашого проєкту.

Скільки коштує fine-tuning?

Вартість fine-tuning залежить від обсягу даних, складності задачі та необхідних обчислювальних ресурсів. Мінімальний проєкт з готовими даними коштує від $1500. Типовий проєкт з підготовкою даних — $5000–$15000. Складні проєкти можуть досягати $30000. Ми надаємо детальний кошторис на етапі аудиту.

Яка модель краще: LoRA чи повний fine-tuning?

LoRA в 4 рази економніше за пам'яттю, ніж повний fine-tuning, і в 2 рази швидше за часом навчання. Повний fine-tuning дає на 5–15% вищу якість на складних задачах, але потребує в 4 рази більше VRAM. Вибір залежить від вашого бюджету та вимог до точності.

Вибір базової моделі під задачу

Вибір базової моделі — критичне рішення. Неправильний вибір призводить до переробки на етапі ітерацій. Ми оцінюємо, на якому класі задач модель показує максимум, і підбираємо оптимальний варіант.

Клас задачі Рекомендовані моделі Обґрунтування
Класифікація, NER, структурований вивід Llama 3.1 8B, Mistral 7B, Phi-4-mini Достатня якість, швидкий інференс
Генерація тексту українською/російською Qwen2.5-7B/14B, Llama 3.1 8B Сильна багатомовність
Програмування, SQL, code review Qwen2.5-Coder-32B, DeepSeek-Coder-V2, Phi-4 Спеціалізовані code моделі
Складний reasoning, аналіз DeepSeek-R1-Distill-32B, Llama 3.1 70B Високий reasoning, інструкції
Edge/offline/мобільні Phi-4-mini, Qwen2.5-3B, Llama 3.2 3B Малий розмір, квантизація
Мультимодальні задачі Llama 3.2-Vision, Qwen2-VL, InternVL Нативна підтримка зображень

Переваги fine-tuning над RAG

RAG (Retrieval-Augmented Generation) хороший, коли потрібно підтягнути актуальні факти із зовнішнього джерела. Але якщо задача потребує глибокого розуміння доменної логіки, fine-tuning дає більш послідовну якість. Наприклад, у медичній діагностиці модель має точно класифікувати код МКБ-10, а RAG може плутатися через шум у витягнутих документах. Fine-tuning «вшиває» знання прямо у ваги, усуваючи проблему. При цьому LoRA-доучення в 4 рази економніше повного fine-tuning за пам'яттю, що робить його доступним для більшості проєктів.

Синтетична генерація даних

Часто у замовника немає розмічених даних, але є неструктуровані джерела: документи, регламенти, FAQ. Використовуємо GPT-4o або Claude для автоматичної генерації навчальних пар. Це дозволяє отримати тисячі прикладів за дні, а не місяці. Однак важливо верифікувати вибірку вручну — мінімум 10–15% для контролю якості.

from openai import OpenAI import json client = OpenAI() def generate_training_example(document_chunk: str, num_examples: int = 5) -> list: """Генерує навчальні пари з фрагмента документа""" prompt = f"""Ти — експерт зі створення датасетів для навчання мовних моделей. На основі фрагмента документа нижче створи {num_examples} пар "запитання-відповідь" у форматі JSON. Запитання мають бути різноманітними: фактичні, аналітичні, практичні. Відповіді — точними, заснованими тільки на тексті документа. Документ: {document_chunk} Поверни JSON-масив: [{"question": "...", "answer": "..."}]""" response = client.chat.completions.create( model="gpt-4o", messages=[{"role": "user", "content": prompt}], response_format={"type": "json_object"}, temperature=0.7 ) return json.loads(response.choices[0].message.content)["pairs"] 

Типовий проєкт fine-tuning

Фаза 1: Аудит задачі та даних (1–2 тижні)

  • Формалізація задачі (класифікація/генерація/витяг)
  • Інвентаризація наявних даних, оцінка обсягу та якості
  • Вибір базової моделі та методу навчання

Фаза 2: Підготовка даних (2–6 тижнів)

  • Збір та агрегація джерел
  • Очищення (дублікати, шум, PII)
  • Розмітка (ручна/синтетична/комбінована)
  • Форматування під chat template
  • Train/val/test split (80/10/10)

Фаза 3: Навчання (1–4 тижні)

  • Baseline оцінка базової моделі
  • Перший запуск LoRA/QLoRA з дефолтними параметрами
  • Аналіз training/val loss кривих
  • Підбір гіперпараметрів
  • Full Fine-Tuning при необхідності

Фаза 4: Оцінка та ітерації (1–3 тижні)

  • Автоматичні метрики (F1, BLEU, ROUGE, accuracy)
  • LLM-as-judge (GPT-4o або інша сильна модель як суддя)
  • Людська оцінка вибірки
  • Аналіз failure cases → доопрацювання даних

Фаза 5: Деплой та моніторинг (1–2 тижні)

  • Квантизація (опціонально)
  • Деплой через vLLM/TGI
  • Налаштування моніторингу та A/B тест vs baseline

Що входить в роботу

  • Аналіз задачі та даних, формалізація метрик успіху
  • Вибір оптимальної базової моделі та методу навчання
  • Підготовка даних: збір, очищення, розмітка (вручну або синтетично)
  • Навчання з підбором гіперпараметрів, логування в MLflow
  • Оцінка: автопілот + LLM-as-judge + контрольна вибірка експертів
  • Деплой (vLLM, TGI) та інтеграція у ваш пайплайн
  • Документація та навчання команди замовника

Практичний кейс: спеціалізація під телемедицину (з нашої практики)

Задача: асистент для лікарів первинної ланки — диференціальна діагностика за скаргами пацієнта, пропозиція списку обстежень, вибір МКБ-10 коду. Наш клієнт — великий медичний центр.

Вихідні дані:

  • 450 клінічних випадків з висновками (з медсистеми, знеособлені)
  • Клінічні рекомендації МОЗ України за 12 нозологіями (PDF, 3200 сторінок)
  • Довідник МКБ-10

Стратегія:

  1. Конвертація клінічних рекомендацій у chunks
  2. Синтетична генерація 3200 прикладів через GPT-4o (скарги → діагностика)
  3. Верифікація 15% вибірки практикуючими терапевтами
  4. Fine-tuning Qwen2.5-14B (найкраща українська/російська мова для медтермінології)

Результати (після 4 епох QLoRA, r=32):

  • Top-3 accuracy МКБ-10: 71% → 89%
  • Повнота списку рекомендованих обстежень (recall vs експерт): 0.62 → 0.84
  • Hallucination rate (вигадані препарати/процедури): 24% → 6%
  • Latency (vLLM, A100): 1.8с на запит

QLoRA дозволила навчити модель на 1x A100 80GB, що в 4 рази економніше повного fine-tuning. Цей підхід підходить і для ваших задач — зв'яжіться, оцінимо проєкт.

Моніторинг якості в продакшні

Після деплою налаштовуємо безперервний моніторинг:

import mlflow # Логування передбачень для аналізу дрейфу with mlflow.start_run(): mlflow.log_metrics({ "avg_response_length": avg_len, "refusal_rate": refusal_rate, "latency_p95": latency_p95, "user_rating_avg": rating_avg, }) 

Ознаки деградації моделі: зростання refusal rate, зниження користувацьких оцінок, збільшення частки escalation в downstream системах.

Інфраструктурні вимоги

Метод Модель GPU VRAM Час навчання
QLoRA 7B 1×A100 40GB 18 GB 2–6 год
QLoRA 14B 1×A100 80GB 35 GB 4–12 год
QLoRA 70B 2×A100 80GB 90 GB 12–36 год
Full FT 7B 4×A100 40GB 120 GB 8–24 год
Full FT 70B 8×H100 80GB 560 GB 48–120 год

Терміни повного циклу

Мінімальний проєкт (готові дані, нескладна задача): 3–5 тижнів. Типовий проєкт (підготовка даних з нуля): 8–14 тижнів. Складний проєкт (спеціалізований домен, ітеративна розмітка): 16–24 тижні.

Приклад розподілу трудозатрат (типовий проєкт)
  • Аудит і формалізація: 1–2 тижні
  • Підготовка даних: 3–6 тижнів
  • Навчання та ітерації: 2–4 тижні
  • Деплой та супровід: 1–2 тижні

Загальний термін: 8–14 тижнів. Вартість розраховується індивідуально — оцініть ваш проєкт у нас.

Fine-tuning — ключова техніка адаптації LLM. Отримайте консультацію для вашої задачі: підберемо стратегію та оптимізуємо бюджет. Замовте оцінку проєкту зараз. Ми використовуємо MLOps для автоматизації пайплайнів, що дозволяє швидко експериментувати. Навчання нейромережі — один із етапів створення корпоративного AI.