Spaces:
Sleeping
Sleeping
Commit
·
c12a803
1
Parent(s):
f24157e
Add other configs to result
Browse files- svc/router.py +42 -1
svc/router.py
CHANGED
@@ -10,6 +10,9 @@ import os
|
|
10 |
import json
|
11 |
from src.deepeval.deepeval_task_manager import DeepEvalTaskManager
|
12 |
import torch
|
|
|
|
|
|
|
13 |
|
14 |
router = APIRouter()
|
15 |
|
@@ -18,6 +21,14 @@ 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")
|
@@ -70,8 +81,38 @@ def inference_model(request: LMHarnessTaskRequest, username: str = Depends(get_c
|
|
70 |
@router.post("/deepeval/eval", response_model=TaskResponse)
|
71 |
async def deep_eval_suite(request: DeepEvalSuiteRequest):
|
72 |
des = DeepEvalTaskManager(request.model_name, request.tasks)
|
|
|
73 |
results = des.run_tasks() #TODO: format should be different. Check metunlp/results repo for the correct format
|
74 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
75 |
|
76 |
return TaskResponse(results=json_results)
|
77 |
|
|
|
10 |
import json
|
11 |
from src.deepeval.deepeval_task_manager import DeepEvalTaskManager
|
12 |
import torch
|
13 |
+
from time import time
|
14 |
+
from huggingface_hub import HfApi, ModelInfo
|
15 |
+
|
16 |
|
17 |
router = APIRouter()
|
18 |
|
|
|
21 |
|
22 |
load_dotenv()
|
23 |
HF_TOKEN = os.getenv("HF_TOKEN")
|
24 |
+
|
25 |
+
# Or configure a HfApi client
|
26 |
+
hf_api = HfApi(
|
27 |
+
endpoint="https://huggingface.co", # Can be a Private Hub endpoint.
|
28 |
+
token=HF_TOKEN, # Token is not persisted on the machine.
|
29 |
+
)
|
30 |
+
|
31 |
+
|
32 |
@router.post("/token")
|
33 |
async def login_for_access_token(form_data: OAuth2PasswordRequestForm = Depends()):
|
34 |
auth_token = os.getenv("AUTH_UUID")
|
|
|
81 |
@router.post("/deepeval/eval", response_model=TaskResponse)
|
82 |
async def deep_eval_suite(request: DeepEvalSuiteRequest):
|
83 |
des = DeepEvalTaskManager(request.model_name, request.tasks)
|
84 |
+
start_time = time()
|
85 |
results = des.run_tasks() #TODO: format should be different. Check metunlp/results repo for the correct format
|
86 |
+
end_time = time()
|
87 |
+
duration = round(end_time - start_time, 2) # total_evaluation_time_seconds
|
88 |
+
|
89 |
+
model_info: ModelInfo = hf_api.model_info(request.model_name)
|
90 |
+
|
91 |
+
config = {
|
92 |
+
"model_source": "hf",
|
93 |
+
"num_fewshot": 0,
|
94 |
+
"batch_size": 8,
|
95 |
+
"batch_sizes": [],
|
96 |
+
"device": "cuda:0", # TODO: take this from requests
|
97 |
+
# "no_cache": true,
|
98 |
+
# "limit": null,
|
99 |
+
# "bootstrap_iters": 100000,
|
100 |
+
# "description_dict": null,
|
101 |
+
"model_dtype": "torch.float16", # TODO: take this from requests
|
102 |
+
"model_name": request.model_name,
|
103 |
+
"model_sha": model_info.sha
|
104 |
+
}
|
105 |
+
|
106 |
+
tbr_dict = {
|
107 |
+
"results": results,
|
108 |
+
"config": config,
|
109 |
+
"total_evaluation_time_seconds": duration,
|
110 |
+
"start_time": start_time,
|
111 |
+
"end_time": end_time
|
112 |
+
}
|
113 |
+
|
114 |
+
|
115 |
+
json_results = json.dumps(tbr_dict)
|
116 |
|
117 |
return TaskResponse(results=json_results)
|
118 |
|