Spaces:
Sleeping
Sleeping
import gradio as gr | |
import requests | |
from PIL import Image | |
from io import BytesIO | |
# Substitua 'YOUR_HUGGINGFACE_API_KEY' pela sua chave de API real | |
API_KEY = "YOUR_HUGGINGFACE_API_KEY" | |
# Função para gerar imagem usando a API do Hugging Face | |
def generate_image(prompt: str): | |
API_URL = "https://api-inference.huggingface.co/models/CompVis/stable-diffusion-v1-4" | |
headers = {"Authorization": f"Bearer {API_KEY}"} | |
response = requests.post(API_URL, headers=headers, json={"inputs": prompt}) | |
if response.status_code == 200: | |
image_data = response.content | |
image = Image.open(BytesIO(image_data)) | |
return image | |
else: | |
raise gr.Error(f"Erro ao gerar imagem: {response.status_code} - {response.text}") | |
# Função para criar a interface do Gradio | |
def gradio_interface(): | |
with gr.Blocks() as demo: | |
gr.Markdown("## Gere imagens usando Stable Diffusion") | |
with gr.Row(): | |
with gr.Column(): | |
prompt = gr.Textbox(label="Prompt", placeholder="Digite o prompt aqui...") | |
run_button = gr.Button("Gerar Imagem") | |
with gr.Column(): | |
result = gr.Image(label="Imagem Gerada") | |
run_button.click( | |
fn=generate_image, | |
inputs=prompt, | |
outputs=result, | |
) | |
return demo | |
if __name__ == "__main__": | |
demo = gradio_interface() | |
demo.launch() |