Les diffuseurs Hugging Face peuvent maintenant charger correctement LoRA

Les diffuseurs Hugging Face chargent LoRA correctement.

Utilisation de la fonction de patching Monkey-Patching la plus récente de Diffusers pour charger LoRA produit exactement le même résultat comparé à A1111

Téléchargez le code le plus récent du référentiel de code Diffusers de Hugging Face et découvrez que le code le plus récent mis à jour concernant le chargement de LoRA est mis à jour et peut maintenant effectuer le chargement de LoRA en Monkey-Patching.

Pour installer la dernière version de Diffusers :

pip install -U git+https://github.com/huggingface/diffusers.git@main

La fonction de chargement de LoRA générait des résultats légèrement défectueux hier, selon mes tests. Cet article explique comment utiliser le dernier chargeur LoRA du package Diffusers.

Charger LoRA et mettre à jour le poids du modèle Stable Diffusion

Cela fait un moment que les programmeurs utilisant Diffusers ne peuvent pas charger LoRA facilement. Pour charger LoRA dans un modèle de point de contrôle et obtenir le même résultat que le Webui Stable Diffusion de A1111, nous devons utiliser du code personnalisé supplémentaire pour charger les poids, comme je l’ai fourni dans cet article.

Améliorer le package Diffusers pour une génération d’images de haute qualité

Surmonter les limitations de taille de jeton, le chargement de modèle personnalisé, le support de LoRa, le support d’inversion textuelle et plus encore

towardsdatascience.com

La solution proposée dans cet article fonctionne bien et rapidement, mais nécessite une gestion supplémentaire sur le poids alpha de LoRA. Nous devons créer une variable pour se souvenir du poids alpha actuel de LoRA. Car le code de chargement de LoRA ajoute simplement la matrice A et la matrice B de LoRA ensemble.

Ensuite, fusionnez avec le poids principal du modèle de point de contrôle W.

Pour supprimer les poids de LoRA, nous aurons besoin d’un négatif -α pour les supprimer, ou recréer le pipeline.

La façon de chargement de LoRA par Monkey-Patching

Une autre façon d’utiliser LoRA consiste à patcher le code qui exécute le processus de propagation du module et à apporter les poids de LoRA lors du calcul de l’incorporation de texte et du score d’attention.

Et c’est ainsi que la classe LoraLoaderMixin de Diffusers aborde le chargement de LoRA. L’avantage de cette approche est qu’aucun poids du modèle n’est mis à jour, nous pouvons facilement réinitialiser LoRA et fournir un nouveau α pour définir le poids de LoRA.

We will continue to update IPGirl; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

AI

Une qualité inégale des parcs mise en évidence grâce aux médias sociaux et à l'apprentissage automatique

L'étude utilise les médias sociaux et l'apprentissage automatique pour mettre en évidence les injustices environnemen...

Science des données

Utiliser les données pour écrire des chansons pour le progrès.

L'aînée Ananya Gurumurthy ajoute ses talents musicaux à ses études en mathématiques et en informatique pour promouvoi...

Actualités sur l'IA

'AI Doctor' prédit la réadmission à l'hôpital et d'autres résultats de santé.

Les chercheurs ont inventé un algorithme d'intelligence artificielle pour prédire les résultats de santé des patients...

AI

La recherche de Google DeepMind explore le phénomène énigmatique du grokking dans les réseaux neuronaux révéler l'interaction entre la mémorisation et la généralisation.

La théorie traditionnelle de l’apprentissage et de la généralisation des réseaux neuronaux est mise à l’é...

AI

Des chercheurs de Stanford proposent EVAPORATE une nouvelle approche d'IA qui réduit les coûts d'inférence des modèles de langage de 110 fois.

Les modèles de langage grand format font constamment la une de nos jours. Avec leurs capacités extraordinaires et leu...