import gradio as gr
import os
import sys
from pathlib import Path
models = [
"prompthero/openjourney-v4",
]
current_model = models[0]
text_gen1=gr.Interface.load("models/prompthero/openjourney-v4")
models2=[
gr.Interface.load(f"models/{models[0]}",live=True,preprocess=False),
]
def text_it1(inputs,text_gen1=text_gen1):
go_t1=text_gen1(inputs)
return(go_t1)
def set_model(current_model):
current_model = models[current_model]
return gr.update(label=(f"{current_model}"))
def send_it1(inputs, model_choice):
proc1=models2[model_choice]
output1=proc1(inputs)
return(output1)
css=""""""
with gr.Blocks(css=css) as myface:
gr.HTML("""
Fill the Textbox at the top and click Generate Image
The first time you load a model it takes 200 seconds
But after it loads each image takes 20 seconds to generate!
I am a solo developer and I made an app: Aironheart
At AironHeart, you can enjoy various AI tools and applications, including stable diffusion, AI chat, video, music and more!
AironHeart is avaliable on IOS, Android and Web! Try it now at www.aironheart.com
I would appreciated any feedback from you.
""")
with gr.Tab("Description"):
gr.HTML("""
As many Text-to-Image Models as I can fit here
Suggest more up in the "Community" button
I am a solo developer and I made an app: Aironheart
At AironHeart, you can enjoy various AI tools and applications, including stable diffusion, AI chat, video, music and more!
AironHeart is avaliable on IOS, Android and Web! Try it now at www.aironheart.com
I would appreciated any feedback from you.
""")
with gr.Tab("Tools"):
with gr.Tab("View"):
with gr.Row():
with gr.Column(style="width=50%, height=70%"):
gr.Pil(label="Crop")
with gr.Column(style="width=50%, height=70%"):
gr.Pil(label="Crop")
with gr.Tab("Draw"):
with gr.Column(style="width=50%, height=70%"):
gr.Pil(label="Crop")
with gr.Column(style="width=50%, height=70%"):
gr.Pil(label="Draw")
gr.ImagePaint(label="Draw")
with gr.Tab("Text"):
with gr.Row():
with gr.Column(scale=50):
gr.Textbox(label="", lines=8, interactive=True)
with gr.Column(scale=50):
gr.Textbox(label="", lines=8, interactive=True)
with gr.Tab("Color Picker"):
with gr.Row():
with gr.Column(scale=50):
gr.ColorPicker(label="Color", interactive=True)
with gr.Column(scale=50):
gr.ImagePaint(label="Draw", interactive=True)
with gr.Row():
with gr.Column(scale=100):
magic1=gr.Textbox(lines=4)
run=gr.Button("Generate Image")
with gr.Row():
with gr.Column(scale=100):
#Model selection dropdown
model_name1 = gr.Dropdown(label="Select Model", choices=[m for m in models], type="index", value=current_model, interactive=True)
with gr.Row():
with gr.Column(style="width=800px"):
output1=gr.Image(label=(f"{current_model}"))
with gr.Row():
with gr.Column(scale=50):
input_text=gr.Textbox(label="Prompt Idea",lines=2)
use_short=gr.Button("Use Short Prompt")
see_prompts=gr.Button("Extend Idea")
def short_prompt(inputs):
return(inputs)
model_name1.change(set_model,inputs=model_name1,outputs=[output1])
run.click(send_it1, inputs=[magic1, model_name1], outputs=[output1])
use_short.click(short_prompt,inputs=[input_text],outputs=magic1)
see_prompts.click(text_it1,inputs=[input_text],outputs=magic1)
myface.queue(concurrency_count=200)
myface.launch(inline=True, show_api=False, max_threads=400)