Qu'est-ce que LoRA en AI ?

LoRA signifie Low-Rank Adaptation. C'est une méthode de fine-tuning efficace en termes de paramètres qui conserve les poids d'un modèle préentraîné gelés et apprend des matrices de faible rang beaucoup plus petites pour des couches sélectionnées. Ces mises à jour apprises peuvent être enregistrées sous forme d'adaptateur et appliquées ultérieurement au modèle de base compatible.

Deux petites matrices de faible rang qui orientent une matrice de poids neuronaux figée bien plus grande.
La matrice préentraînée de grande taille reste gelée ; le chemin d'entraînement factorise sa mise à jour à travers un rang bien plus petit.

Cette page traite de l'adaptation des modèles AI. LoRa, avec un « a » minuscule, désigne aussi une technologie radio longue portée. Elle n'a aucun rapport avec les adaptateurs LoRA destinés aux modèles de langage ou de génération d'images.

L'idée principale, sans la brume algébrique

Un finetuning complet classique peut modifier une grande partie, voire la totalité, des paramètres d'un modèle. LoRA part du principe que le changement utile à une tâche donnée peut souvent être représenté avec beaucoup moins de degrés de liberté. Au lieu d'apprendre une matrice de mise à jour complète, la méthode exprime la mise à jour comme le produit de deux matrices plus étroites de rang r.

Le poids efficace combine le poids de base figé avec une mise à jour de rang faible à échelle adaptée :

W′ = W + (B × A) · scale

Si le rang choisi est beaucoup plus petit que les dimensions initiales, les matrices A et B contiennent bien moins de paramètres à entraîner qu'une mise à jour complète. Cela réduit la mémoire nécessaire à l'entraînement et produit un artefact d'adaptateur compact. Le modèle de base effectue toujours la majeure partie du travail.

Modèle LoRA, adaptateur LoRA et poids LoRA

Les gens utilisent ces expressions de manière vague, il est donc utile de les séparer :

Un fichier LoRA téléchargé ne contient généralement pas le modèle de base complet. C'est pourquoi une interface vous demande de sélectionner un checkpoint, puis d'appliquer un ou plusieurs LoRAs.

Qu'est-ce qu'un LoRA peut apprendre ?

Dans les modèles de langage, un adaptateur peut spécialiser le comportement pour un domaine, une tâche ou un style d'instruction. Dans les modèles de diffusion, les LoRAs servent couramment à représenter des styles visuels, des personnages, des sujets, des produits, des concepts ou des ajustements de comportement plus fins. Les modules cibles, le rang, le jeu de données et la procédure d'entraînement déterminent ce que l'adaptateur peut exprimer.

LoRA n'est pas une garantie de qualité ou de fidélité. Un adaptateur compact peut surapprendre, entrer en conflit avec sa base, répondre de manière imprévisible à différentes forces ou dépendre des mots déclencheurs et des choix de prétraitement. Considérez la fiche modèle et le contexte d'entraînement comme des métadonnées opérationnelles, et non comme un élément décoratif.

Comment un adaptateur est utilisé pendant l'inférence

Un framework compatible charge la base, lit la configuration de l'adaptateur et applique ses tenseurs aux modules cibles. Certains environnements d'exécution conservent la mise à jour séparément afin de pouvoir l'activer, la pondérer ou la décharger. D'autres peuvent la fusionner dans une copie dérivée destinée au déploiement.

La fusion ne rend pas pour autant l'adaptateur d'origine autonome. Si vous souhaitez ajuster l'intensité, combiner des adaptateurs ou reproduire le fichier de sortie, conservez l'adaptateur non fusionné, la base exacte et la recette. Le guide checkpoint vs. LoRA décrit ces différences de récupération.

LoRA, QLoRA et le finetuning complet

LoRA décrit la mise à jour de faible rang. QLoRA combine l'apprentissage de LoRA avec une base quantifiée et gelée, ainsi que des techniques supplémentaires pour économiser de la mémoire. Le produit final peut toujours être un adaptateur, c'est pourquoi le nom du fichier seul ne révèle pas nécessairement la manière dont il a été entraîné. Consultez LoRA par rapport à QLoRA pour la comparaison au niveau de la méthode.

Le finetuning complet modifie une part bien plus importante du modèle et peut offrir d'autres capacités et compromis opérationnels, mais il produit un état plus volumineux et exige davantage de ressources. Le bon choix dépend de la tâche, du matériel, de l'évaluation et du déploiement, pas de l'idée qu'une méthode serait toujours plus « professionnelle ».

Pourquoi les bibliothèques LoRA deviennent malgré tout volumineuses

Un adaptateur est compact par rapport à sa base, mais les collections grossissent avec les variantes, rangs, époques, intensités, téléchargements en double et multiples familles de bases compatibles. Les checkpoints de base, VAEs, encodeurs, aperçus et sorties d'entraînement dépassent souvent de loin la taille de chaque adaptateur. Un dossier rempli de petits fichiers peut donc dépendre d'un ensemble de modèles beaucoup plus volumineux.

Utilisez le guide pour organiser un modèle de base avec de nombreux adaptateurs et le workflow pratique pour libérer l'espace disque de LoRA sans modifier les poids. L'objectif est une famille cohérente que vous pouvez récupérer, et non le plus petit répertoire possible à tout prix.

Que faut-il archiver avec un LoRA ?

Au minimum, conservez les poids de l'adaptateur, sa configuration et un identifiant précis du modèle de base. Si le modèle de base est privé, modifié localement ou susceptible de disparaître, conservez également ce modèle de base exact. Pour la reproductibilité, conservez les mots-clés pertinents, la configuration d'entraînement, la référence du jeu de données, les termes de licence ou d'utilisation et les sommes de contrôle.

Tensor Archive préserve les familles de tenseurs locales sélectionnées et vérifie la restauration exacte. Il ne recrée pas de base manquante, ne génère pas de métadonnées d'adaptateur ou ne prouve pas que deux architectures ayant des noms similaires sont compatibles.

Références

Gardez l'adaptateur avec sa base exacte.Télécharger gratuitement ↓