Spaces:
Running
Running
Yoad
commited on
Commit
·
abf28c9
1
Parent(s):
2b41c1c
Allow preloading leaderboard results
Browse files- src/app.py +34 -1
src/app.py
CHANGED
@@ -37,6 +37,9 @@ if "audio_preview_active" not in st.session_state:
|
|
37 |
|
38 |
if "uploaded_file" not in st.session_state:
|
39 |
st.session_state.results_file = None
|
|
|
|
|
|
|
40 |
|
41 |
if "selected_entry_idx" not in st.session_state:
|
42 |
st.session_state.selected_entry_idx = 0
|
@@ -81,6 +84,13 @@ def on_file_upload():
|
|
81 |
st.session_state.results_file = None
|
82 |
|
83 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
84 |
@st.cache_data
|
85 |
def get_leaderboard_result_csv_paths(root_search_path):
|
86 |
fs = HfFileSystem(token=HF_API_TOKEN)
|
@@ -118,6 +128,8 @@ def choose_input_file_from_leaderboard():
|
|
118 |
|
119 |
on_file_upload()
|
120 |
st.session_state.results_file = uploaded_file
|
|
|
|
|
121 |
st.rerun()
|
122 |
|
123 |
|
@@ -294,6 +306,22 @@ def main():
|
|
294 |
page_title="ASR Evaluation Visualizer", page_icon="🎤", layout="wide"
|
295 |
)
|
296 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
297 |
if not has_api_token:
|
298 |
st.warning("No Hugging Face API token found. Audio previews will not work.")
|
299 |
|
@@ -303,10 +331,15 @@ def main():
|
|
303 |
uploaded_file = st.file_uploader(
|
304 |
"Upload evaluation results CSV",
|
305 |
type=["csv"],
|
306 |
-
on_change=
|
307 |
key="uploaded_file",
|
308 |
)
|
309 |
|
|
|
|
|
|
|
|
|
|
|
310 |
if uploaded_file is not None:
|
311 |
st.session_state.results_file = uploaded_file
|
312 |
|
|
|
37 |
|
38 |
if "uploaded_file" not in st.session_state:
|
39 |
st.session_state.results_file = None
|
40 |
+
if "consumed_query_lb_file" not in st.session_state:
|
41 |
+
st.session_state.consumed_query_lb_file = None
|
42 |
+
|
43 |
|
44 |
if "selected_entry_idx" not in st.session_state:
|
45 |
st.session_state.selected_entry_idx = 0
|
|
|
84 |
st.session_state.results_file = None
|
85 |
|
86 |
|
87 |
+
def on_local_file_upload():
|
88 |
+
if "lb_result_file" in st.query_params:
|
89 |
+
st.query_params.pop("lb_result_file")
|
90 |
+
st.session_state.consumed_query_lb_file = None
|
91 |
+
on_file_upload()
|
92 |
+
|
93 |
+
|
94 |
@st.cache_data
|
95 |
def get_leaderboard_result_csv_paths(root_search_path):
|
96 |
fs = HfFileSystem(token=HF_API_TOKEN)
|
|
|
128 |
|
129 |
on_file_upload()
|
130 |
st.session_state.results_file = uploaded_file
|
131 |
+
st.query_params["lb_result_file"] = selected_file
|
132 |
+
st.session_state.consumed_query_lb_file = selected_file
|
133 |
st.rerun()
|
134 |
|
135 |
|
|
|
306 |
page_title="ASR Evaluation Visualizer", page_icon="🎤", layout="wide"
|
307 |
)
|
308 |
|
309 |
+
# Check for URL parameter for preloading leaderboard results
|
310 |
+
lb_result_file_param = st.query_params.get("lb_result_file")
|
311 |
+
if (
|
312 |
+
lb_result_file_param
|
313 |
+
and st.session_state.consumed_query_lb_file != lb_result_file_param
|
314 |
+
):
|
315 |
+
st.session_state.consumed_query_lb_file = lb_result_file_param
|
316 |
+
leaderboard_file_url = huggingface_hub.hf_hub_url(
|
317 |
+
repo_id="ivrit-ai/hebrew-transcription-leaderboard",
|
318 |
+
subfolder=f"results{Path(lb_result_file_param).parent}",
|
319 |
+
filename=Path(lb_result_file_param).name,
|
320 |
+
repo_type="space",
|
321 |
+
)
|
322 |
+
on_file_upload()
|
323 |
+
st.session_state.results_file = leaderboard_file_url
|
324 |
+
|
325 |
if not has_api_token:
|
326 |
st.warning("No Hugging Face API token found. Audio previews will not work.")
|
327 |
|
|
|
331 |
uploaded_file = st.file_uploader(
|
332 |
"Upload evaluation results CSV",
|
333 |
type=["csv"],
|
334 |
+
on_change=on_local_file_upload,
|
335 |
key="uploaded_file",
|
336 |
)
|
337 |
|
338 |
+
if st.session_state.consumed_query_lb_file is not None:
|
339 |
+
st.subheader(
|
340 |
+
f"Loaded: {st.session_state.consumed_query_lb_file or uploaded_file}"
|
341 |
+
)
|
342 |
+
|
343 |
if uploaded_file is not None:
|
344 |
st.session_state.results_file = uploaded_file
|
345 |
|