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.

Annonces

  1. Utilisation des blocs-notes Google Colab pour affiner la diffusion stable
  2. Réglage fin de la diffusion stable à l’aide de l’inversion textuelle localement

Couvrons-les un par un

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.

  1. Ouvrez ce bloc-notes Google Colab et suivez les instructions du bloc-notes pour l’exécuter.
  2. Ensuite, ouvrez le cahier d’inférence et exécutez toutes les cellules.Annonces

 

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

Annonces

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 »)

 

Retour en haut