Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
Commit
·
995d9de
1
Parent(s):
81e335d
Refactor search_leaderboard to accept columns to show and filter results accordingly
Browse files
app.py
CHANGED
@@ -41,31 +41,36 @@ CITATION_BUTTON_TEXT = """
|
|
41 |
"""
|
42 |
|
43 |
df = None
|
|
|
44 |
|
45 |
-
def search_leaderboard(model_name):
|
46 |
if len(model_name.strip()) == 0:
|
47 |
-
return df
|
48 |
|
49 |
threshold = 95 # You can adjust this value to make the search more or less strict
|
|
|
50 |
|
51 |
def calculate_similarity(row):
|
52 |
similarity = fuzz.partial_ratio(model_name.lower(), row["Model"].lower())
|
53 |
return similarity if similarity >= threshold else 0
|
54 |
|
55 |
# Add a new column for similarity scores
|
56 |
-
|
57 |
|
58 |
# Filter and sort the dataframe
|
59 |
-
filtered_df =
|
60 |
|
61 |
# Remove the similarity column before returning
|
62 |
filtered_df = filtered_df.drop('similarity', axis=1)
|
63 |
|
|
|
|
|
|
|
64 |
return filtered_df
|
65 |
|
66 |
|
67 |
def main():
|
68 |
-
global df
|
69 |
df = load_retrieval_results()
|
70 |
df[["Model"]] = df[["Model"]].applymap(lambda x: f'<a href="https://huggingface.co/{x}" target="_blank">{x}</a>')
|
71 |
df.drop(columns=["Revision", "Precision", "Task"], inplace=True)
|
@@ -103,11 +108,11 @@ def main():
|
|
103 |
# Submit the search box and the leaderboard
|
104 |
search_box_retrieval.input(
|
105 |
search_leaderboard,
|
106 |
-
inputs=[search_box_retrieval],
|
107 |
outputs=retrieval_leaderboard
|
108 |
)
|
109 |
columns_to_show_input.select(
|
110 |
-
lambda columns:
|
111 |
inputs=columns_to_show_input,
|
112 |
outputs=retrieval_leaderboard
|
113 |
)
|
|
|
41 |
"""
|
42 |
|
43 |
df = None
|
44 |
+
original_columns_order = None
|
45 |
|
46 |
+
def search_leaderboard(model_name, columns_to_show):
|
47 |
if len(model_name.strip()) == 0:
|
48 |
+
return df.loc[:, columns_to_show]
|
49 |
|
50 |
threshold = 95 # You can adjust this value to make the search more or less strict
|
51 |
+
filtered_df = df.copy()
|
52 |
|
53 |
def calculate_similarity(row):
|
54 |
similarity = fuzz.partial_ratio(model_name.lower(), row["Model"].lower())
|
55 |
return similarity if similarity >= threshold else 0
|
56 |
|
57 |
# Add a new column for similarity scores
|
58 |
+
filtered_df["similarity"] = filtered_df.apply(calculate_similarity, axis=1)
|
59 |
|
60 |
# Filter and sort the dataframe
|
61 |
+
filtered_df = filtered_df[filtered_df["similarity"] > 0].sort_values('similarity', ascending=False)
|
62 |
|
63 |
# Remove the similarity column before returning
|
64 |
filtered_df = filtered_df.drop('similarity', axis=1)
|
65 |
|
66 |
+
# Filter the columns to show
|
67 |
+
filtered_df = filtered_df.loc[:, columns_to_show]
|
68 |
+
|
69 |
return filtered_df
|
70 |
|
71 |
|
72 |
def main():
|
73 |
+
global df, original_columns_order
|
74 |
df = load_retrieval_results()
|
75 |
df[["Model"]] = df[["Model"]].applymap(lambda x: f'<a href="https://huggingface.co/{x}" target="_blank">{x}</a>')
|
76 |
df.drop(columns=["Revision", "Precision", "Task"], inplace=True)
|
|
|
108 |
# Submit the search box and the leaderboard
|
109 |
search_box_retrieval.input(
|
110 |
search_leaderboard,
|
111 |
+
inputs=[search_box_retrieval, columns_to_show_input],
|
112 |
outputs=retrieval_leaderboard
|
113 |
)
|
114 |
columns_to_show_input.select(
|
115 |
+
lambda columns: df.loc[:, columns],
|
116 |
inputs=columns_to_show_input,
|
117 |
outputs=retrieval_leaderboard
|
118 |
)
|