Gertie2013's picture
Create python/server.py
d69eb62 verified
import os
import base64
from fastapi import FastAPI, HTTPException
from pydantic import BaseModel
from google import genai
import uvicorn
GOOGLE_API_KEY = os.environ.get("GOOGLE_API_KEY")
if not GOOGLE_API_KEY:
raise RuntimeError("GOOGLE_API_KEY environment variable is not set")
client = genai.Client(api_key=GOOGLE_API_KEY)
app = FastAPI()
class Prompt(BaseModel):
prompt: str
@app.post("/generate")
def generate_image(data: Prompt):
try:
result = client.images.generate(
model="gemini-2.0-flash-exp-image",
prompt=data.prompt,
size="1024x1024"
)
# Adjust this depending on the exact response shape of google-genai
image_bytes = result.images[0].data # example; adapt if needed
b64 = base64.b64encode(image_bytes).decode("utf-8")
return {"image": b64}
except Exception as e:
raise HTTPException(status_code=500, detail=str(e))
if __name__ == "__main__":
uvicorn.run(app, host="0.0.0.0", port=8000)