File size: 1,654 Bytes
22ea90a
7d93212
 
22ea90a
7d93212
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
import gradio as gr
from transformers import pipeline
import random

# Load the model
text_to_image_pipeline = pipeline("text-to-image", model="models/Shakker-Labs/FLUX.1-dev-LoRA-add-details")

def generate_image(prompt, cfg_scale, steps, width, height, randomize_seed, seed_value, lora_scale):
    # Randomize seed if checkbox is checked
    if randomize_seed:
        seed_value = random.randint(0, 10000)
    
    # Use the model to generate an image based on the input parameters
    # Here we assume `text_to_image_pipeline` can accept these parameters
    return text_to_image_pipeline(prompt, cfg_scale=cfg_scale, steps=steps, width=width, height=height, seed=seed_value, lora_scale=lora_scale)

# Define the Gradio interface
interface = gr.Interface(
    fn=generate_image,
    inputs=[
        gr.Textbox(label="Enter your text prompt"),
        gr.Slider(minimum=0, maximum=100, step=0.1, default=7.5, label="CFG Scale"),
        gr.Slider(minimum=1, maximum=100, step=1, default=25, label="Steps"),
        gr.Slider(minimum=64, maximum=1024, step=8, default=512, label="Width"),
        gr.Slider(minimum=64, maximum=1024, step=8, default=512, label="Height"),
        gr.Checkbox(label="Randomize Seed"),
        gr.Slider(minimum=0, maximum=10000, step=1, default=1234, label="Seed"),
        gr.Slider(minimum=0, maximum=10, step=0.1, default=1.0, label="Lora Scale")
    ],
    outputs=gr.Image(label="Generated Image"),
    title="Advanced Text-to-Image Generation",
    description="Enter a text prompt and adjust the settings to generate an image.",
    theme="dark",
    layout="vertical"
)

# Launch the interface
interface.launch()