car_prediction / app.py
Emiir
Update app.py
f8c8f5b
raw
history blame
4.63 kB
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)