Adaptation de faible rang pour les concepts d'effacement des modèles de diffusion.
Le référentiel original: effacer les concepts des modèles de diffusion
et la page du projet: https://erasing.baulab.info/
(Non seulement pour l'effacement des concepts, mais aussi les souligner ou les échanger en concevant des invites et en poids de Lora. Voir ConceptMod pour plus de détails)
conda create -n leco python=3.10
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118
pip install xformers
pip install -r requirements.txtVous avez au moins besoin de 8 Go de Vram.
python ./train_lora.py --config_file " ./examples/config.yaml " config.yaml :
prompts_file : " ./prompts.yaml "
pretrained_model :
name_or_path : " stabilityai/stable-diffusion-2-1 " # you can also use .ckpt or .safetensors models
v2 : true # true if model is v2.x
v_pred : true # true if model uses v-prediction
network :
type : " lierla " # or "c3lier"
rank : 4
alpha : 1.0
train :
precision : " bfloat16 "
noise_scheduler : " ddim " # or "ddpm", "lms", "euler_a"
iterations : 500
lr : 1e-4
optimizer : " AdamW "
lr_scheduler : " constant "
save :
name : " van_gogh "
path : " ./output "
per_steps : 200
precision : " bfloat16 "
logging :
use_wandb : false
verbose : false
other :
use_xformers : true prompts.yaml :
- target : " van gogh " # what word for erasing the positive concept from
positive : " van gogh " # concept to erase
unconditional : " " # word to take the difference from the positive concept
neutral : " " # starting point for conditioning the target
action : " erase " # erase or enhance
guidance_scale : 1.0
resolution : 512
dynamic_resolution : false
batch_size : 2Voir l'exemple de configuration pour plus de détails.
Remarque: vous pouvez utiliser Float16 mais il est instable et non recommandé. Veuillez utiliser BFLOAT16 ou Float32.
Vous pouvez utiliser les poids pré-entraînés sur WebUI de Automatic1111.
? HuggingFace: https://huggingface.co/p1atdev/leco
Résultats de oil painting of van gogh by himself :

oil painting of van gogh by himself
Steps : 20, Sampler: Euler a, CFG scale: 7, Seed: 3870472781, Size: 512x512, Model hash: cc6cb27103, Model: v1-5-pruned-emaonly, Clip skip: 2, AddNet Enabled: True, AddNet Module 1: LoRA, AddNet Model 1: van_gogh_4_last(db68853d039b), AddNet Weight A 1: -1.0, AddNet Weight B 1: -1.0, Script: X/Y/Z plot, X Type: AddNet Weight 1, X Values: "-1, 0, 1", Version: v1.3.0 Résultats de painting of scenery by monet :

painting of scenery by monet
Steps : 20, Sampler: Euler a, CFG scale: 7, Seed: 1284787312, Size: 512x512, Model hash: cc6cb27103, Model: v1-5-pruned-emaonly, Clip skip: 2, AddNet Enabled: True, AddNet Module 1: LoRA, AddNet Model 1: van_gogh_4_last(db68853d039b), AddNet Weight A 1: -1.0, AddNet Weight B 1: -1.0, Script: X/Y/Z plot, X Type: AddNet Weight 1, X Values: "-1, 0, 1", Version: v1.3.0 Résultats de mona lisa with jewelry :

mona lisa with jewelry
Steps : 20, Sampler: Euler a, CFG scale: 7, Seed: 3630495347, Size: 512x512, Model hash: 832eb50c0c, Model: v2-1_768-ema-pruned, Clip skip: 2, AddNet Enabled: True, AddNet Module 1: LoRA, AddNet Model 1: mona_lisa2_last(393beb35c4b1), AddNet Weight A 1: -1.0, AddNet Weight B 1: -1.0, Script: X/Y/Z plot, X Type: AddNet Weight 1, X Values: "-1, 0, 1", Version: v1.3.0 Résultats de photo of a cute cat :

photo of a cute cat
Steps : 20, Sampler: Euler a, CFG scale: 7, Seed: 900866192, Size: 512x512, Model hash: 832eb50c0c, Model: v2-1_768-ema-pruned, Clip skip: 2, AddNet Enabled: True, AddNet Module 1: LoRA, AddNet Model 1: mona_lisa2_last(393beb35c4b1), AddNet Weight A 1: -1.0, AddNet Weight B 1: -1.0, Script: X/Y/Z plot, X Type: AddNet Weight 1, X Values: "-1, 0, 1", Version: v1.3.0Les oreilles de chat seront attachées de force lorsque vous utilisez avec 1,0 ~ 3,0 poids.
Si -1,0 ~ -3.0, les oreilles de chat n'apparaîtront jamais.
Paramètres de formation: voir les configurations.

masterpiece, best quality, exceptional, best aesthetic, anime, 1girl, school uniform, upper body, smile
Negative prompt : worst quality, low quality, bad aesthetic, oldest, bad anatomy, bad hands, text, error, missing fingers, extra digit, fewer digits, cropped, jpeg artifacts, signature, watermark, username, blurry
Steps : 20, Sampler: Euler a, CFG scale: 7, Seed: 4103955758, Size: 512x512, Model hash: d38e779546, Model: wd-beta3-base-fp16, Clip skip: 2, Script: X/Y/Z plot, X Type: AddNet Weight 1, X Values: "0, 2, 3, 4", Version: v1.3.0Paramètres de formation: voir les configurations.
Avec "Real Life, Instagram":

real life, instagram, masterpiece, best quality, exceptional, best aesthetic, 1girl, cat ears, blue hair, school uniform, upper body
Negative prompt : worst quality, low quality, bad aesthetic, oldest, bad anatomy, bad hands, text, error, missing fingers, extra digit, fewer digits, cropped, jpeg artifacts, signature, watermark, username, blurry
Steps : 20, Sampler: Euler a, CFG scale: 7, Seed: 757542759, Size: 768x768, Model hash: d38e779546, Model: wd-beta3-base-fp16, Clip skip: 2, AddNet Enabled: True, AddNet Module 1: LoRA, AddNet Model 1: unreal_6_many_prompts_200steps(fff5917285da), AddNet Weight A 1: -1.0, AddNet Weight B 1: -1.0, Script: X/Y/Z plot, X Type: AddNet Weight 1, X Values: "-1, 0, 1", Version: v1.3.0Sans "vraie vie, Instagram":

masterpiece, best quality, exceptional, best aesthetic,, 1girl, aqua eyes, baseball cap, blonde hair, closed mouth, earrings, green background, hat, hoop earrings, jewelry, looking at viewer, shirt, short hair, simple background, solo, upper body, yellow shirt,
Negative prompt : worst quality, low quality, bad aesthetic, oldest, bad anatomy, bad hands, text, error, missing fingers, extra digit, fewer digits, cropped, jpeg artifacts, signature, watermark, username, blurry
Steps : 20, Sampler: Euler a, CFG scale: 7, Seed: 2867636749, Size: 768x768, Model hash: d38e779546, Model: wd-beta3-base-fp16, Clip skip: 2, AddNet Enabled: True, AddNet Module 1: LoRA, AddNet Model 1: unreal_6_many_prompts_200steps(fff5917285da), AddNet Weight A 1: -1.0, AddNet Weight B 1: -1.0, Script: X/Y/Z plot, X Type: AddNet Weight 1, X Values: "-1, 0, 1", Version: v1.3.0 Je suis profondément inspiré et mon travail repose sur les efforts exceptionnels des projets suivants. Je veux exprimer ma profonde gratitude à ces projets et à leurs développeurs:
https://github.com/rohitgandikota/erasing: effacer les concepts des modèles de diffusion
https://github.com/cloneofsimo/lora: adaptation de faible rang pour la diffusion de texte rapide à la diffusion
https://github.com/kohya-ss/sd-scripts: formation, génération et utilité pour une diffusion stable
https://github.com/ntc-ai/conceptmod: modifier les concepts des modèles de diffusion à l'aide d'un DSL