from fastapi import FastAPI from pydantic import BaseModel from fastapi import HTTPException import os import traceback from fastapi.middleware.cors import CORSMiddleware from gemini import complete_gemini_async class Text(BaseModel): ques: str ans: str key: str app = FastAPI() origins = ["*"] app.add_middleware( CORSMiddleware, allow_origins=origins, allow_credentials=True, allow_methods=["GET", "POST", "PUT", "DELETE", "OPTIONS"], allow_headers=["*"], ) @app.post("/geminiv2") async def geminiv2(data: Text): try: result = await complete_gemini_async((data.ques, data.ans), data.key) return result except Exception as e: raise HTTPException(status_code=500, detail="An error occurred: {}".format(traceback.format_exc()))