Spaces:
Runtime error
Runtime error
import gradio as gr | |
import os | |
import sys | |
from pathlib import Path | |
import random | |
import string | |
import time | |
from queue import Queue | |
from threading import Thread | |
import emoji | |
text_gen=gr.Interface.load("spaces/Dao3/MagicPrompt-Stable-Diffusion") | |
def get_prompts(prompt_text): | |
if prompt_text: | |
return text_gen("photo, " + prompt_text) | |
else: | |
return text_gen("") | |
proc1=gr.Interface.load("models/dreamlike-art/dreamlike-photoreal-2.0") | |
def restart_script_periodically(): | |
while True: | |
random_time = random.randint(540, 600) | |
time.sleep(random_time) | |
os.execl(sys.executable, sys.executable, *sys.argv) | |
restart_thread = Thread(target=restart_script_periodically, daemon=True) | |
restart_thread.start() | |
queue = Queue() | |
queue_threshold = 100 | |
def add_random_noise(prompt, noise_level=0.00): | |
if noise_level == 0: | |
noise_level = 0.00 | |
percentage_noise = noise_level * 5 | |
num_noise_chars = int(len(prompt) * (percentage_noise/100)) | |
noise_indices = random.sample(range(len(prompt)), num_noise_chars) | |
prompt_list = list(prompt) | |
noise_chars = list(string.ascii_letters + string.punctuation + ' ' + string.digits) | |
noise_chars.extend(['๐', '๐ฉ', '๐', '๐ค', '๐', '๐ค', '๐ญ', '๐', '๐ท', '๐คฏ', '๐คซ', '๐ฅด', '๐ด', '๐คฉ', '๐ฅณ', '๐', '๐ฉ', '๐คช', '๐', '๐คข', '๐', '๐น', '๐ป', '๐ค', '๐ฝ', '๐', '๐', '๐ ', '๐', '๐', '๐', '๐', '๐', '๐', '๐ฎ', 'โค๏ธ', '๐', '๐', '๐', '๐', '๐ถ', '๐ฑ', '๐ญ', '๐น', '๐ฆ', '๐ป', '๐จ', '๐ฏ', '๐ฆ', '๐', '๐ฅ', '๐ง๏ธ', '๐', '๐', '๐ฅ', '๐ด', '๐', '๐บ', '๐ป', '๐ธ', '๐จ', '๐ ', '๐', 'โ๏ธ', 'โ๏ธ', 'โ๏ธ', 'โ๏ธ', '๐ค๏ธ', 'โ ๏ธ', '๐ฅ๏ธ', '๐ฆ๏ธ', '๐ง๏ธ', '๐ฉ๏ธ', '๐จ๏ธ', '๐ซ๏ธ', 'โ๏ธ', '๐ฌ๏ธ', '๐จ', '๐ช๏ธ', '๐']) | |
for index in noise_indices: | |
prompt_list[index] = random.choice(noise_chars) | |
return "".join(prompt_list) | |
def send_it1(inputs, noise_level, proc1=proc1): | |
prompt_with_noise = add_random_noise(inputs, noise_level) | |
while queue.qsize() >= queue_threshold: | |
time.sleep(2) | |
queue.put(prompt_with_noise) | |
output1 = proc1(prompt_with_noise) | |
return output1 | |
def send_it2(inputs, noise_level, proc1=proc1): | |
prompt_with_noise = add_random_noise(inputs, noise_level) | |
while queue.qsize() >= queue_threshold: | |
time.sleep(2) | |
queue.put(prompt_with_noise) | |
output2 = proc1(prompt_with_noise) | |
return output2 | |
#def send_it3(inputs, noise_level, proc1=proc1): | |
#prompt_with_noise = add_random_noise(inputs, noise_level) | |
#while queue.qsize() >= queue_threshold: | |
#time.sleep(2) | |
#queue.put(prompt_with_noise) | |
#output3 = proc1(prompt_with_noise) | |
#return output3 | |
#def send_it4(inputs, noise_level, proc1=proc1): | |
#prompt_with_noise = add_random_noise(inputs, noise_level) | |
#while queue.qsize() >= queue_threshold: | |
#time.sleep(2) | |
#queue.put(prompt_with_noise) | |
#output4 = proc1(prompt_with_noise) | |
#return output4 | |
with gr.Blocks(css='style.css') as demo: | |
gr.HTML( | |
""" | |
<div style="text-align: center; max-width: 650px; margin: 0 auto;"> | |
<div> | |
<h2 style="font-weight: 900; font-size: 3rem; margin-bottom:20px;"> | |
ๅนปๆขฆๆ็-2.0 | |
</h2> | |
</div> | |
<p style="margin-bottom: 10px; font-size: 96%"> | |
ๅทฎๅผ็จๅบฆ: ็จๆฐๅผ่ฐ่ไธคๅผ ๅพ็ๅทฎๅผ็จๅบฆใๆฐๅผ่ถๅคง๏ผไธคๅผ ๅพ็ๅทฎๅผ่ถๅคง๏ผๅไน่ถๅฐใ | |
</p> | |
<p style="margin-bottom: 10px; font-size: 98%"> | |
โค๏ธ ๅๆฌข็่ฏ๏ผๅฐฑ็นไธ้ข็โค๏ธๅง~โค๏ธ</a> | |
</p> | |
</div> | |
""" | |
) | |
with gr.Column(elem_id="col-container"): | |
with gr.Row(variant="compact"): | |
input_text = gr.Textbox( | |
label="Short Prompt", | |
show_label=False, | |
max_lines=2, | |
placeholder="่พๅ ฅไฝ ็ๆณ่ฑก(่ฑๆ่ฏๆฑ)๏ผ็ถๅๆๅณ่พนๆ้ฎใๆฒก็ตๆ๏ผ็ดๆฅๆ๏ผ", | |
).style( | |
container=False, | |
) | |
see_prompts = gr.Button("โจ ๅ่ฏญๆพ็ฐ โจ").style(full_width=False) | |
with gr.Row(variant="compact"): | |
prompt = gr.Textbox( | |
label="่พๅ ฅๆ่ฟฐ่ฏ", | |
show_label=False, | |
max_lines=2, | |
placeholder="ๅฏ่พๅ ฅๅฎๆดๆ่ฟฐ่ฏ๏ผๆ่ ็จๅ่ฏญๆพ็ฐๆ้ฎ็ๆ", | |
).style( | |
container=False, | |
) | |
run = gr.Button("โจ ๅนปๆขฆๆ็โจ").style(full_width=False) | |
with gr.Row(): | |
with gr.Row(): | |
noise_level = gr.Slider(minimum=0.0, maximum=3, step=0.1, label="ๅทฎๅผ็จๅบฆ") | |
with gr.Row(): | |
with gr.Row(): | |
output1=gr.Image(label="Dreamlike-photoreal-2.0",show_label=False) | |
output2=gr.Image(label="Dreamlike-photoreal-2.0",show_label=False) | |
#with gr.Row(): | |
#output1=gr.Image() | |
see_prompts.click(get_prompts, inputs=[input_text], outputs=[prompt], queue=False) | |
run.click(send_it1, inputs=[prompt, noise_level], outputs=[output1]) | |
run.click(send_it2, inputs=[prompt, noise_level], outputs=[output2]) | |
with gr.Row(): | |
gr.HTML( | |
""" | |
<div class="footer"> | |
<p> | |
ไฝฟ็จไบ<a href="https://huggingface.co/dreamlike-art/dreamlike-photoreal-2.0">Dreamlike Photoreal 2.0</a> ๅถไฝ็sdๆจกๅ๏ผ <a href="https://twitter.com/DavidJohnstonxx/">ๆฌๆกไพๆๅไฝ่ Phenomenon1981</a> | |
</p> | |
</div> | |
<div class="acknowledgments" style="font-size: 115%"> | |
<p> | |
ๅฆไธไธชๆจกๅ<a href="https://huggingface.co/spaces/Dao3/DreamlikeArt-Diffusion-1.0">ๅนปๆขฆ</a> </p> | |
</p> | |
</div> | |
<div class="acknowledgments" style="font-size: 115%"> | |
<p> | |
ๅฎๅฉ๏ผ่ฟๆไธไธชๆฑๅ้กน็ฎ๏ผ<a href="https://tiwenti.chat/">TiwenTi.chat</a>๏ผ่ฟๆฏไธไธชChatGPT็ไธญๆๆกไพๅบ๏ผๆ็ งๅทฅๅ ท็จ้ๅ่ง่ฒๆฎๆผ็จ้ๅไบๅ็ฑป๏ผๆฌข่ฟๅป็ๅปๅไบซ~ </p> | |
</p> | |
</div> | |
""" | |
) | |
demo.launch(enable_queue=True, inline=True) | |
block.queue(concurrency_count=100) |