Fine-tuning open source LLM (Llama 3.1, Mistral, Qwen 2.5) explose en 2024-2026. Coût a chuté 10x. Permet PME ayant données propriétaires d'avoir un LLM ultra-spécialisé pour 500-5000€. Voici comment + quand le faire vraiment 2026.
TL;DR
- LoRA / QLoRA : techniques modernes, 90 % efficacité full fine-tune à 1-5 % coût.
- Datasets : 500-5000 exemples qualité > 50K exemples bruit.
- Coût total : 200-3000€ entraînement (1x) + hosting 50-500€/mois.
- ROI clair vs RAG quand : style/format spécifique, latence critique, coût LLM élevé.
RAG vs fine-tuning vs prompting
| Besoin | Solution recommandée |
|---|---|
| Knowledge dynamique (docs changent) | RAG |
| Style ou format spécifique | Fine-tuning |
| Domaine vocabulary spécialisé | Fine-tuning |
| Multi-task one-shot | Prompting (avec few-shot) |
| Reduce coût inference | Fine-tuning (model plus petit) |
| Compliance / pas envoyer data dehors | Fine-tuning self-hosted |
| Démarrer rapidement | Prompting + RAG |
Souvent : prompting D1 → RAG D7 → fine-tuning D90 si justifié.
Modèles à fine-tuner 2026
| Model | Tailles | Use case best |
|---|---|---|
| Llama 3.1 | 8B, 70B, 405B | All-purpose strong |
| Mistral 7B / Mixtral | 7B, 8x22B | Fast, efficace |
| Qwen 2.5 | 7B, 14B, 72B | Multilingue (chinois, français bon) |
| Phi-3.5 | 3.8B, 14B | Small + smart |
| DeepSeek | 7B, 67B | Code + math |
| Gemma 3 | 2B, 9B, 27B | Edge / mobile |
Pour PME 2026 : Llama 3.1 8B ou Qwen 2.5 7B = sweet spot performance/coût.
Techniques fine-tuning 2026
Full fine-tuning (à éviter)
- Re-entraîne tous les paramètres
- Coût : 10K-100K€ pour Llama 70B
- Mémoire GPU : 80GB+ (A100 / H100)
- Risque "catastrophic forgetting"
Seulement si vraiment nécessaire (rarement).
LoRA (Low-Rank Adaptation)
- Adapte 0.1-1 % paramètres seulement
- Coût : 200-2000€ pour Llama 8B
- Mémoire : 16-24GB (RTX 4090, A6000)
- Performance : 90-95 % full fine-tune
Standard moderne 2024-2026.
QLoRA (Quantized LoRA)
- Quantization 4-bit + LoRA
- Coût : 100-500€ Llama 8B
- Mémoire : 12-16GB (RTX 3090, 4090)
- Performance : 85-92 % full
- Permet fine-tune Llama 70B sur 1 GPU
Pour budget serré.
Dataset preparation
Format conversation (chat)
`json
{
"messages": [
{"role": "system", "content": "Tu es un expert juridique sénégalais."},
{"role": "user", "content": "Quels documents pour créer SARL?"},
{"role": "assistant", "content": "Pour créer SARL au Sénégal, il faut: 1) statuts signés..."}
]
}
`
Quantité optimale
- Domain adaptation simple : 200-500 exemples
- Style / format spécifique : 500-1500
- Skill nouvelle complexe : 2000-10K
Plus n'est pas mieux. Qualité > quantité.
Sources datasets
- Generated par GPT-4 / Claude (synthetic)
- Logs production (anonymisés)
- Documentation interne (transformée Q&A)
- Reviews / FAQ existants
- Annotations humaines (gold standard)
Pipeline fine-tuning Llama 8B avec LoRA
Étape 1 — environnement
`bash
pip install transformers peft trl bitsandbytes accelerate
`
Étape 2 — load model
`python
from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig
from peft import LoraConfig, get_peft_model
bnb_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_compute_dtype='bfloat16',
)
model = AutoModelForCausalLM.from_pretrained(
'meta-llama/Llama-3.1-8B-Instruct',
quantization_config=bnb_config,
device_map='auto',
)
tokenizer = AutoTokenizer.from_pretrained('meta-llama/Llama-3.1-8B-Instruct')
lora_config = LoraConfig(
r=16, # LoRA rank
lora_alpha=32,
target_modules=['q_proj', 'k_proj', 'v_proj', 'o_proj'],
lora_dropout=0.05,
bias='none',
task_type='CAUSAL_LM',
)
model = get_peft_model(model, lora_config)
`
Étape 3 — train
`python
from trl import SFTTrainer
Besoin d'un site web professionnel ?
Kolonell crée des sites web qui attirent des clients, optimisés pour le marché sénégalais. Devis gratuit en 2 minutes.
from datasets import load_dataset
dataset = load_dataset('json', data_files='train.jsonl', split='train')
trainer = SFTTrainer(
model=model,
tokenizer=tokenizer,
train_dataset=dataset,
args=TrainingArguments(
output_dir='./llama-finetune',
num_train_epochs=3,
per_device_train_batch_size=4,
gradient_accumulation_steps=4,
learning_rate=2e-4,
bf16=True,
save_strategy='epoch',
),
peft_config=lora_config,
max_seq_length=2048,
)
trainer.train()
trainer.save_model()
`
Étape 4 — merge + deploy
`python
# Merge LoRA into base model
model = model.merge_and_unload()
model.save_pretrained('./llama-finetuned-merged')
# Deploy via vLLM, TGI, ou Ollama
`
Hosting fine-tuned model
Option 1 — vLLM self-hosted
`bash
vllm serve ./llama-finetuned-merged --port 8000
`
GPU dédié : 50-300€/mois (RTX 4090 cloud) / 200-1500€ (A100/H100).
Option 2 — Together AI / Replicate / Modal
`
Upload model → endpoint API
Coût : pay-per-use, 0.10-2€/1M tokens
Bon pour MVP, scale automatiquement
`
Option 3 — Ollama local (dev)
`bash
ollama create my-model -f Modelfile
ollama run my-model
`
Eval modèle fine-tuned
`python
# Métriques classiques
- Perplexity sur validation set
- BLEU / ROUGE pour summarization
- Exact match / accuracy pour QA
# Métriques modernes (LLM-as-judge)
- LLM judge sur quality / faithfulness
- A/B test avec base model
- Human eval sur 100 examples
`
Coût total fine-tuning Llama 8B 2026
| Poste | Coût |
|---|---|
| Dataset prep (5K examples) | 0-500€ (selon source) |
| GPU rental train (RunPod/Lambda) | 30-200€ (3-12h H100) |
| Hosting model dédié (mensuel) | 50-500€ |
| Eval + iteration | 100-500€ |
| Total démarrage | 180-1700€ |
vs GPT-4o à $2.50 / 1M tokens output : économie après 100M tokens output ($250 GPT-4 = breakeven).
Erreurs fréquentes
- Dataset too small (< 100 examples) — overfit garanti.
- Dataset noisy — modèle apprend mal.
- Pas eval baseline — pas savoir si fine-tune améliore.
- Ne pas merge LoRA avant déploiement — latence augmentée.
- Hyperparameters mauvais — LR trop haut = catastrophic forgetting.
- Pas de regression test — modèle fine-tuned perd capacités générales.
FAQ
Q : Combien de temps prend train Llama 8B avec LoRA ?
R : 3-12 heures sur 1 H100 ou 12-48h sur RTX 4090, pour 5K examples.
Q : Fine-tune Llama vs GPT-4 fine-tuning API ?
R : OpenAI fine-tuning $25/1M tokens train + 6x cost inference. Llama LoRA + self-host souvent moins cher au scale.
Q : Quand RAG vs fine-tune ?
R : RAG si knowledge change. Fine-tune si style ou skill spécifique. Souvent les deux.
Conclusion
Fine-tuning open source LLM 2026 = accessible PME : 200-2000€ pour Llama 8B avec LoRA. Workflow standard : dataset → LoRA → eval → deploy via vLLM. ROI clair quand style/format/coût matter. Sinon RAG suffit.
Mohamed Bah
Fondateur, Kolonell
Passionné par le digital et l'entrepreneuriat en Afrique, Mohamed accompagne les entreprises sénégalaises dans leur transformation digitale depuis 2020. Fondateur de Kolonell, il croit que chaque PME mérite une présence en ligne professionnelle et accessible.