
Inspectez les fichiers LORA pour les informations méta-info et l'analyse quantitative des poids LORA.
safetensors sont pris en charge (souhaitent prendre en charge tous les fichiers LORA)Remarque Il s'agit d'un travail en cours et non destiné à l'utilisation de la production. NOTE
Envisagez d'utiliser la nouvelle interface Web Lora Inspecteur pour une représentation GUI.
Clone ce dépôt ou téléchargez le fichier de script Python.
Nécessite des dépendances:
torch
safetensors
tqdm
Peut les installer l'un des éléments suivants:
venv ). RECOMMANDÉpip install safetensors tqdm (voir Démarrer pour des instructions sur la façon d'installer Pytorch) $ python lora-inspector.py --help
usage: lora-inspector.py [-h] [-s] [-w] [-t] [-d] lora_file_or_dir
positional arguments:
lora_file_or_dir Directory containing the lora files
options:
-h, --help show this help message and exit
-s, --save_meta Should we save the metadata to a file ?
-w, --weights Show the average magnitude and strength of the weights
-t, --tags Show the most common tags in the training set
-d, --dataset Show the dataset metadata including directory names and number of imagesVous pouvez ajouter un répertoire ou un fichier:
$ python lora-inspector.py /mnt/900/training/sets/landscape-2023-11-06-200718-e4d7120b -w
/mnt/900/training/sets/landscape-2023-11-06-200718-e4d7120b/landscape-2023-11-06-200718-e4d7120b-000015.safetensors
Date: 2023-11-06T20:16:34 Title: landscape
License: CreativeML Open RAIL-M Author: rockerBOO
Description: High quality landscape photos
Resolution: 512x512 Architecture: stable-diffusion-v1/lora
Network Dim/Rank: 16.0 Alpha: 8.0 Dropout: 0.3 dtype: torch.float32
Module: networks.lora : { ' block_dims ' : ' 4,4,4,4,4,4,4,4,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 ' , ' block_alphas ' : ' 16,16,16,16,16,16,16,16,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 ' , ' block_dropout ' : ' 0.01, 0.010620912260804992, 0.01248099020159499, 0.015572268683063176, 0.01988151037617019, 0.02539026244641935, 0.032074935571726845, 0.03990690495552037, 0.04885263290251277, 0.058873812432261884, 0.0699275313155418, 0.08196645583109653, 0.09493903345590124, 0.10878971362098, 0.12345918558747097, 0.13888463242431537, 0.155, 0.17173627983648962, 0.18902180461412393, 0.20678255506208312, 0.22494247692026895, 0.2434238066153228, 0.26214740425618505, 0.2810330925232585 ' , ' dropout ' : 0.3}
Learning Rate (LR): 2e-06 UNet LR: 1.0 TE LR: 1.0
Optimizer: prodigyopt.prodigy.Prodigy(weight_decay=0.1,betas=(0.9, 0.9999),d_coef=1.5,use_bias_correction=True)
Scheduler: cosine Warmup steps: 0
Epoch: 15 Batches per epoch: 57 Gradient accumulation steps: 24
Train images: 57 Regularization images: 0
Noise offset: 0.05 Adaptive noise scale: 0.01 IP noise gamma: 0.1 Multires noise discount: 0.3
Min SNR gamma: 5.0 Zero terminal SNR: True Debiased Estimation: True
UNet weight average magnitude: 0.7865518983141094
UNet weight average strength: 0.00995593195090544
No Text Encoder found in this LoRA
----------------------
/mnt/900/training/sets/landscape-2023-11-06-200718-e4d7120b/landscape-2023-11-06-200718-e4d7120b.safetensors
Date: 2023-11-06T20:27:12 Title: landscape
License: CreativeML Open RAIL-M Author: rockerBOO
Description: High quality landscape photos
Resolution: 512x512 Architecture: stable-diffusion-v1/lora
Network Dim/Rank: 16.0 Alpha: 8.0 Dropout: 0.3 dtype: torch.float32
Module: networks.lora : { ' block_dims ' : ' 4,4,4,4,4,4,4,4,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 ' , ' block_alphas ' : ' 16,16,16,16,16,16,16,16,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 ' , ' block_dropout ' : ' 0.01, 0.010620912260804992, 0.01248099020159499, 0.015572268683063176, 0.01988151037617019, 0.02539026244641935, 0.032074935571726845, 0.03990690495552037, 0.04885263290251277, 0.058873812432261884, 0.0699275313155418, 0.08196645583109653, 0.09493903345590124, 0.10878971362098, 0.12345918558747097, 0.13888463242431537, 0.155, 0.17173627983648962, 0.18902180461412393, 0.20678255506208312, 0.22494247692026895, 0.2434238066153228, 0.26214740425618505, 0.2810330925232585 ' , ' dropout ' : 0.3}
Learning Rate (LR): 2e-06 UNet LR: 1.0 TE LR: 1.0
Optimizer: prodigyopt.prodigy.Prodigy(weight_decay=0.1,betas=(0.9, 0.9999),d_coef=1.5,use_bias_correction=True)
Scheduler: cosine Warmup steps: 0
Epoch: 30 Batches per epoch: 57 Gradient accumulation steps: 24
Train images: 57 Regularization images: 0
Noise offset: 0.05 Adaptive noise scale: 0.01 IP noise gamma: 0.1 Multires noise discount: 0.3
Min SNR gamma: 5.0 Zero terminal SNR: True Debiased Estimation: True
UNet weight average magnitude: 0.8033398082829257
UNet weight average strength: 0.010114916750103732
No Text Encoder found in this LoRA
----------------------$ python lora-inspector.py /mnt/900/lora/testing/landscape-2023-11-06-200718-e4d7120b.safetensors
/mnt/900/lora/testing/landscape-2023-11-06-200718-e4d7120b.safetensors
Date: 2023-11-06T20:27:12 Title: landscape
License: CreativeML Open RAIL-M Author: rockerBOO
Description: High quality landscape photos
Resolution: 512x512 Architecture: stable-diffusion-v1/lora
Network Dim/Rank: 16.0 Alpha: 8.0 Dropout: 0.3 dtype: torch.float32
Module: networks.lora : { ' block_dims ' : ' 4,4,4,4,4,4,4,4,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 ' , ' block_alphas ' : ' 16,16,16,16,16,16,16,16,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 ' , ' block_dropout ' : ' 0.01, 0.010620912260804992, 0.01248099020159499, 0.015572268683063176, 0.01988151037617019, 0.02539026244641935, 0.032074935571726845, 0.03990690495552037, 0.04885263290251277, 0.058873812432261884, 0.0699275313155418, 0.08196645583109653, 0.09493903345590124, 0.10878971362098, 0.12345918558747097, 0.13888463242431537, 0.155, 0.17173627983648962, 0.18902180461412393, 0.20678255506208312, 0.22494247692026895, 0.2434238066153228, 0.26214740425618505, 0.2810330925232585 ' , ' dropout ' : 0.3}
Learning Rate (LR): 2e-06 UNet LR: 1.0 TE LR: 1.0
Optimizer: prodigyopt.prodigy.Prodigy(weight_decay=0.1,betas=(0.9, 0.9999),d_coef=1.5,use_bias_correction=True)
Scheduler: cosine Warmup steps: 0
Epoch: 30 Batches per epoch: 57 Gradient accumulation steps: 24
Train images: 57 Regularization images: 0
Noise offset: 0.05 Adaptive noise scale: 0.01 IP noise gamma: 0.1 Multires noise discount: 0.3
Min SNR gamma: 5.0 Zero terminal SNR: True Debiased Estimation: True
UNet weight average magnitude: 0.8033398082829257
UNet weight average strength: 0.010114916750103732
No Text Encoder found in this LoRA
---------------------- Nous avons également un soutien à la sauvegarde de la méta qui est extraite et convertie des chaînes. Nous pouvons ensuite les enregistrer dans un fichier JSON. Ceux-ci sauveront les métadonnées dans meta/alorafile.safetensors-{session_id}.json dans le répertoire de travail actuel.
$ python lora-inspector.py ~ /loras/alorafile.safetensors --save_meta$ python lora-inspector.py /mnt/900/training/cyberpunk-anime-21-min-snr/unet-1.15-te-1.15-noise-0.1-steps--linear-DAdaptation-networks.lora/last.safetensors --save_meta
/mnt/900/training/cyberpunk-anime-21-min-snr/unet-1.15-te-1.15-noise-0.1-steps--linear-DAdaptation-networks.lora/last.safetensors
train images: 1005 regularization images: 32000
learning rate: 1.15 unet: 1.15 text encoder: 1.15
epoch: 1 batches: 2025
optimizer: dadaptation.dadapt_adam.DAdaptAdam lr scheduler: linear
network dim/rank: 8.0 alpha: 4.0 module: networks.lora
----------------------Trouvez l'ampleur moyenne et la résistance moyenne de vos poids. Comparez-les avec d'autres loras pour voir à quel point vos poids sont puissants ou pas aussi puissants. Remarque Les poids indiqués ne sont pas concluants à une bonne valeur. Ils sont un exemple initial.
$ python lora-inspector.py /mnt/900/lora/studioGhibliStyle_offset.safetensors -w
UNet weight average magnitude: 4.299801171795097
UNet weight average strength: 0.01127891692482733
Text Encoder weight average magnitude: 3.128134997225176
Text Encoder weight average strength: 0.00769676965767913Montre la fréquence d'une balise (mots séparés par des virgules). Les mots déclencheurs sont généralement les plus fréquents, car ils utiliseraient ce mot sur tout l'ensemble de données de formation.
$ python lora-inspector.py -t /mnt/900/lora/booscapes.safetensors
...
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Tags
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
4k photo” 23
spectacular mountains 17
award winning nature photo 16
ryan dyar 14
image credit nasa nat geo 11
sunset in a valley 11
garden 10
british columbia 10
dramatic autumn landscape 10
autumn mountains 10
an amazing landscape image 10
austria 9
nature scenery 9
pristine water 9
boreal forest 9
scenic view of river 9
alpes 9
mythical floral hills 8
misty environment 8
a photo of a lake on a sunny day 8
majestic beautiful world 8
breathtaking stars 8
lush valley 7
dramatic scenery 7
solar storm 7
siberia 7
cosmic skies 7
dolomites 7
oregon 6
landscape photography 4k 6
very long spires 6
beautiful forests and trees 6
wildscapes 6
mountain behind meadow 6
colorful wildflowers 6
photo of green river 6
beautiful night sky 6
switzerland 6
natural dynamic range color 6
middle earth 6
jessica rossier color scheme 6
arizona 6
enchanting and otherworldly 6
Une vue assez basique de l'ensemble de données avec les répertoires et le nombre d'images.
$ python lora-inspector.py -d /mnt/900/lora/booscapes.safetensors
Dataset dirs: 2
[source] 50 images
[p7] 4 images
Epoch: Une époque voit l'ensemble de données une fois
Lotes par époque: combien de lots par chaque époque (n'inclut pas les étapes d'accumulation de gradient)
Étapes d'accumulation de gradient: étapes d'accumulation de gradient
Images de train: nombre d'images d'entraînement que vous avez
Images de régularisation: Nombre d'images de régularisation
Planificateur: Le planificateur de taux d'apprentissage (cosinus, cosinement_with_restart, linéaire, constant,…)
Optimiseur: The Optimizer (Adam, Prodigy, Dadaptation, Lion,…)
Réseau Dim / Rank: Le rang du réseau LORA
Alpha: l'alpha au rang du réseau Lora
Module: le module Python qui a créé le réseau
Offset de bruit: option de décalage de bruit
Échelle de bruit adaptative: échelle de bruit adaptative
Bruit IP Gamma: Perturbation d'entrée Bruit gamma La perturbation d'entrée réduit le biais d'exposition dans les modèles de diffusion
… Nous proposons une régularisation d'entraînement très simple mais efficace, consistant à perturber les échantillons de vérité au sol pour simuler les erreurs de prédiction du temps d'inférence.
Rétume du bruit Multires: Discount Multires Noise (voir Multi-résolution Bruit pour la formation du modèle de diffusion)
Échelle de bruit Multires: échelle de bruit Multires
Maîtritude moyenne: carré chaque poids, additionnez-les, obtenez la racine carrée
Force moyenne: abs à chaque poids, additionnez-les, obtenez la moyenne
Perte d'estimation débiasée: Debias la formation des modèles de diffusion
Script simple pour mettre à jour vos valeurs de métadonnées. Utile pour modifier ss_output_name pour les applications qui utilisent cette valeur pour définir un bon nom pour cela.
Pour voir vos valeurs de métadonnées actuelles, enregistrez les métadonnées à l'aide de lora-inspector.py --save_meta ... et inspectez le fichier JSON.
$ python update_metadata.py --help
usage: update_metadata.py [-h] [--key KEY] [--value VALUE] safetensors_file
positional arguments:
safetensors_file
options:
-h, --help show this help message and exit
--key KEY Key to change in the metadata
--value VALUE Value to set to the metadata
$ python update_metadata.py /mnt/900/lora/testing/armored-core-2023-08-02-173642-ddb4785e.safetensors --key ss_output_name --value mechBOO_v2
Updated ss_output_name with mechBOO_v2
Saved to /mnt/900/lora/testing/armored-core-2023-08-02-173642-ddb4785e.safetensors
--weights qui vous permet de voir l'ampleur et la force moyennes de vos poids Lora Unet et de l'encodeur de texte. Formaté à l'aide black .
Que voulez-vous voir d'autre? Faire un problème ou un PR.
Utiliser des cas / idées dans lesquels cela peut développer: