Spaces:
Sleeping
Sleeping
Commit
·
99e165e
1
Parent(s):
61636ad
Add deepeval endpoint
Browse files- svc/router.py +12 -14
svc/router.py
CHANGED
@@ -2,14 +2,14 @@ from fastapi import APIRouter, HTTPException, Depends
|
|
2 |
import logging
|
3 |
|
4 |
from lm_eval import evaluator
|
5 |
-
from svc.schemas import LMHarnessTaskRequest,
|
6 |
from fastapi.security import OAuth2PasswordRequestForm
|
7 |
from auth.authentication import get_current_user, create_access_token
|
8 |
from dotenv import load_dotenv
|
9 |
import os
|
10 |
import json
|
|
|
11 |
|
12 |
-
from transformers import AutoModelForCausalLM, AutoTokenizer
|
13 |
|
14 |
router = APIRouter()
|
15 |
|
@@ -17,7 +17,7 @@ logging.basicConfig(level=logging.INFO, format="%(asctime)s - %(levelname)s - %(
|
|
17 |
logger = logging.getLogger(__name__)
|
18 |
|
19 |
load_dotenv()
|
20 |
-
|
21 |
@router.post("/token")
|
22 |
async def login_for_access_token(form_data: OAuth2PasswordRequestForm = Depends()):
|
23 |
auth_token = os.getenv("AUTH_UUID")
|
@@ -32,7 +32,7 @@ async def protected_route(username: str = Depends(get_current_user)):
|
|
32 |
return {"message": f"Hello, {username}! This is a protected resource."}
|
33 |
|
34 |
|
35 |
-
@router.post("/chat", response_model=
|
36 |
def inference_model(request: LMHarnessTaskRequest, username: str = Depends(get_current_user)):
|
37 |
try:
|
38 |
logger.info("Inside")
|
@@ -59,16 +59,14 @@ def inference_model(request: LMHarnessTaskRequest, username: str = Depends(get_c
|
|
59 |
logger.info("-------------------results------------------\n")
|
60 |
logger.info(dumped)
|
61 |
logger.info("-------------------results end------------------\n")
|
62 |
-
return
|
|
|
|
|
63 |
|
|
|
|
|
|
|
|
|
|
|
64 |
|
65 |
|
66 |
-
# @router.post("/load_model")
|
67 |
-
# async def load_model(request: LoadModelRequest):
|
68 |
-
# model = AutoModelForCausalLM.from_pretrained(
|
69 |
-
# request.model_name,
|
70 |
-
# torch_dtype="auto",
|
71 |
-
# device_map="auto"
|
72 |
-
# )
|
73 |
-
# tokenizer = AutoTokenizer.from_pretrained(request.model_name)
|
74 |
-
# return model, tokenizer
|
|
|
2 |
import logging
|
3 |
|
4 |
from lm_eval import evaluator
|
5 |
+
from svc.schemas import LMHarnessTaskRequest, TaskResponse, LoadModelRequest, DeepEvalSuiteRequest
|
6 |
from fastapi.security import OAuth2PasswordRequestForm
|
7 |
from auth.authentication import get_current_user, create_access_token
|
8 |
from dotenv import load_dotenv
|
9 |
import os
|
10 |
import json
|
11 |
+
from src.deepeval.deepeval_task_manager import DeepEvalTaskManager
|
12 |
|
|
|
13 |
|
14 |
router = APIRouter()
|
15 |
|
|
|
17 |
logger = logging.getLogger(__name__)
|
18 |
|
19 |
load_dotenv()
|
20 |
+
HF_TOKEN = os.getenv("HF_TOKEN")
|
21 |
@router.post("/token")
|
22 |
async def login_for_access_token(form_data: OAuth2PasswordRequestForm = Depends()):
|
23 |
auth_token = os.getenv("AUTH_UUID")
|
|
|
32 |
return {"message": f"Hello, {username}! This is a protected resource."}
|
33 |
|
34 |
|
35 |
+
@router.post("/chat", response_model=TaskResponse)
|
36 |
def inference_model(request: LMHarnessTaskRequest, username: str = Depends(get_current_user)):
|
37 |
try:
|
38 |
logger.info("Inside")
|
|
|
59 |
logger.info("-------------------results------------------\n")
|
60 |
logger.info(dumped)
|
61 |
logger.info("-------------------results end------------------\n")
|
62 |
+
return TaskResponse(results=dumped)
|
63 |
+
|
64 |
+
|
65 |
|
66 |
+
@router.post("/deepeval/eval", response_model=TaskResponse)
|
67 |
+
async def deep_eval_suite(request: DeepEvalSuiteRequest):
|
68 |
+
des = DeepEvalTaskManager(request.model_name, request.tasks)
|
69 |
+
results = des.run_tasks() #TODO: format should be different. Check metunlp/results repo for the correct format
|
70 |
+
return TaskResponse(results=results)
|
71 |
|
72 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|