Spaces:
Runtime error
Runtime error
File size: 14,229 Bytes
97e93b6 7bbe1b0 e737602 6f04921 9e4d171 3d03a06 ffa7645 6f04921 67e22f2 97e93b6 d57fe36 97e93b6 270c82d 97e93b6 270c82d 0a39a7d 270c82d 0a39a7d 6a94622 675f25a 93f6a95 675f25a 6a94622 6ab8181 7ba39fe 6ab8181 5ed47e5 0a39a7d 1b9b7e0 9bc4c3e 0cf5cfb 0a39a7d 97e93b6 d6d1319 97e93b6 49801d6 97e93b6 d6d1319 270c82d 4cd1220 270c82d 6c2fcdd 270c82d 4cd1220 97e93b6 c3fddcc 97e93b6 6c2fcdd |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 |
import gradio as gr
import os
import sys
from pathlib import Path
models = [
{"name": "SDXL-base-1.0", "url": "stabilityai/stable-diffusion-xl-base-1.0"},
{"name": "Dreamlike-photoreal-2.0", "url": "dreamlike-art/dreamlike-photoreal-2.0"},
{"name": "Dreamlike-anime-1.0", "url": "dreamlike-art/dreamlike-anime-1.0"},
{"name": "Dreamlike-diffusion-1.0", "url": "dreamlike-art/dreamlike-diffusion-1.0"},
{"name": "Claudfuen 1", "url": "claudfuen/photorealistic-fuen-v1"},
{"name": "Deliberate", "url": "Masagin/Deliberate"},
{"name": "Dreamshaper", "url": "Lykon/DreamShaper"},
{"name": "Realistic Vision 1.4", "url": "SG161222/Realistic_Vision_V1.4"},
{"name": "Seek Art Mega", "url": "coreco/seek.art_MEGA"},
{"name": "AmiIReal", "url": "stablediffusionapi/amireal"},
{"name": "Analog Diffusion", "url": "wavymulder/Analog-Diffusion"},
{"name": "Circulus 2.8", "url": "circulus/sd-photoreal-v2.8"},
{"name": "Circulus Photoreal V2", "url": "circulus/sd-photoreal-real-v2"},
{"name": "Collage Diffusion", "url": "wavymulder/collage-diffusion"},
{"name": "Cyberrealistic", "url": "stablediffusionapi/cyberrealistic"},
{"name": "Dreamful 2", "url": "Hius/DreamFul-V2"},
{"name": "GakkiMix768", "url": "Sa1i/gakki-mix-768"},
{"name": "Grimoeresigils", "url": "ECarbenia/grimoiresigils"},
{"name": "HARDBlend", "url": "theintuitiveye/HARDblend"},
{"name": "HassanBlend 1.4", "url": "hassanblend/hassanblend1.4"},
{"name": "HassanBlend 1.5.1.2", "url": "hassanblend/HassanBlend1.5.1.2"},
{"name": "Lomo Diffusion", "url": "wavymulder/lomo-diffusion"},
{"name": "Model Shoot", "url": "wavymulder/modelshoot"},
{"name": "Portrait Plus", "url": "wavymulder/portraitplus"},
{"name": "QuinceMix", "url": "Hemlok/QuinceMix"},
{"name": "The Ally", "url": "stablediffusionapi/the-ally"},
{"name": "Timeless Diffusion", "url": "wavymulder/timeless-diffusion"},
{"name": "UltraSkin", "url": "VegaKH/Ultraskin"},
{"name": "Wavyfusion", "url": "wavymulder/wavyfusion"},
{"name": "Anything Midjourney 4.1", "url": "Joeythemonster/anything-midjourney-v-4-1"},
{"name": "Chaos and Order", "url": "Guizmus/SDArt_ChaosAndOrder768"},
{"name": "Comic Diffusion", "url": "ogkalu/Comic-Diffusion"},
{"name": "Cosmic Horros 768", "url": "Guizmus/SDArt_cosmichorrors768"},
{"name": "Cosmic Horros", "url": "Guizmus/SDArt_cosmichorrors"},
{"name": "DGSpitzer", "url": "DGSpitzer/DGSpitzer-Art-Diffusion"},
{"name": "Dungeons and Diffusion", "url": "0xJustin/Dungeons-and-Diffusion"},
{"name": "Elden Ring", "url": "nitrosocke/elden-ring-diffusion"},
{"name": "Epic Diffusion 1.1", "url": "johnslegers/epic-diffusion-v1.1"},
{"name": "Epic Diffusion", "url": "johnslegers/epic-diffusion"},
{"name": "EpicMix Realism", "url": "Duskfallcrew/EpicMix_Realism"},
{"name": "Fantasy Mix", "url": "theintuitiveye/FantasyMix"},
{"name": "Girl New 1", "url": "Fred99774/girlnew1"},
{"name": "Lit 6B", "url": "hakurei/lit-6B"},
{"name": "Luna Diffusion", "url": "proximasanfinetuning/luna-diffusion"},
{"name": "Midjourney 4.0", "url": "flax/midjourney-v4-diffusion"},
{"name": "Midjourney 4.1", "url": "Joeythemonster/anything-midjourney-v-4-1"},
{"name": "Mo-Di Diffusion", "url": "nitrosocke/mo-di-diffusion"},
{"name": "Nitro Diffusion", "url": "nitrosocke/Nitro-Diffusion"},
{"name": "Openjourney V2", "url": "prompthero/openjourney-v2"},
{"name": "Openjourney", "url": "prompthero/openjourney"},
{"name": "Something", "url": "Guizmus/SDArt_something"},
{"name": "Spider Verse diffusion", "url": "nitrosocke/spider-verse-diffusion"},
{"name": "Vintedois 1.0", "url": "22h/vintedois-diffusion-v0-1"},
{"name": "Vintedois 2.0", "url": "22h/vintedois-diffusion-v0-2"},
{"name": "❤ ART STYLES ==========", "url": "joachimsallstrom/Double-Exposure-Diffusion"},
{"name": "Balloon Art", "url": "Fictiverse/Stable_Diffusion_BalloonArt_Model"},
{"name": "Double Exposure Diffusion", "url": "joachimsallstrom/Double-Exposure-Diffusion"},
{"name": "Fluid Art", "url": "Fictiverse/Stable_Diffusion_FluidArt_Model"},
{"name": "GTA5 Artwork Diffusion", "url": "ItsJayQz/GTA5_Artwork_Diffusion"},
{"name": "Marvel WhatIf Diffusion", "url": "ItsJayQz/Marvel_WhatIf_Diffusion"},
{"name": "Naruto Diffuser", "url": "lambdalabs/sd-naruto-diffusers"},
{"name": "Papercut", "url": "Fictiverse/Stable_Diffusion_PaperCut_Model"},
{"name": "Pokemon Diffuser", "url": "lambdalabs/sd-pokemon-diffusers"},
{"name": "Synthwave Punk 2", "url": "ItsJayQz/SynthwavePunk-v2"},
{"name": "Valorant Diffusion", "url": "ItsJayQz/Valorant_Diffusion"},
{"name": "Van Gogh Diffusion", "url": "dallinmackay/Van-Gogh-diffusion"},
{"name": "Vectorartz Diffusion", "url": "coder119/Vectorartz_Diffusion"},
{"name": "VoxelArt", "url": "Fictiverse/Stable_Diffusion_VoxelArt_Model"},
{"name": "Picasso Diffusion", "url": "aipicasso/picasso-diffusion-1-1"},
{"name": "Cool Japan 2.1.2", "url": "aipicasso/cool-japan-diffusion-2-1-2"},
{"name": "Cool Japan 2.1.1", "url": "aipicasso/cool-japan-diffusion-2-1-1"},
{"name": "Future Diffusion", "url": "nitrosocke/Future-Diffusion"},
{"name": "JWST Deep Space Diffusion", "url": "dallinmackay/JWST-Deep-Space-diffusion"},
{"name": "Robo Diffusion 3 Base", "url": "nousr/robo-diffusion-2-base"},
{"name": "Robo Diffusion", "url": "nousr/robo-diffusion"},
{"name": "Tron Legacy Diffusion", "url": "dallinmackay/Tron-Legacy-diffusion"},
{"name": "Archer Diffusion", "url": "nitrosocke/archer-diffusion"},
{"name": "Icomix 2", "url": "stablediffusionapi/icomix-2"},
{"name": "DucHaiten Art", "url": "DucHaiten/DucHaitenAIart"},
{"name": "DucHaiten ClassicAnime", "url": "DucHaiten/DH_ClassicAnime"},
{"name": "DucHaiten DreamWorld", "url": "DucHaiten/DucHaitenDreamWorld"},
{"name": "DucHaiten Journey", "url": "DucHaiten/DucHaitenJourney"},
{"name": "DucHaiten StyleLikeMe", "url": "DucHaiten/DucHaiten-StyleLikeMe"},
{"name": "DucHaiten SuperCute", "url": "DucHaiten/DucHaitenSuperCute"},
{"name": "Redshift Diffusion 768", "url": "nitrosocke/redshift-diffusion-768"},
{"name": "Redshift Diffusion", "url": "nitrosocke/redshift-diffusion"},
{"name": "All 526", "url": "stablediffusionapi/all-526"},
{"name": "All 526 animated", "url": "stablediffusionapi/all-526-animated"},
{"name": "Circulus Semi Real 2", "url": "circulus/sd-photoreal-semi-v2"},
{"name": "Semi Real Mix", "url": "robotjung/SemiRealMix"},
{"name": "SpyBG", "url": "stablediffusionapi/spybg"},
{"name": "Protogen X 5.8", "url": "darkstorm2150/Protogen_x5.8_Official_Release"},
{"name": "Protogen 2.2", "url": "darkstorm2150/Protogen_v2.2_Official_Release"},
{"name": "Protogen X 3.4", "url": "darkstorm2150/Protogen_x3.4_Official_Release"},
{"name": "Stable Diffusion 1.4","url": "CompVis/stable-diffusion-v1-4"},
{"name": "Stable Diffusion 1.5","url": "runwayml/stable-diffusion-v1-5"},
{"name": "Stable Diffusion 2.1","url": "stabilityai/stable-diffusion-2-1"},
{"name": "Stable Diffusion 2.1 Base","url": "stabilityai/stable-diffusion-2-1-base"},
{"name": "Stable Diffusion 2.1 Unclip","url": "stabilityai/stable-diffusion-2-1-unclip"},
{"name": "Never Ending Dream 2", "url": "luongphamit/NeverEnding-Dream2"},
{"name": "NeverEnding-Dream", "url": "Lykon/NeverEnding-Dream"},
{"name": "InkPunk Diffusion", "url": "Envvi/Inkpunk-Diffusion"},
{"name": "Protogen Infinity", "url": "darkstorm2150/Protogen_Infinity_Official_Release"},
{"name": "Rev Anim", "url": "stablediffusionapi/rev-anim"},
{"name": "Rev Animated", "url": "coreml/coreml-ReV-Animated"},
]
current_model = models[0]
text_gen = gr.Interface.load("spaces/Omnibus/MagicPrompt-Stable-Diffusion_link")
models2 = []
for model in models:
model_url = f"models/{model['url']}"
loaded_model = gr.Interface.load(model_url, live=True, preprocess=True)
models2.append(loaded_model)
def text_it(inputs, text_gen=text_gen):
return text_gen(inputs)
def set_model(current_model_index):
global current_model
current_model = models[current_model_index]
return gr.update(value=f"{current_model['name']}")
def send_it(inputs, model_choice):
proc = models2[model_choice]
return proc(inputs)
with gr.Blocks() as myface:
gr.HTML()
with gr.Row():
with gr.Tab("Эскизы"):
gr.HTML("""
<p style='font-weight: bold;text-align: center;font-size: large'>Magic Levitan_v1</p>
""")
with gr.Tab("Финальный мазок"):
gr.HTML(f"""<title>Как использовать</title><div style="text-align: center; max-width: 1500px; margin: 0 auto;">
<iframe src="https://mackorlab.github.io/spase/GFPGAN.html" width="100%" height="650" align="left">
Ваш браузер не поддерживает плавающие фреймы!
</iframe>
""")
with gr.Tab("Magic промт"):
gr.HTML(f"""<title>Как использовать</title><div style="text-align: center; max-width: 1500px; margin: 0 auto;">
<iframe src="https://mackorlab.github.io/spase/magic_pro.html" width="100%" height="650" align="left">
Ваш браузер не поддерживает плавающие фреймы!
</iframe>
""")
with gr.Tab("Как использовать"):
gr.HTML(f"""<title>Как использовать</title><div style="text-align: center; max-width: 1500px; margin: 0 auto;">
<h4>1. Добавьте вашу идею пейзажа 🖼 в соответствующее поле (не забывайте <b>перевести текст идеи</b> на английский)</h4>
<h4>2. Далее по нажатию кнопки "Сгенерировать Magic промт" ИИ продолжит ваш текст и самостоятельно создаст разнообразные промты для каждого пейзажа</h4>
<h4>3. Когда генерация промта будет завершена. выберите понравившуюся вам модель <b>Stable Diffusion</b> в разделе Палитра 🎨</h4>
<h4>4. Нажмите кнопку "Создать пейзажи", дождитесь окончания генерации</h4>
<h4>5. Для новых итерации изображения, выберите другую модель или снова нажмите кнопку "Сгенерировать Magic промт" также вы можете отдельно запускать отдельно генерацию промтов в разделе "Magic промт"</h4>
<h4>6. Скачайте на ПК эскиз, наведя на него курсор и кликнув правой кнопкой мыши </h4>
<h4>7. Перейдите в раздел "Финальный мазок" и загрузите туда только что скачанный эскиз, кликнув на область загрузки или переместив туда файл перетаскиванием</h4>
<h4>8. Кликните по кнопке "Исполнить", дождитесь окончания генерации и скачайте финальный файл. </h4>
</div>
""")
with gr.Row():
with gr.Row():
input_text = gr.Textbox(label="Идея пейзажей 🖼", placeholder="", lines=1)
# Model selection dropdown
model_name1 = gr.Dropdown(
label="Палитра 🎨",
choices=[m["name"] for m in models],
type="index",
value=current_model["name"],
interactive=True,
)
with gr.Row():
see_prompts = gr.Button("Сгенерировать Magic промты")
run = gr.Button("Создать пейзажи", variant="primary")
with gr.Row():
output1 = gr.Image(label="")
output2 = gr.Image(label="")
output3 = gr.Image(label="")
with gr.Row():
magic1 = gr.Textbox(label="Magic промт", lines=2)
magic2 = gr.Textbox(label="Magic промт", lines=2)
magic3 = gr.Textbox(label="Magic промт", lines=2)
with gr.Row():
output4 = gr.Image(label="")
output5 = gr.Image(label="")
output6 = gr.Image(label="")
with gr.Row():
magic4 = gr.Textbox(label="Magic промт", lines=2)
magic5 = gr.Textbox(label="Magic промт", lines=2)
magic6 = gr.Textbox(label="Magic промт", lines=2)
model_name1.change(set_model, inputs=model_name1, outputs=[output1, output2, output3, output4, output5, output6])
run.click(send_it, inputs=[magic1, model_name1], outputs=[output1])
run.click(send_it, inputs=[magic2, model_name1], outputs=[output2])
run.click(send_it, inputs=[magic3, model_name1], outputs=[output3])
run.click(send_it, inputs=[magic4, model_name1], outputs=[output4])
run.click(send_it, inputs=[magic5, model_name1], outputs=[output5])
run.click(send_it, inputs=[magic6, model_name1], outputs=[output6])
see_prompts.click(text_it, inputs=[input_text], outputs=[magic1])
see_prompts.click(text_it, inputs=[input_text], outputs=[magic2])
see_prompts.click(text_it, inputs=[input_text], outputs=[magic3])
see_prompts.click(text_it, inputs=[input_text], outputs=[magic4])
see_prompts.click(text_it, inputs=[input_text], outputs=[magic5])
see_prompts.click(text_it, inputs=[input_text], outputs=[magic6])
myface.queue(concurrency_count=200)
myface.launch(inline=True, show_api=False, max_threads=400) |