Junaidb commited on
Commit
d3c9f60
·
verified ·
1 Parent(s): 37cb0f4

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +37 -0
app.py ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from fastapi import FastAPI, Request
2
+ from fastapi.responses import JSONResponse
3
+ from fastapi.middleware.cors import CORSMiddleware
4
+ from pydantic import BaseModel
5
+ from llmeval import LLM_as_Evaluator
6
+ app = FastAPI()
7
+
8
+ # CORS configuration
9
+ origins = ["*"] # Allow all origins; specify domains in production
10
+
11
+ app.add_middleware(
12
+ CORSMiddleware,
13
+ allow_origins=origins, # Allows all origins
14
+ allow_credentials=True,
15
+ allow_methods=["*"], # Allows all HTTP methods
16
+ allow_headers=["*"], # Allows all headers
17
+ )
18
+
19
+ le=LLM_as_Evaluator()
20
+
21
+ # Pydantic model for request body
22
+ class EvalInput(BaseModel):
23
+ promptversion: str
24
+ evaluator_type;str
25
+
26
+ @app.post("/evaluate")
27
+ async def evaluation(request:EvalInput):
28
+
29
+ prompt_version = request.promptversion
30
+ evaluator_type=request.evaluator_type
31
+ match evaluator_type:
32
+ case "ParadigmIdentification":
33
+ le.Paradigm_LLM_Evaluator(prompt_version)
34
+
35
+ # Example processing (replace with actual logic)
36
+ return JSONResponse(content={"evalsuccessful":True},status_code=200)
37
+