Spaces:
Runtime error
Runtime error
#!/usr/bin/env python | |
import json | |
import pathlib | |
import tempfile | |
from pathlib import Path | |
import gradio as gr | |
import src.gradio_user_history as gr_user_history | |
from modules.version_info import versions_html | |
from gradio_client import Client | |
#from gradio_space_ci import enable_space_ci | |
#enable_space_ci() | |
client = Client("multimodalart/stable-cascade") | |
def generate(prompt: str, negprompt: str, profile: gr.OAuthProfile | None) -> tuple[str, list[str]]: | |
generated_img_path = client.predict( | |
prompt, # str in 'Prompt' Textbox component | |
negprompt, # str in 'Negative prompt' Textbox component | |
0, # float (numeric value between 0 and 2147483647) in 'Seed' Slider component | |
1536, # float (numeric value between 1024 and 1536) in 'Width' Slider component | |
1536, # float (numeric value between 1024 and 1536) in 'Height' Slider component | |
20, # float (numeric value between 10 and 30) in 'Prior Inference Steps' Slider component | |
4, # float (numeric value between 0 and 20) in 'Prior Guidance Scale' Slider component | |
10, # float (numeric value between 4 and 12) in 'Decoder Inference Steps' Slider component | |
0, # float (numeric value between 0 and 0) in 'Decoder Guidance Scale' Slider component | |
1, # float (numeric value between 1 and 2) in 'Number of Images' Slider component | |
api_name="/run" | |
) | |
metadata = { | |
"prompt": prompt, | |
"negative_prompt": negprompt, | |
"prior_inference_steps": 20, | |
"prior_guidance_scale": 4, | |
"decoder_inference_steps": 10, | |
"decoder_guidance_scale": 0, | |
"seed": 0, | |
"width": 1024, | |
"height": 1024, | |
} | |
with tempfile.NamedTemporaryFile(mode="w", suffix=".json", delete=False) as metadata_file: | |
json.dump(metadata, metadata_file) | |
# Saving user history | |
gr_user_history.save_image(label=prompt, image=generated_img_path, profile=profile, metadata=metadata) | |
return [generated_img_path] # type: ignore | |
with gr.Blocks(css="style.css") as demo: | |
with gr.Group(): | |
prompt = gr.Text(show_label=False, placeholder="Prompt") | |
negprompt = gr.Text(show_label=False, placeholder="Negative Prompt") | |
gallery = gr.Gallery( | |
show_label=False, | |
columns=2, | |
rows=2, | |
height="600px", | |
object_fit="scale-down", | |
) | |
prompt.submit(fn=generate, inputs=[prompt,negprompt], outputs=gallery) | |
with gr.Blocks(theme='Surn/beeuty@==0.5.25') as demo_with_history: | |
with gr.Tab("README"): | |
gr.Markdown(Path("README.md").read_text(encoding="utf-8").split("---")[-1]) | |
with gr.Tab("Demo"): | |
demo.render() | |
with gr.Tab("Past generations"): | |
gr_user_history.setup(display_type="image_path") # optional, this is where you would set the display type = "video_path" if you want to display videos | |
gr_user_history.render() | |
with gr.Row("Versions") as versions_row: | |
gr.HTML(value=versions_html(), visible=True, elem_id="versions") | |
if __name__ == "__main__": | |
launch_args = {} | |
launch_kwargs = {} | |
launch_kwargs['allowed_paths'] = ["assets/", "data/_user_history", "/data/_user_history/Surn"] | |
launch_kwargs['favicon_path'] = "assets/favicon.ico" | |
#launch_kwargs['inbrowser'] = True | |
demo_with_history.queue().launch(**launch_kwargs) | |