hysts's picture
hysts HF staff
Update
85f94cd
raw
history blame
4.09 kB
#!/usr/bin/env python
from __future__ import annotations
import gradio as gr
from model import Model
DESCRIPTION = '''# Multiresolution Textual Inversion
An unofficial demo for [https://github.com/giannisdaras/multires_textual_inversion](https://github.com/giannisdaras/multires_textual_inversion).
'''
DETAILS = '''
- To run the Semi Resolution-Dependent sampler, use the format: `<jane(number)>`.
- To run the Fully Resolution-Dependent sampler, use the format: `<jane[number]>`.
- To run the Fixed Resolution sampler, use the format: `<jane|number|>`.
For this demo, only `<jane>`, `<gta5-artwork>` and `<cat-toy>` are available.
Also, `number` should be an integer in [0, 9].
'''
#CACHE_EXAMPLES = os.getenv('SYSTEM') == 'spaces'
CACHE_EXAMPLES = False
model = Model()
with gr.Blocks(css='style.css') as demo:
gr.Markdown(DESCRIPTION)
with gr.Row():
with gr.Group():
with gr.Row():
prompt = gr.Textbox(label='Prompt')
with gr.Row():
num_images = gr.Slider(1,
9,
value=1,
step=1,
label='Number of images')
with gr.Row():
num_steps = gr.Slider(1,
50,
value=10,
step=1,
label='Number of inference steps')
with gr.Row():
seed = gr.Slider(0, 100000, value=100, step=1, label='Seed')
with gr.Row():
run_button = gr.Button('Run')
with gr.Column():
result = gr.Gallery(label='Result')
with gr.Row():
with gr.Group():
fn = lambda x: model.run(x, 2, 10, 100)
with gr.Row():
gr.Examples(
label='Examples 1',
examples=[
['an image of <gta5-artwork(0)>'],
['an image of <jane(0)>'],
['an image of <jane(3)>'],
['an image of <cat-toy(0)>'],
],
inputs=prompt,
outputs=result,
fn=fn,
cache_examples=CACHE_EXAMPLES,
)
with gr.Row():
gr.Examples(
label='Examples 2',
examples=[
[
'an image of a cat in the style of <gta5-artwork(0)>'
],
['a painting of a dog in the style of <jane(0)>'],
['a painting of a dog in the style of <jane(5)>'],
[
'a painting of a <cat-toy(0)> in the style of <jane(3)>'
],
],
inputs=prompt,
outputs=result,
fn=fn,
cache_examples=CACHE_EXAMPLES,
)
with gr.Row():
gr.Examples(
label='Examples 3',
examples=[
['an image of <jane[0]>'],
['an image of <jane|0|>'],
['an image of <jane|3|>'],
],
inputs=prompt,
outputs=result,
fn=fn,
cache_examples=CACHE_EXAMPLES,
)
inputs = [
prompt,
num_images,
num_steps,
seed,
]
prompt.submit(
fn=model.run,
inputs=inputs,
outputs=result,
)
run_button.click(
fn=model.run,
inputs=inputs,
outputs=result,
)
with gr.Accordion('About available prompts', open=False):
gr.Markdown(DETAILS)
demo.queue().launch(show_api=False)