Техники файнтюнинга LLM¶
~3 минуты чтения
Предварительно: Квантизация LLM, Методы alignment
Full fine-tuning модели на 70B параметров требует ~1.1 TB VRAM и обходится в $50K+ за один прогон на облачных H100. Parameter-efficient методы (LoRA, QLoRA) снижают потребление памяти в 10-20x, обучая лишь 0.1-1% параметров при сохранении 90-99% качества оригинальной модели. При этом в 2026 году качество данных стабильно оказывается важнее объёма: 50 экспертно размеченных примеров часто превосходят 10 000 зашумлённых.
URL: Zylos Research Тип: fine-tuning / rlhf / dpo / lora / qlora / peft Дата: Январь 2026 Сбор: Ralph Research ФАЗА 5
Part 1: Overview¶
Executive Summary¶
Key Insight:
LLM fine-tuning in 2026 has evolved into a mature ecosystem with clear trade-offs between computational cost, performance, and ease of implementation. Data quality has emerged as the most critical success factor, consistently outweighing hyperparameter optimization.
Three Main Categories: 1. Alignment methods (RLHF, DPO) — train models to follow human preferences 2. Parameter-efficient methods (LoRA, QLoRA) — reduce costs by 10-20x 3. Supervised fine-tuning (SFT) — adapt pre-trained models to specific tasks
Part 2: Alignment Methods¶
2.1 Direct Preference Optimization (DPO)¶
DPO represents a major simplification in aligning LLMs with human preferences.
Key Advantages: - Stable, performant, computationally lightweight - Avoids PPO-based RLHF instabilities - No sampling from LM during fine-tuning - Minimal hyperparameter tuning required
Performance:
Fine-tuning with DPO exceeds PPO-based RLHF in controlling sentiment, and matches or improves response quality in summarization and single-turn dialogue while being substantially simpler.
Implementation: Hugging Face TRL library provides DPOTrainer
2.2 RLHF (Reinforcement Learning from Human Feedback)¶
Process: 1. Collect feedback from humans on LLM behavior 2. Train reward model based on feedback 3. Fine-tune LLM using RL algorithms (PPO, GRPO)
Challenges: - More complex than DPO - Requires separate reward model training - Can be unstable during PPO optimization
When to Use: Best for complex alignment scenarios requiring nuanced reward modeling.
2.3 RLAIF (Superalignment)¶
AI models fine-tune other AI models, reducing human annotation needs.
Part 3: Parameter-Efficient Fine-Tuning (PEFT)¶
3.1 Cost and Memory Comparison¶
| Metric | Full Fine-Tuning | PEFT |
|---|---|---|
| Memory (7B model) | 100+ GB GPU | ~20 GB |
| Memory per B params | 16 GB VRAM | ~2-3 GB |
| Cost reduction | — | 10-20x |
| Quality retention | 100% | 80-95% |
Hardware Implications: | Model | Full FT | LoRA | QLoRA | |-------|---------|------|-------| | 7B | H100 (80GB) | RTX 4090 (24GB) | RTX 4090 (24GB) | | 70B | Multi-H100 | Multi-A100 | Single A100 80GB |
3.2 LoRA (Low-Rank Adaptation)¶
How It Works: Adds tiny low-rank "adapters" to frozen model, training only a sliver of parameters.
Performance: 90-95% of full fine-tuning quality
Key Hyperparameters:
| Parameter | Description |
|---|---|
| Rank ® | Rank of low-rank matrices. Lower = faster, may affect quality |
| Target Modules | Research suggests ALL linear layers (not just attention) |
Best Practices: - For static datasets, avoid multi-epoch training (overfitting) - Data quality matters more than most hyperparameters - Optimizer choice (AdamW, SGD) shows minimal variation
3.3 QLoRA (Quantized LoRA)¶
Difference: Loads pre-trained model as 4-bit weights vs full-precision (FP16/BF16) in standard LoRA
| Metric | LoRA | QLoRA |
|---|---|---|
| Quality retention | 90-95% | 80-90% |
| Memory savings | 5.6x for 7B | 33% more than LoRA |
| Runtime | Baseline | 39% slower |
When to Use: - Start with LoRA if model fits comfortably - Use QLoRA to squeeze larger models onto limited VRAM
3.4 Production Deployment with PEFT¶
vLLM PEFT Support: - 1 base model loaded in GPU memory - N small adapter files (MBs each) - Serves N fine-tuned versions efficiently
Benefits: - Small checkpoints (few MBs per task) - Prevents catastrophic forgetting (most params frozen) - Less prone to overfitting
Part 4: Supervised Fine-Tuning (SFT)¶
4.1 Core Concepts¶
SFT transforms pre-trained "base model" into instruction-following assistant using next-token prediction on high-quality instruction data.
Distinction: - Instruction Fine-Tuning: Aligning with human instructions/prompts - Supervised Fine-Tuning: Broader category using labeled data
4.2 Data Requirements¶
| Metric | Guidance |
|---|---|
| Minimum examples | 50+ well-crafted examples |
| Typical volume | Tens of thousands |
| Quality vs Quantity | Each doubling = linear quality increase, BUT low-quality examples hurt |
Data quality > data quantity
Training on large amounts of internal data without pruning for highest quality can result in WORSE performance. 50 well-crafted examples often beat 10,000 noisy ones. Always filter and curate before scaling up dataset size.
4.3 Dataset Preparation Pipeline¶
graph LR
A["Dataset Preparation"] --> B["Model Initialization"]
B --> C["Training Setup"]
C --> D["Fine-Tuning"]
D --> E["Evaluation"]
E --> F["Deployment"]
F --> G["Monitoring"]
G -->|"drift detected"| A
style A fill:#e8eaf6,stroke:#3f51b5
style D fill:#fff3e0,stroke:#ff9800
style E fill:#e8f5e9,stroke:#4caf50
style G fill:#fce4ec,stroke:#e91e63
Data Preparation Techniques:
| Technique | Tools | Purpose |
|---|---|---|
| Balancing | SMOTE, ensemble | Balanced datasets |
| Augmentation | NLP-AUG, TextAttack | Generate variations |
| Annotation | Snorkel | Precise labeling |
| Safety | Filtering, privacy | Remove harmful content |
4.4 SFT vs RL (2026)¶
| Method | Accuracy | Notes |
|---|---|---|
| SFT | 88.3% | Solid foundation, teaches correctness and format |
| RL | Varies | Refines through optimization |
Relationship: Complementary, not competing.
4.5 Hugging Face TRL SFT Trainer¶
from trl import SFTTrainer
from datasets import load_dataset
dataset = load_dataset("trl-lib/Capybara", split="train")
trainer = SFTTrainer(
model="Qwen/Qwen2.5-0.5B",
train_dataset=dataset,
)
trainer.train()
Part 5: Provider Comparison 2026¶
| Provider | Best For | Fine-Tuning Support |
|---|---|---|
| Google Vertex AI | RAG over massive documents | Gemini 2.5 Flash-Lite/Pro, PEFT tutorials |
| Anthropic (via AWS Bedrock) | Complex reasoning, coding | AWS tools for private data |
| OpenAI | Multimodal, general chat | Compute + token-based pricing |
2026 Strategy: - Context caching = biggest cost-saver - Multi-provider strategy with LLM Router (LiteLLM)
Part 6: Evaluation 2026¶
Frameworks¶
- DeepEval, W&B Weave, MLflow, Humanloop, Arize AI, Langfuse, RAGAS
2026 Priority¶
"Traceability" — linking specific evaluation scores back to exact versions of prompts, models, and datasets
Part 7: Catastrophic Forgetting¶
Problem¶
Fine-tuning on new tasks causes performance degradation on original tasks.
Mitigation Techniques¶
| Technique | Effectiveness |
|---|---|
| Mixed training (6.2% interleaved) | Zero catastrophic forgetting |
| FIP (Functionally Invariant Paths) | Better retention than LoRA |
| Elastic Weight Consolidation | Moderate |
LoRA НЕ спасает от catastrophic forgetting
Распространённое заблуждение: "LoRA freezes most params, значит catastrophic forgetting не проблема". Исследования показывают: LoRA не полностью предотвращает forgetting при continual learning. Лучшая стратегия: mixed training с 6.2% interleaved data из предыдущих задач -- это даёт zero catastrophic forgetting.
Part 8: Interview-Relevant Numbers¶
Memory Requirements¶
| Model Size | Full FT | LoRA | QLoRA |
|---|---|---|---|
| 7B | 100+ GB | ~20 GB | ~14 GB |
| 70B | Multi-H100 | Multi-A100 | 80 GB |
Quality Retention¶
| Method | Quality | Cost |
|---|---|---|
| Full FT | 100% | 1x |
| LoRA | 90-95% | 0.05-0.1x |
| QLoRA | 80-90% | 0.03-0.07x |
Data Requirements¶
| Metric | Value |
|---|---|
| Minimum examples | 50+ |
| Doubling data | Linear quality increase |
| SFT accuracy | 88.3% |
GPU Pricing 2026 (On-Demand)¶
| GPU | Price/hour |
|---|---|
| RTX 4000 Ada | $0.76 |
| RTX 6000 Ada/L40S | $1.57 |
| AMD MI300X | $1.99 |
| H100 | $3.39 |
Заблуждение: DPO полностью заменил RLHF
DPO проще и стабильнее, но RLHF с PPO/GRPO по-прежнему превосходит DPO на сложных задачах alignment, где требуется итеративное уточнение reward signal. Frontier-модели (GPT-4, Claude) продолжают использовать RLHF как финальный этап. DPO оптимален для быстрого прототипирования и задач с чёткими preference pairs.
Заблуждение: больше данных = лучше fine-tuning
Удвоение объёма данных даёт линейный прирост качества, но только для чистых данных. Добавление зашумлённых примеров ухудшает модель -- 10K noisy samples дают результат хуже, чем 50 экспертных. Всегда фильтруй и курируй перед масштабированием.
Заблуждение: QLoRA всегда лучше LoRA из-за экономии памяти
QLoRA экономит 33% памяти сверх LoRA, но на 39% медленнее в обучении и теряет 5-10% качества. Если модель помещается в VRAM с LoRA -- используй LoRA. QLoRA оправдан только при реальном дефиците памяти (7B на RTX 4090 или 70B на single A100).
Interview Questions¶
Q: Когда выбрать full fine-tuning вместо LoRA/QLoRA?
Red flag: "Full fine-tuning устарел, всегда используйте LoRA"
Strong answer: "Full fine-tuning оправдан при deep domain shift >30% (медицина, юриспруденция, новый язык), где LoRA теряет 5-10% качества на специализированных бенчмарках. Также full FT необходим для pre-training и continued pre-training. Для adaptation задач (стиль, формат, tone) LoRA даёт 90-99% качества при 10-20x экономии ресурсов."
Q: Объясните разницу между DPO и RLHF. Когда что использовать?
Red flag: "DPO и RLHF делают одно и то же, просто DPO новее"
Strong answer: "RLHF обучает отдельную reward model и оптимизирует LLM через PPO -- требует 3 модели в памяти, нестабилен. DPO переформулирует задачу как binary classification на preference pairs, без reward model. DPO стабильнее, проще, дешевле. Но RLHF лучше для сложного alignment с итеративным reward signal. На практике: DPO для прототипов и простых задач, RLHF для frontier-моделей."
Q: Как предотвратить catastrophic forgetting при fine-tuning?
Red flag: "Используйте LoRA, он замораживает параметры и forgetting невозможен"
Strong answer: "LoRA снижает риск, но не устраняет. Лучшие стратегии: (1) mixed training с 6.2% interleaved data из предыдущих задач -- zero forgetting. (2) FIP (Functionally Invariant Paths) -- лучше LoRA по retention. (3) Elastic Weight Consolidation. (4) Низкий learning rate (1e-4) и LoRA на все linear layers. Регулярная проверка на held-out general benchmarks обязательна."
Q: Сколько данных нужно для fine-tuning LLM?
Red flag: "Чем больше, тем лучше -- миллионы примеров"
Strong answer: "Минимум 50 качественных примеров для базовых задач. Типичный объём -- десятки тысяч. Ключевой принцип: quality > quantity. Каждое удвоение данных даёт линейный прирост, но только для чистых данных. 50 экспертных примеров часто бьют 10K зашумлённых. Pipeline: собрать -> разметить -> отфильтровать по качеству -> аугментировать -> обучить -> оценить на held-out set."
See Also¶
- LoRA Variants -- DoRA, AdaLoRA, QA-LoRA и другие PEFT варианты
- Quantization -- квантизация как complementary к QLoRA
- Alignment Methods -- RLHF, DPO, Constitutional AI подробнее
- Distributed Training -- FSDP vs DeepSpeed для full fine-tuning
- Inference Engines -- vLLM PEFT serving для LoRA adapters в production
Sources¶
- Zylos Research — "LLM Fine-tuning Techniques 2026" (January 13, 2026)
- Hugging Face TRL Documentation
- ArXiv — "Catastrophic Forgetting in LLMs" (2308.08747, 2504.01241)