Skip to content

Fine-tuning et déploiement de modèles

Préface

Les grands modèles sont puissants, mais ils ne comprennent pas votre métier. GPT-4 peut écrire des poèmes et programmer, mais il ne connaît pas la terminologie produit de votre entreprise ni les normes professionnelles de votre secteur. Le fine-tuning (ajustement fin) est le processus qui permet à un grand modèle généraliste d'« apprendre » vos connaissances spécialisées — comme former un érudit généraliste à un poste spécifique pour en faire un expert de votre domaine.

Qu'allez-vous apprendre dans cet article ?

Après avoir étudié ce chapitre, vous obtiendrez :

  • Connaissance du pipeline : maîtriser le pipeline complet de fine-tuning, de la préparation des données à la mise en ligne du modèle
  • Ingénierie des données : comprendre les exigences de format et les normes de qualité des données de fine-tuning
  • Fine-tuning efficace : comprendre les principes et les avantages des techniques de fine-tuning à efficacité paramétrique comme LoRA
  • Compression de modèle : maîtriser comment les techniques de quantification permettent aux grands modèles de fonctionner sur du matériel grand public
  • Pratiques de déploiement : comprendre les architectures courantes de service de modèles et les stratégies de choix
ChapitreContenuConcepts clés
Chapitre 1Pipeline de fine-tuningDonnées → Entraînement → Évaluation → Déploiement
Chapitre 2Données d'entraînementFormat des données, contrôle qualité
Chapitre 3Fine-tuning LoRAAdaptation à faible rang, efficacité paramétrique
Chapitre 4Quantification de modèleFP16, INT8, INT4
Chapitre 5Déploiement de modèleService d'inférence, passerelle API

0. Vue d'ensemble : pourquoi le fine-tuning est-il nécessaire ?

L'entraînement des grands modèles de langage se divise en deux phases : le pré-entraînement et le fine-tuning. Le pré-entraînement consiste à apprendre les capacités linguistiques sur des données générales massives, le fine-tuning consiste à apprendre des compétences spécialisées sur des données de tâches spécifiques.

Pour faire une analogie : le pré-entraînement, c'est comme aller à l'université — apprendre des connaissances générales, savoir un peu de tout ; le fine-tuning, c'est comme la formation à l'embauche — apprendre des compétences professionnelles pour un poste spécifique.

Quand faut-il faire du fine-tuning ?

  • Format de sortie spécifique : nécessité que le modèle produise toujours un format JSON fixe
  • Connaissances de domaine spécialisé : terminologie et normes professionnelles dans les domaines médical, juridique, financier, etc.
  • Transfert de style linguistique : faire répondre le modèle avec un ton et un style spécifiques (comme les scripts de service client)
  • Support de langues rares : améliorer les performances du modèle sur une langue spécifique
  • Optimisation des coûts : remplacer les appels à un grand modèle par un petit modèle fine-tuné pour réduire les coûts d'inférence

1. Pipeline de fine-tuning : le parcours complet des données à la mise en ligne

Le fine-tuning n'est pas « jeter les données au modèle et c'est fini ». C'est un processus d'ingénierie rigoureux, où chaque étape influence le résultat final.

微调流水线演示

点击每个阶段,了解微调的完整流程

🧠
选择基座模型
📊
准备训练数据
⚙️
执行微调训练
📈
评估与测试
🚀
部署上线
🧠 选择基座模型

微调的第一步是选择一个合适的预训练基座模型。基座模型已经在海量数据上学习了通用的语言能力,我们要做的是在此基础上进行"专业化训练"。

1根据任务需求选择模型规模(7B、13B、70B 等)
2考虑开源许可证(Apache 2.0、Llama 许可等)
3评估模型的基础能力是否匹配目标场景
4常见选择:Llama、Qwen、Mistral、DeepSeek 等
示例
model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen2-7B")
1 / 5

Les cinq phases du fine-tuning

  1. Préparation des données : collecter, nettoyer, annoter les données d'entraînement — l'étape la plus chronophage et la plus cruciale
  2. Sélection du modèle : choisir le modèle de base approprié (Base Model), comme Llama 3, Qwen, Mistral
  3. Configuration de l'entraînement : définir les hyperparamètres tels que le taux d'apprentissage, la taille de batch, le nombre d'époques
  4. Exécution de l'entraînement : exécuter l'entraînement sur GPU, surveiller la courbe de loss et les métriques d'évaluation
  5. Évaluation et mise en ligne : évaluer les performances sur l'ensemble de test, puis déployer comme service API après validation
PhaseActions clésPièges courants
Préparation des donnéesNettoyage, déduplication, formatageUne mauvaise qualité de données fait « mal apprendre » le modèle
Sélection du modèleÉvaluer les capacités du modèle de baseModèle trop grand impossible à entraîner, trop petit résultats médiocres
Configuration de l'entraînementAjuster les hyperparamètresTaux d'apprentissage trop élevé causant un oubli catastrophique
Exécution de l'entraînementSurveiller la loss et les métriquesSurapprentissage, non-convergence de l'entraînement
Évaluation et mise en ligneA/B testing, déploiement progressifFuite de l'ensemble de test gonflant artificiellement l'évaluation

