mrchad / app.py
ABGroup2's picture
Create app.py
e854b7d verified
import gradio as gr
import requests
# Replicate API token and model version
API_TOKEN = "r8_W4ccwSux3XNNLWzMEWJnRuAADU3x6oK2gWm45" # Replace with your API token
MODEL_URL = "https://api.replicate.com/v1/predictions"
MODEL_VERSION = "613a21a57e8545532d2f4016a7c3cfa3c7c63fded03001c2e69183d557a929db" # Replace with your model version ID
def generate_image(prompt):
headers = {
"Authorization": f"Token {API_TOKEN}",
"Content-Type": "application/json"
}
data = {
"version": MODEL_VERSION,
"input": {
"prompt": prompt
}
}
response = requests.post(MODEL_URL, headers=headers, json=data)
if response.status_code == 200:
result = response.json()
if "output" in result:
image_url = result["output"][0]
return image_url
else:
return "Error: No output in the response"
else:
return f"Error: {response.status_code} - {response.text}"
# Create Gradio interface
with gr.Blocks() as demo:
gr.Markdown("# Flux LoRA Image Generation")
text_input = gr.Textbox(label="Enter a prompt", placeholder="e.g., A sunset over a mountain range")
image_output = gr.Image(label="Generated Image")
generate_button = gr.Button("Generate Image")
generate_button.click(fn=generate_image, inputs=text_input, outputs=image_output)
if __name__ == "__main__":
demo.launch()