tan200224's picture
Update app.py
030dbb8 verified
raw
history blame contribute delete
926 Bytes
from fastapi import FastAPI, UploadFile
from fastapi.responses import JSONResponse
from hf_diffusion_service import HFDiffusionService
from PIL import Image
import io, base64
import uvicorn
app = FastAPI()
service = HFDiffusionService()
@app.post("/generate")
async def generate(file: UploadFile):
# Read file bytes
image_bytes = await file.read()
mask = Image.open(io.BytesIO(image_bytes)).convert("L")
# Generate CT
result = service.generate_image(mask)
# Convert to base64
buffer = io.BytesIO()
result.save(buffer, format="PNG")
base64_img = base64.b64encode(buffer.getvalue()).decode("utf-8")
return JSONResponse(content={"image": f"data:image/png;base64,{base64_img}"})
# ✅ Add this to start FastAPI server for Spaces
if __name__ == "__main__":
# Run uvicorn explicitly so Hugging Face sees a running server
uvicorn.run(app, host="0.0.0.0", port=7860)