2. Données d'entraînement : le plafond de verre du fine-tuning

Il y a un vieux dicton en fine-tuning : « Garbage in, garbage out ». La qualité des données d'entraînement détermine directement le plafond des résultats du fine-tuning. 100 exemples de haute qualité donnent souvent de meilleurs résultats que 10 000 exemples de mauvaise qualité.

训练数据格式演示

切换不同格式,了解微调数据的组织方式

指令跟随

最常见的微调数据格式。每条数据包含一个指令(instruction)、可选的输入(input)和期望的输出(output)。适合训练通用助手类模型。

通用助手ChatGPT 风格最常用
数据样例
"instruction": "请将以下中文翻译成英文"
"input": "人工智能正在改变世界"
"output": "AI is changing the world"
数据质量要点
指令要清晰明确,避免歧义
输出要完整、准确、格式规范
覆盖多种任务类型(翻译、摘要、问答等)
数据量建议:1,000 ~ 50,000 条

Les trois formats courants de données de fine-tuning

  1. Format Instruction : le format le plus utilisé, contenant trois champs : instruction (instruction), input (entrée), output (sortie attendue). Adapté pour entraîner le modèle à suivre des instructions.
  2. Format Chat (dialogue) : sous forme de dialogue multi-tours, contenant une liste de messages avec les rôles system, user, assistant. Adapté pour entraîner des chatbots.
  3. Format Completion (complétion) : simple paire prompt-completion, adapté pour la génération de texte, la complétion de code, etc.
Dimension de qualitéDescriptionMéthode de vérification
ExactitudeLes réponses doivent être correctes et sans erreurRevue humaine, validation par expert
CohérenceStyle de réponse cohérent pour des questions similairesÉchantillonnage et comparaison
DiversitéCouvrir suffisamment de scénarios et de variantesStatistiques sur la distribution des types de questions
DéduplicationÉviter les échantillons en double qui causent du surapprentissageDéduplication textuelle, déduplication sémantique
Volume de donnéesGénéralement 500 à 5000 exemples de haute qualité suffisentCommencer par un petit volume, augmenter progressivement

3. LoRA : obtenir 90 % des résultats avec 1 % des paramètres

Le fine-tuning complet (Full Fine-tuning) nécessite de mettre à jour tous les paramètres du modèle — pour un modèle de 70B de paramètres, cela signifie des centaines de Go de mémoire GPU et une puissance de calcul GPU massive. Pour la plupart des équipes, ce n'est pas réaliste.

LoRA (Low-Rank Adaptation) offre une solution élégante : geler les paramètres du modèle original et n'entraîner qu'un petit ensemble de nouvelles matrices à faible rang. Ces matrices ne représentent généralement que 0,1 % à 1 % des paramètres du modèle original, mais atteignent des résultats proches du fine-tuning complet.

LoRA 低秩适配原理演示

理解 LoRA 如何用极少参数实现高效微调

原始权重 W
4096x4096
16,777,216 参数
冻结不动
+
LoRA 适配器
A
4096x8
x
B
8x4096
65,536 参数
可训练
参数节省比例
节省 99.6% 参数
秩越小 = 参数越少、训练越快秩越大 = 表达力越强、效果越好

L'idée centrale de LoRA

La matrice de poids originale W du modèle est une matrice énorme (par exemple 4096x4096). LoRA ne modifie pas directement W, mais ajoute un « bypass » à côté : W' = W + BA, où B et A sont deux petites matrices (par exemple 4096x8 et 8x4096). Pendant l'entraînement, seuls B et A sont mis à jour, W reste inchangé.

  • Rang (Rank) : plus la valeur r est grande, plus la capacité expressive est forte, mais plus le nombre de paramètres est élevé. Généralement r=8~64 suffit
  • Fusion pour le déploiement : après l'entraînement, BA peut être fusionné dans W, sans surcoût à l'inférence
Méthode de fine-tuningParamètres entraînablesBesoin en mémoire GPUVitesse d'entraînementRésultat
Fine-tuning complet100 %Très élevéLentMeilleur
LoRA0,1 %~1 %FaibleRapideProche du complet
QLoRA0,1 %~1 %Encore plus faibleMoyenLégèrement inférieur à LoRA
Prompt Tuning< 0,01 %Très faibleTrès rapideLimité

4. Quantification de modèle : faire maigrir les grands modèles

Un modèle de 70B de paramètres, stocké en FP32 (flottant 32 bits), nécessite 280 Go de mémoire GPU — impossible à faire tourner sans plusieurs GPU haut de gamme. La technique de quantification (Quantization) compresse le volume du modèle en réduisant la précision numérique, permettant aux grands modèles de fonctionner sur du matériel grand public.

模型量化演示

拖动滑块,直观感受不同精度下的模型体积、速度与质量变化

