Views
No views yet
Args:
prompt: Il prompt per generare l'immagine.
**kwargs: Impostazioni aggiuntive per la generazione dell'immagine.
Returns:
L'immagine generata.
"""
# Genera l'immagine.
with torch.autocast("cuda"):
immagine = pipe(prompt, **kwargs).images[0]
# Restituisci l'immagine.
return immagineArgs:
prompt: Il prompt per generare le immagini.
num_images: Il numero di immagini da generare.
**kwargs: Impostazioni aggiuntive per la generazione dell'immagine.
Returns:
Una lista delle immagini generate.
"""
# Genera le immagini.
with torch.autocast("cuda"):
immagini = pipe(prompt, num_images_per_prompt=num_images, **kwargs).images
# Restituisci le immagini.
return immaginiArgs:
immagine: L'immagine da salvare.
percorso_file: Il percorso del file in cui salvare l'immagine.
"""
# Salva l'immagine.
immagine.save(percorso_file)Args:
immagini: La lista di immagini da salvare.
cartella_output: La cartella in cui salvare le immagini.
"""
# Crea la cartella di output, se non esiste.
os.makedirs(cartella_output, exist_ok=True)
# Salva le immagini.
for i, immagine in enumerate(immagini):
percorso_file = os.path.join(cartella_output, f"immagine-{i}.png")
salva_immagine(immagine, percorso_file)import gradio as gr
# Crea l'interfaccia utente di Gradio.
con gr.Blocks() as interfaccia:
with gr.Row():
with gr.Column():
# Input per il prompt.
prompt = gr.Textbox(label="Prompt", placeholder="Inserisci un prompt qui")
# Input per il numero di immagini da generare.
num_images = gr.Slider(
label="Numero di immagini",
minimum=1,
maximum=10,
value=1,
step=1
)
with gr.Accordion(label="Impostazioni avanzate", open=False):
# Input per il numero di passi di inferenza.
num_inference_steps = gr.Slider(
label="Numero di passi di inferenza",
minimum=1,
maximum=150,
value=50,
step=1
)
# Input per la scala di guida.
guidance_scale = gr.Slider(
label="Scala di guida",
minimum=1.0,
maximum=15.0,
value=7.5,
step=0.1
)
# Input per il seme.
seed = gr.Textbox(label="Seme", placeholder="Lascia vuoto per casuale")
# Pulsante per generare le immagini.
genera_button = gr.Button("Genera")
with gr.Column():
# Output per le immagini generate.
galleria_output = gr.Gallery(label="Immagini generate")
# Imposta l'azione del pulsante di generazione.
genera_button.click(
fn=lambda prompt, num_images, num_inference_steps, guidance_scale, seed: genera_immagini(
prompt=prompt,
num_images_per_prompt=num_images,
num_inference_steps=num_inference_steps,
guidance_scale=guidance_scale,
generator=None if seed == "" else torch.Generator().manual_seed(int(seed)),
),
inputs=[
prompt,
num_images,
num_inference_steps,
guidance_scale,
seed,
],
outputs=galleria_output,
)
# Avvia l'interfaccia utente di Gradio.
interfaccia.launch(share=True)