Ajustez la diffusion stable sur vos images à l’aide de l’inversion textuelle
Dans cet article, nous verrons comment affiner le modèle d’IA du texte à l’image, Stable Diffusion sur nos propres images.
Un réglage fin avec inversion textuelle peut être réalisé avec aussi peu que 3 à 5 exemples d’images.
Nous couvrirons deux façons de le faire dans cet article.
- Utilisation des blocs-notes Google Colab pour affiner la diffusion stable
- Réglage fin de la diffusion stable à l’aide de l’inversion textuelle localement
Couvrons-les un par un
Table des matières
Utilisation des blocs-notes Google Colab pour affiner la diffusion stable
Le moyen le plus simple est bien sûr Google Colab Notebooks. Ils peuvent être exécutés dans votre navigateur et vous avez besoin de tout matériel spécial comme les GPU.
- Ouvrez ce bloc-notes Google Colab et suivez les instructions du bloc-notes pour l’exécuter.
- Ensuite, ouvrez le cahier d’inférence et exécutez toutes les cellules.
Réglage fin de la diffusion stable à l’aide de l’inversion textuelle localement
Une autre façon d’affiner la diffusion stable sur vos images consiste à utiliser votre matériel.
Pour cela, vous avez besoin soit d’une machine compatible GPU localement, soit d’une machine virtuelle compatible GPU dans le cloud.
Vous aurez également besoin d’avoir Python 3 ou supérieur installé et de connaître votre chemin autour de la ligne de commande.
Voici les étapes :
Installez les dépendances Python en exécutant cette commande
pip installer des diffuseurs [formation] accélérer les transformateurs
Ensuite, configurez l’environnement HuggingFace Accelerate en exécutant la commande ci-dessous
accélérer la configuration
Télécharger les poids de diffusion stable
Tout d’abord, visitez la page Stable Diffusion sur HuggingFace pour accepter la licence
Pour la partie suivante, vous avez besoin du jeton d’accès HuggingFace
Ensuite, authentifiez-vous avec votre jeton en exécutant la commande ci-dessous
connexion huggingface-cli
Le réglage fin peut être lancé à l’aide de la commande ci-dessous
export MODEL_NAME=”CompVis/stable-diffusion-v1-4″
export DATA_DIR=”chemin-vers-répertoire-contenant-images”
accélérer le lancement textual_inversion.py \
–pretrained_model_name_or_path=$MODEL_NAME –use_auth_token \
–train_data_dir=$DATA_DIR \
–learnable_property=”object” \
–placeholder_token=”<cat-toy>” –initializer_token=”toy” \
–resolution=512 \
– train_batch_size=1 \
–gradient_accumulation_steps=4 \
–max_train_steps=3000 \
–learning_rate=5.0e-04 –scale_lr \
–lr_scheduler=”constant” \
–lr_warmup_steps=0 \
–output_dir=”textual_inversion_cat”
Pour générer des images avec votre nouveau modèle affiné, exécutez la commande ci-dessous
depuis la torche importez
la diffusion automatique depuis les diffuseurs importez StableDiffusionPipeline
model_id = « chemin vers votre modèle formé »
pipe = StableDiffusionPipeline.from_pretrained(model_id,torch_dtype=torch.float16).to(« cuda »)
prompt = « Un sac à dos <cat-toy> »
avec autocast(« cuda ») :
image = pipe(prompt, num_inference_steps=50, guidance_scale=7.5).images[0]
image.save(« chat-sac-a-dos.png »)