Partage de technologie

Enregistrements des pièges lors de la reproduction de projets liés à StableDiffusion

2024-07-11

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

J'étudie les diagrammes vincentiens depuis un certain temps, et il existe de nombreux articles reproduits. Ce blog enregistre principalement les pièges dans lesquels je suis tombé.

Actuellement, les projets de mise en œuvre des diagrammes vincentiens sont principalement divisés en deux catégories :

1. Implémentation basée sur le dossier de projet original de Stable-diffusion

Adresse originale du projet :https://github.com/Stability-AI/stablediffusion

Les codes de certains articles sont développés sur la base de ce projet original. Il est peu probable que nous créions un nouvel environnement virtuel pour chaque projet, nous exécuterons donc inévitablement plusieurs projets sur le même environnement. Cependant, l'environnement de Python n'est pas particulièrement convivial et les différentes versions du même package présenteront également des différences. Certains problèmes surviennent donc souvent.

Prenons comme exemple ma précédente reproduction de Vico. Lorsque j'ai entraîné le modèle pour l'inférence, cela m'a donné une erreur :

Il indique qu'il ne peut pas télécharger le modèle depuis Internet, mais je l'ai clairement configuré sur un chemin local dans le code du projet, il est donc peu probable que ce problème se reproduise. Ensuite, j'ai regardé le traçage des erreurs et j'ai découvert que lorsqu'il était en cours d'exécution, il exécutait en fait le code Dreambooth dans le même dossier. À ce moment-là, je pensais que c'était parce que le fichier avait le même nom et que le système le lisait automatiquement de manière séquentielle. lors de l'obtention du chemin de dépendance. Ensuite, j'imprime le chemin du système :

Après avoir supprimé tout ce qui concernait Dreambooth, cela ne fonctionnait toujours pas. Après réflexion, il doit s'agir d'un problème environnemental. Plus tard, j'ai découvert que c'était parce que le projet local ldm n'était pas installé et que l'environnement utilisait toujours le ldm précédemment installé. En fait, la solution est très simple, il vous suffit d'exécuter pip install -e.