gemini-gate / app.py
anhdt-dsai-02's picture
Update app.py
883a744 verified
raw
history blame
822 Bytes
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
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, api_key: str = Security(get_api_key)):
try:
result = await complete_gemini_async((data.ques, data.ans), "ahihi")
return result
except Exception as e:
raise HTTPException(status_code=500, detail="An error occurred: {}".format(traceback.format_exc()))