FP32
32 bit
FP16
16 bit
INT8
8 bit
INT4
4 bit
💾
模型体积
~28 GB (7B 模型)
推理速度
1x (基准)
🎯
输出质量
100% (无损)
🖥️
显存需求
~32 GB
FP32 详解

FP32(32位浮点数)是模型训练时的默认精度。每个参数用 32 位存储,精度最高但体积最大。通常只在训练阶段使用,推理时很少直接使用 FP32。

单个参数存储示意
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
每个参数占用 32 位 = 4 字节
适用场景:模型训练、科研实验、精度敏感的任务

Le compromis central de la quantification

La quantification est essentiellement un compromis précision contre espace. FP32 → FP16 est quasi sans perte, INT8 a une légère perte, INT4 a une baisse de qualité notable mais généralement acceptable. L'essentiel est de trouver le point d'équilibre optimal pour votre scénario.

  • FP16 (demi-précision) : volume divisé par deux, qualité quasi sans perte, choix par défaut pour l'entraînement et l'inférence
  • INT8 (entier 8 bits) : volume encore divisé par deux, perte de qualité très faible, convient à la plupart des scénarios d'inférence
  • INT4 (entier 4 bits) : volume réduit à 1/8 du FP32, perte de qualité modérée, convient aux scénarios avec ressources limitées
PrécisionOctets par paramètreVolume modèle 70BPerte de qualitéScénario applicable
FP324 octets~280 GoAucuneRéférence d'entraînement
FP162 octets~140 GoQuasi aucuneEntraînement et inférence standards
INT81 octet~70 GoTrès faibleInférence en production
INT40,5 octet~35 GoAcceptableAppareils edge, déploiement local

5. Déploiement de modèle : du laboratoire à l'environnement de production

Le modèle est entraîné, quantifié et compressé, la dernière étape est de le déployer comme un service appelable. Le déploiement de modèle n'est pas seulement « faire tourner le modèle », cela implique aussi la gestion de la concurrence, l'équilibrage de charge, le contrôle des coûts et d'autres problèmes d'ingénierie.

模型服务架构演示

点击不同部署方案,对比其特点与适用场景

🌐
API 服务
最常见的在线部署方式
📱
边缘部署
在终端设备上本地运行
📦
批量处理
离线批量推理大量数据
🌐API 服务

将模型封装为 RESTful API 或 gRPC 服务,通过 HTTP 请求调用。适合需要实时响应的在线应用,如聊天机器人、智能客服、内容生成等。是目前最主流的部署方式。

架构流程
客户端请求
负载均衡
推理服务器
GPU 推理
返回结果
响应延迟
100ms - 2s
并发能力
高(可水平扩展)
部署成本
中高(需 GPU 服务器)
运维复杂度
中等
常用工具
vLLMTGITritonFastAPIOllama

Trois solutions de déploiement principales

  1. Fournisseur d'API : utiliser directement les API de fournisseurs comme OpenAI, Anthropic. Zéro opération, facturation au token, adapté à la validation rapide et à l'utilisation à petite et moyenne échelle.
  2. Service d'inférence auto-hébergé : déployer sur ses propres serveurs GPU avec des frameworks comme vLLM, TGI. Coût contrôlable, données ne quittent pas le domaine, adapté aux scénarios avec exigences de confidentialité ou appels à grande échelle.
  3. Inférence Serverless : utiliser des plateformes comme AWS SageMaker, Replicate, facturation à la requête, scaling automatique. Adapté aux scénarios avec trafic fluctuant.
Solution de déploiementModèle de coûtLatenceComplexité d'exploitationScénario applicable
Fournisseur d'APIFacturation au tokenMoyenneZéroPrototypage rapide, petite/moyenne échelle
Déploiement vLLMLocation GPUFaibleÉlevéeGrande échelle, sensibilité confidentialité
ServerlessFacturation à la requêteDémarrage à froid élevéFaibleTrafic fluctuant
Déploiement edgeInvestissement matériel uniqueTrès faibleMoyenneScénarios hors ligne, IoT

Résumé

Le fine-tuning et le déploiement de modèles sont les étapes clés pour transformer un grand modèle d'« outil généraliste » en « assistant spécialisé ». De la préparation des données à la mise en ligne du modèle, chaque étape exige une pensée et des pratiques d'ingénierie.

Récapitulatif des points clés de ce chapitre :

  1. Le fine-tuning est une formation à l'embauche : faire apprendre au modèle généraliste les connaissances et les modèles de comportement d'un domaine spécifique
  2. La qualité des données détermine le plafond : 100 exemples de haute qualité valent mieux que 10 000 exemples de mauvaise qualité
  3. LoRA est le champion de l'efficacité : obtenir des résultats proches du fine-tuning complet avec moins de 1 % des paramètres
  4. La quantification est l'arme du déploiement : la quantification INT4 rend possible l'exécution d'un modèle 70B sur une seule carte
  5. La solution de déploiement dépend du contexte : API pour la validation rapide, auto-hébergement pour la grande échelle, Serverless pour les fluctuations

Lectures complémentaires