diff options
author | AUTOMATIC1111 <16777216c@gmail.com> | 2023-04-29 14:15:01 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-29 14:15:01 +0000 |
commit | 8987764395f72d85776f91512391ccd4688e47bb (patch) | |
tree | 312f61445d8cbffb4de7949dcb0f82fbeb659658 /modules/sd_models.py | |
parent | 31dbec6b761d912ad986727068c2f3cc4d39a23d (diff) | |
parent | fbaf6e4fd897fa1f3e3f747f1d699c240cad76a0 (diff) | |
download | stable-diffusion-webui-gfx803-8987764395f72d85776f91512391ccd4688e47bb.tar.gz stable-diffusion-webui-gfx803-8987764395f72d85776f91512391ccd4688e47bb.tar.bz2 stable-diffusion-webui-gfx803-8987764395f72d85776f91512391ccd4688e47bb.zip |
Merge pull request #9312 from space-nuko/save-merge-recipe
Embed model merge metadata in .safetensors file
Diffstat (limited to 'modules/sd_models.py')
-rw-r--r-- | modules/sd_models.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/modules/sd_models.py b/modules/sd_models.py index 6ea874df..4f7613a1 100644 --- a/modules/sd_models.py +++ b/modules/sd_models.py @@ -52,6 +52,15 @@ class CheckpointInfo: self.ids = [self.hash, self.model_name, self.title, name, f'{name} [{self.hash}]'] + ([self.shorthash, self.sha256, f'{self.name} [{self.shorthash}]'] if self.shorthash else [])
+ self.metadata = {}
+
+ _, ext = os.path.splitext(self.filename)
+ if ext.lower() == ".safetensors":
+ try:
+ self.metadata = read_metadata_from_safetensors(filename)
+ except Exception as e:
+ errors.display(e, f"reading checkpoint metadata: {filename}")
+
def register(self):
checkpoints_list[self.title] = self
for id in self.ids:
@@ -544,4 +553,4 @@ def unload_model_weights(sd_model=None, info=None): print(f"Unloaded weights {timer.summary()}.")
- return sd_model
\ No newline at end of file + return sd_model
|