guard / app.py
Junaidb's picture
Update app.py
8251b12 verified
raw
history blame
1.2 kB
from fastapi import FastAPI, Request
from fastapi.responses import JSONResponse
from fastapi.middleware.cors import CORSMiddleware
from pydantic import BaseModel
from llmeval import LLM_as_Evaluator
app = FastAPI()
# CORS configuration
origins = ["*"] # Allow all origins; specify domains in production
app.add_middleware(
CORSMiddleware,
allow_origins=origins, # Allows all origins
allow_credentials=True,
allow_methods=["*"], # Allows all HTTP methods
allow_headers=["*"], # Allows all headers
)
le=LLM_as_Evaluator()
# Pydantic model for request body
class EvalInput(BaseModel):
promptversion: str
evaluator_type:str
@app.post("/evaluate")
async def evaluation(request:EvalInput):
prompt_version = request.promptversion
evaluator_type = request.evaluator_type
match evaluator_type :
case "ParadigmIdentification":
le.Paradigm_LLM_Evaluator(prompt_version)
case "ObservationBiologist":
le.Observation_LLM_Evaluator(prompt_version)
# Example processing (replace with actual logic)
return JSONResponse(content={"evalsuccessful":True},status_code=200)