|
import gradio as gr |
|
import requests |
|
import os |
|
|
|
BASE_URL = os.getenv("BASE_URL") |
|
API_KEY = os.getenv("API_KEY") |
|
|
|
def generate_image(prompt, negative_prompt, sampling_steps, cfg_scale, seed): |
|
url = f"{BASE_URL}/generate" |
|
headers = {"Authorization": f"Bearer {API_KEY}"} |
|
params = { |
|
"prompt": prompt, |
|
"negative_prompt": negative_prompt, |
|
"sampling_steps": sampling_steps, |
|
"cfg_scale": cfg_scale, |
|
"seed": seed |
|
} |
|
|
|
response = requests.get(url, headers=headers, params=params) |
|
|
|
if response.status_code == 200: |
|
return response.content |
|
else: |
|
return None |
|
|
|
iface = gr.Interface( |
|
fn=generate_image, |
|
inputs=[ |
|
gr.Textbox("prompt", label="Prompt"), |
|
gr.Textbox("negative_prompt", label="Negative Prompt"), |
|
gr.Slider(1, 30, 1, label="Sampling Steps", default=10), |
|
gr.Slider(1, 20, 1, label="CFG Scale", default=10), |
|
gr.Textbox("seed", label="Seed (Default: -1)"), |
|
], |
|
outputs=gr.Image(label="Generated Image"), |
|
live=True, |
|
theme="compact" |
|
) |
|
|
|
iface.launch() |
|
|