Spaces:
Sleeping
Sleeping
import os | |
from fastapi import FastAPI, HTTPException, Depends | |
from fastapi.middleware.cors import CORSMiddleware | |
from fastapi import File, UploadFile | |
from PIL import Image | |
import model | |
app = FastAPI() | |
# Add the CORSMiddleware to enable Cross-Origin Resource Sharing | |
app.add_middleware( | |
CORSMiddleware, | |
allow_origins=["*"], # Allow all origins | |
allow_credentials=True, | |
allow_methods=["*"], | |
allow_headers=["*"], | |
) | |
# This is the endpoint for updating the bot's Knowledge Base | |
async def upload_image(file: UploadFile = File(...)): | |
# Save the uploaded image to a file | |
with open('image.jpg', 'wb') as image: | |
contents = await file.read() # Read the content of the uploaded file | |
image.write(contents) # Write the content to the image file | |
# Process the image | |
image_pil = Image.open('image.jpg') # Open the image using PIL | |
# Predict the image class | |
predicted_class = model.predict(image_pil) | |
# print(f"Predicted label: {predicted_class}") | |
image_pil.close() | |
# Delete the image file after processing | |
os.remove("image.jpg") | |
return {'predicted_class': predicted_class} |