Spaces:
Build error
Build 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/phenomenon1981/MagicPrompt-Stable-Diffusion") | |
def get_prompts(prompt_text): | |
if prompt_text: | |
return text_gen("dreamlikeart, " + prompt_text) | |
else: | |
return text_gen("") | |
proc1 = gr.Interface.load("models/dreamlike-art/dreamlike-diffusion-1.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 | |
with gr.Blocks(css='style.css') as demo: | |
with gr.HTML("""<h1 style="font-weight: 900; margin-bottom: 7px;margin-top:5px"> | |
RayicDegeri.com - Araba Resmi Oluşturucu Yapay Zeka Sistemi | |
</h1> | |
<h3 style="font-weight: 900; margin-bottom: 7px;margin-top:5px"> | |
Lütfen, Marka: ...., Seri: ..., Model: ...., Yıl: .... şeklinde giriniz. | |
Örneğin: Marka: Renault, Seri: Symbol, Model: 1.5 dCi Authentique, Yıl: 2012 | |
</h3>""") | |
with gr.Row(variant="compact"): | |
prompt_marka = gr.Textbox( | |
label="Enter your prompt", | |
show_label=False, | |
max_lines=2, | |
placeholder="Markanızı Giriniz. (Örneğin, Renault, BMW, AUDI)", | |
).style( | |
container=False, | |
) | |
prompt_seri = gr.Textbox( | |
label="Enter your prompt", | |
show_label=False, | |
max_lines=2, | |
placeholder="Serinizi Giriniz. (Örneğin, Clio, Symbol)", | |
).style( | |
container=False, | |
) | |
prompt_model = gr.Textbox( | |
label="Enter your prompt", | |
show_label=False, | |
max_lines=2, | |
placeholder="Modelinizi Giriniz. (Örneğin, 1.5 dCi Authentique)", | |
).style( | |
container=False, | |
) | |
prompt_yil = gr.Textbox( | |
label="Enter your prompt", | |
show_label=False, | |
max_lines=2, | |
placeholder="Aracınızın Yılını Giriniz. (Örneğin, 2012,2020)", | |
).style( | |
container=False, | |
) | |
prompts = f"Brand: {prompt_marka} / Series: {prompt_seri} / Model: {prompt_model} / Year: {prompt_yil}" | |
run = gr.Button("Oluştur").style(full_width=False) | |
with gr.Row(): | |
with gr.Row(): | |
noise_level = gr.Slider(minimum=0.0, maximum=3, step=0.1, label="Görüntünün Gürültü Katsayısı") | |
with gr.Row(): | |
with gr.Row(): | |
output1 = gr.Image(label="Dreamlike Diffusion 1.0", show_label=False) | |
run.click(send_it1, inputs=[prompts, noise_level], outputs=[output1]) | |
with gr.Row(): | |
gr.HTML( | |
) | |
demo.launch(enable_queue=True, inline=True) | |
block.queue(concurrency_count=100) |