import gradio as gr import os import sys from pathlib import Path models = [ "Yntec/photoMovieRealistic", "Yntec/a-ZovyaRPGV3VAE", "Yntec/a-ZoviaRPGArtistV2VAE", "Yntec/InsaneRealisticCVAE", "Yntec/Lunar", "Yntec/LunarLuma", "Yntec/QToriReloaded", "Yntec/Ninja-Diffusers", "Yntec/ChildrenStoriesAnime", "Yntec/DucHaitenAnime768", "Yntec/DucHaitenClassicAnime768", "Yntec/WesternAnimation", "Yntec/GOLDFish", "Yntec/Rainbowsphere", "Yntec/DreamAnything", "Yntec/yabalMixTrue25D_v2_VAE", "dreamlike-art/dreamlike-anime-1.0", "Yntec/DucHaiten-Retro-Diffusers", "Hemlok/QuinceMix", "Yntec/KIDSILLUSTRATIONS", "Yntec/COOLKIDSV2", "Yntec/Pavo-Mix-Diffusers", "Yntec/DucHaitenAIart-beta", "Ojimi/anime-kawai-diffusion", "LottePeisch/RevAnimated-Diffusers", "Linaqruf/animagine-xl", "Envvi/Inkpunk-Diffusion", "Birchlabs/waifu-diffusion-xl-unofficial", "digiplay/KawaiiRealisticAnimeMix_A0.3", "digiplay/AI-infinity-V1-fp16", "Yntec/photoMovieX", "Yntec/OrangeRemix", "digiplay/majicMIX_realistic_v6", "digiplay/LuckyStrikeMix1.05_Lovelylady", ] current_model = models[0] text_gen1=gr.Interface.load("spaces/Omnibus/MagicPrompt-Stable-Diffusion_link") models2=[ gr.Interface.load(f"models/{models[0]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[1]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[2]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[3]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[4]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[5]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[6]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[7]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[8]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[9]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[10]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[11]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[12]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[13]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[14]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[15]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[16]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[17]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[18]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[19]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[20]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[21]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[22]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[23]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[24]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[25]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[26]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[27]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[28]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[29]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[30]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[31]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[32]}",live=True,preprocess=False), gr.Interface.load(f"models/{models[33]}",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() with gr.Row(): with gr.Tab("说明"): gr.HTML(""" 多模型加速生成

输入文字生成图像


第一次导入模型可能需要200秒生成


之后一般只需20秒左右

""") with gr.Tab("内置模型解释"): gr.HTML(""" 在内置模型中生成图片可能出现的问题

1. 使用Envvi/Inkpunk-Diffusion时,需要在提示词中加上“nvinkpunk”

2. 使用digiplay/majicMIX_realistic_v6时,在提示词中加上“HI-RES”效果更好

""") with gr.Row(): with gr.Column(scale=100): magic1=gr.Textbox(label="输入提示词:", lines=4, placeholder = "英文") run=gr.Button("生成图像") with gr.Row(): with gr.Column(scale=100): model_name1 = gr.Dropdown(label="选择模型", 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): gr.HTML("""

没有想法?

""") input_text=gr.Textbox(label="输入提示词点子:",lines=2, placeholder = "英文") use_short=gr.Button("使用精简提示词(使用框中提示词)") see_prompts=gr.Button("扩充框内提示词") 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)