Commit
·
efd358c
1
Parent(s):
25db69d
Faster zipping, fix join org link
Browse files
app.py
CHANGED
|
@@ -9,6 +9,7 @@ from PIL import Image
|
|
| 9 |
from slugify import slugify
|
| 10 |
import requests
|
| 11 |
import torch
|
|
|
|
| 12 |
from diffusers import StableDiffusionPipeline
|
| 13 |
|
| 14 |
css = '''
|
|
@@ -20,6 +21,15 @@ model_to_load = "multimodalart/sd-fine-tunable"
|
|
| 20 |
maximum_concepts = 3
|
| 21 |
#Pre download the files even if we don't use it here
|
| 22 |
StableDiffusionPipeline.from_pretrained(model_to_load)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 23 |
def swap_text(option):
|
| 24 |
mandatory_liability = "You must have the right to do so and you are liable for the images you use, example:"
|
| 25 |
if(option == "object"):
|
|
@@ -128,7 +138,9 @@ def train(*inputs):
|
|
| 128 |
torch.cuda.empty_cache()
|
| 129 |
#convert("output_model", "model.ckpt")
|
| 130 |
#shutil.rmtree('instance_images')
|
| 131 |
-
shutil.make_archive("diffusers_model", 'zip', "output_model")
|
|
|
|
|
|
|
| 132 |
torch.cuda.empty_cache()
|
| 133 |
return [gr.update(visible=True, value=["diffusers_model.zip"]), gr.update(visible=True), gr.update(visible=True), gr.update(visible=True)]
|
| 134 |
|
|
@@ -153,7 +165,7 @@ def push(model_name, where_to_upload, hf_token):
|
|
| 153 |
else:
|
| 154 |
model_id = f"sd-dreambooth-library/{model_name_slug}"
|
| 155 |
headers = {"Authorization" : f"Bearer: {hf_token}", "Content-Type": "application/json"}
|
| 156 |
-
response = requests.post("https://
|
| 157 |
|
| 158 |
images_upload = os.listdir("instance_images")
|
| 159 |
image_string = ""
|
|
@@ -167,10 +179,8 @@ def push(model_name, where_to_upload, hf_token):
|
|
| 167 |
else:
|
| 168 |
title_instance_prompt_string = ''
|
| 169 |
previous_instance_prompt = instance_prompt
|
| 170 |
-
image_string = f'''
|
| 171 |
-
|
| 172 |
-
{image_string}
|
| 173 |
-
'''
|
| 174 |
readme_text = f'''---
|
| 175 |
license: creativeml-openrail-m
|
| 176 |
tags:
|
|
@@ -191,6 +201,7 @@ Sample pictures of this concept:
|
|
| 191 |
text_file = open("token_identifier.txt", "w")
|
| 192 |
text_file.write(', '.join(instance_prompt_list))
|
| 193 |
text_file.close()
|
|
|
|
| 194 |
operations = [
|
| 195 |
CommitOperationAdd(path_in_repo="token_identifier.txt", path_or_fileobj="token_identifier.txt"),
|
| 196 |
CommitOperationAdd(path_in_repo="README.md", path_or_fileobj="README.md"),
|
|
@@ -218,7 +229,7 @@ Sample pictures of this concept:
|
|
| 218 |
def convert_to_ckpt():
|
| 219 |
convert("output_model", "model.ckpt")
|
| 220 |
return gr.update(visible=True, value=["diffusers_model.zip", "model.ckpt"])
|
| 221 |
-
|
| 222 |
with gr.Blocks(css=css) as demo:
|
| 223 |
with gr.Box():
|
| 224 |
if "IS_SHARED_UI" in os.environ:
|
|
|
|
| 9 |
from slugify import slugify
|
| 10 |
import requests
|
| 11 |
import torch
|
| 12 |
+
import zipfile
|
| 13 |
from diffusers import StableDiffusionPipeline
|
| 14 |
|
| 15 |
css = '''
|
|
|
|
| 21 |
maximum_concepts = 3
|
| 22 |
#Pre download the files even if we don't use it here
|
| 23 |
StableDiffusionPipeline.from_pretrained(model_to_load)
|
| 24 |
+
|
| 25 |
+
def zipdir(path, ziph):
|
| 26 |
+
# ziph is zipfile handle
|
| 27 |
+
for root, dirs, files in os.walk(path):
|
| 28 |
+
for file in files:
|
| 29 |
+
ziph.write(os.path.join(root, file),
|
| 30 |
+
os.path.relpath(os.path.join(root, file),
|
| 31 |
+
os.path.join(path, '..')))
|
| 32 |
+
|
| 33 |
def swap_text(option):
|
| 34 |
mandatory_liability = "You must have the right to do so and you are liable for the images you use, example:"
|
| 35 |
if(option == "object"):
|
|
|
|
| 138 |
torch.cuda.empty_cache()
|
| 139 |
#convert("output_model", "model.ckpt")
|
| 140 |
#shutil.rmtree('instance_images')
|
| 141 |
+
#shutil.make_archive("diffusers_model", 'zip', "output_model")
|
| 142 |
+
with zipfile.ZipFile('diffusers_model.zip', 'w', zipfile.ZIP_DEFLATED) as zipf:
|
| 143 |
+
zipdir('output_model/', zipf)
|
| 144 |
torch.cuda.empty_cache()
|
| 145 |
return [gr.update(visible=True, value=["diffusers_model.zip"]), gr.update(visible=True), gr.update(visible=True), gr.update(visible=True)]
|
| 146 |
|
|
|
|
| 165 |
else:
|
| 166 |
model_id = f"sd-dreambooth-library/{model_name_slug}"
|
| 167 |
headers = {"Authorization" : f"Bearer: {hf_token}", "Content-Type": "application/json"}
|
| 168 |
+
response = requests.post("https://huggingface.co/organizations/sd-dreambooth-library/share/SSeOwppVCscfTEzFGQaqpfcjukVeNrKNHX", headers=headers)
|
| 169 |
|
| 170 |
images_upload = os.listdir("instance_images")
|
| 171 |
image_string = ""
|
|
|
|
| 179 |
else:
|
| 180 |
title_instance_prompt_string = ''
|
| 181 |
previous_instance_prompt = instance_prompt
|
| 182 |
+
image_string = f'''{title_instance_prompt_string}
|
| 183 |
+
{image_string}'''
|
|
|
|
|
|
|
| 184 |
readme_text = f'''---
|
| 185 |
license: creativeml-openrail-m
|
| 186 |
tags:
|
|
|
|
| 201 |
text_file = open("token_identifier.txt", "w")
|
| 202 |
text_file.write(', '.join(instance_prompt_list))
|
| 203 |
text_file.close()
|
| 204 |
+
create_repo(model_id,private=True, token=hf_token)
|
| 205 |
operations = [
|
| 206 |
CommitOperationAdd(path_in_repo="token_identifier.txt", path_or_fileobj="token_identifier.txt"),
|
| 207 |
CommitOperationAdd(path_in_repo="README.md", path_or_fileobj="README.md"),
|
|
|
|
| 229 |
def convert_to_ckpt():
|
| 230 |
convert("output_model", "model.ckpt")
|
| 231 |
return gr.update(visible=True, value=["diffusers_model.zip", "model.ckpt"])
|
| 232 |
+
|
| 233 |
with gr.Blocks(css=css) as demo:
|
| 234 |
with gr.Box():
|
| 235 |
if "IS_SHARED_UI" in os.environ:
|