Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
Update src/leaderboard/read_evals.py
Browse files- src/leaderboard/read_evals.py +38 -38
src/leaderboard/read_evals.py
CHANGED
@@ -174,27 +174,6 @@ class EvalResult:
|
|
174 |
return data_dict
|
175 |
|
176 |
|
177 |
-
# def get_request_file_for_model(requests_path, model_name, precision):
|
178 |
-
# """Selects the correct request file for a given model. Only keeps runs tagged as FINISHED"""
|
179 |
-
# request_files = os.path.join(
|
180 |
-
# requests_path,
|
181 |
-
# f"{model_name}_eval_request_*.json",
|
182 |
-
# )
|
183 |
-
# request_files = glob.glob(request_files)
|
184 |
-
|
185 |
-
# # Select correct request file (precision)
|
186 |
-
# request_file = ""
|
187 |
-
# request_files = sorted(request_files, reverse=True)
|
188 |
-
# for tmp_request_file in request_files:
|
189 |
-
# with open(tmp_request_file, "r") as f:
|
190 |
-
# req_content = json.load(f)
|
191 |
-
# if (
|
192 |
-
# req_content["status"] in ["FINISHED"]
|
193 |
-
# and req_content["precision"] == precision.split(".")[-1]
|
194 |
-
# ):
|
195 |
-
# request_file = tmp_request_file
|
196 |
-
# return request_file
|
197 |
-
|
198 |
def get_request_file_for_model(requests_path, model_name, precision):
|
199 |
"""Selects the correct request file for a given model. Only keeps runs tagged as FINISHED"""
|
200 |
request_files = os.path.join(
|
@@ -203,33 +182,54 @@ def get_request_file_for_model(requests_path, model_name, precision):
|
|
203 |
)
|
204 |
request_files = glob.glob(request_files)
|
205 |
|
206 |
-
#
|
207 |
-
precision_candidates = []
|
208 |
-
for request_file in request_files:
|
209 |
-
# ファイル名から precision を抽出する (例: _bfloat16_ や _float16_ を検出)
|
210 |
-
if "_bfloat16_" in request_file:
|
211 |
-
precision_candidates.append("bfloat16")
|
212 |
-
elif "_float16_" in request_file:
|
213 |
-
precision_candidates.append("float16")
|
214 |
-
|
215 |
-
# precisionがUnknownの場合、最初の候補を使用する
|
216 |
-
if precision == "Unknown" and precision_candidates:
|
217 |
-
precision = precision_candidates[0] # 最初の精度を使用(他の候補も考慮したければ処理を変更)
|
218 |
-
|
219 |
-
print(f"Final precision used for request file search: {precision}")
|
220 |
-
|
221 |
-
# precisionに基づいてファイルを検索
|
222 |
request_file = ""
|
|
|
223 |
for tmp_request_file in request_files:
|
224 |
with open(tmp_request_file, "r") as f:
|
225 |
req_content = json.load(f)
|
226 |
if (
|
227 |
req_content["status"] in ["FINISHED"]
|
228 |
-
and req_content["precision"] == precision
|
229 |
):
|
230 |
request_file = tmp_request_file
|
231 |
return request_file
|
232 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
233 |
|
234 |
|
235 |
def get_raw_eval_results(results_path: str, requests_path: str) -> list[EvalResult]:
|
|
|
174 |
return data_dict
|
175 |
|
176 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
177 |
def get_request_file_for_model(requests_path, model_name, precision):
|
178 |
"""Selects the correct request file for a given model. Only keeps runs tagged as FINISHED"""
|
179 |
request_files = os.path.join(
|
|
|
182 |
)
|
183 |
request_files = glob.glob(request_files)
|
184 |
|
185 |
+
# Select correct request file (precision)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
186 |
request_file = ""
|
187 |
+
request_files = sorted(request_files, reverse=True)
|
188 |
for tmp_request_file in request_files:
|
189 |
with open(tmp_request_file, "r") as f:
|
190 |
req_content = json.load(f)
|
191 |
if (
|
192 |
req_content["status"] in ["FINISHED"]
|
193 |
+
and req_content["precision"] == precision.split(".")[-1]
|
194 |
):
|
195 |
request_file = tmp_request_file
|
196 |
return request_file
|
197 |
|
198 |
+
# def get_request_file_for_model(requests_path, model_name, precision):
|
199 |
+
# """Selects the correct request file for a given model. Only keeps runs tagged as FINISHED"""
|
200 |
+
# request_files = os.path.join(
|
201 |
+
# requests_path,
|
202 |
+
# f"{model_name}_eval_request_*.json",
|
203 |
+
# )
|
204 |
+
# request_files = glob.glob(request_files)
|
205 |
+
|
206 |
+
# # Precisionの候補をリクエストファイルから動的に取得
|
207 |
+
# precision_candidates = []
|
208 |
+
# for request_file in request_files:
|
209 |
+
# # ファイル名から precision を抽出する (例: _bfloat16_ や _float16_ を検出)
|
210 |
+
# if "_bfloat16_" in request_file:
|
211 |
+
# precision_candidates.append("bfloat16")
|
212 |
+
# elif "_float16_" in request_file:
|
213 |
+
# precision_candidates.append("float16")
|
214 |
+
|
215 |
+
# # precisionがUnknownの場合、最初の候補を使用する
|
216 |
+
# if precision == "Unknown" and precision_candidates:
|
217 |
+
# precision = precision_candidates[0] # 最初の精度を使用(他の候補も考慮したければ処理を変更)
|
218 |
+
|
219 |
+
# print(f"Final precision used for request file search: {precision}")
|
220 |
+
|
221 |
+
# # precisionに基づいてファイルを検索
|
222 |
+
# request_file = ""
|
223 |
+
# for tmp_request_file in request_files:
|
224 |
+
# with open(tmp_request_file, "r") as f:
|
225 |
+
# req_content = json.load(f)
|
226 |
+
# if (
|
227 |
+
# req_content["status"] in ["FINISHED"]
|
228 |
+
# and req_content["precision"] == precision
|
229 |
+
# ):
|
230 |
+
# request_file = tmp_request_file
|
231 |
+
# return request_file
|
232 |
+
|
233 |
|
234 |
|
235 |
def get_raw_eval_results(results_path: str, requests_path: str) -> list[EvalResult]:
|