Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
Update app.py
Browse files
app.py
CHANGED
@@ -53,11 +53,6 @@ except Exception:
|
|
53 |
restart_space()
|
54 |
|
55 |
LEADERBOARD_DF = get_leaderboard_df(EVAL_RESULTS_PATH, EVAL_REQUESTS_PATH, COLS, BENCHMARK_COLS)
|
56 |
-
print(f"Initial leaderboard_df shape: {LEADERBOARD_DF.shape}")
|
57 |
-
print("Initial leaderboard_df columns:", LEADERBOARD_DF.columns.tolist())
|
58 |
-
print("Initial leaderboard_df sample data:")
|
59 |
-
print(LEADERBOARD_DF.head())
|
60 |
-
|
61 |
original_df = LEADERBOARD_DF
|
62 |
leaderboard_df = original_df.copy()
|
63 |
(
|
@@ -81,34 +76,15 @@ def update_table(
|
|
81 |
show_flagged: bool,
|
82 |
query: str,
|
83 |
):
|
84 |
-
filtered_df = filter_models(
|
85 |
-
hidden_df, type_query, size_query, precision_query,
|
86 |
-
add_special_tokens_query, num_few_shots_query,
|
87 |
-
show_deleted, show_merges, show_flagged
|
88 |
-
)
|
89 |
filtered_df = filter_queries(query, filtered_df)
|
90 |
-
|
91 |
print(f"Filter applied: query={query}, columns={columns}, type_query={type_query}, precision_query={precision_query}")
|
92 |
-
print(
|
93 |
-
|
94 |
-
if not filtered_df.empty:
|
95 |
-
print(filtered_df.head()) # フィルタ後のデータを確認
|
96 |
-
else:
|
97 |
-
print("Filtered DataFrame is empty.")
|
98 |
-
|
99 |
df = select_columns(filtered_df, columns)
|
100 |
-
print(f"DataFrame after selecting columns: {df.shape}")
|
101 |
-
|
102 |
-
if not df.empty:
|
103 |
-
print(df.head()) # 選択後のデータを確認
|
104 |
-
else:
|
105 |
-
print("DataFrame after selecting columns is empty.")
|
106 |
-
|
107 |
return df
|
108 |
|
109 |
|
110 |
-
|
111 |
-
|
112 |
def load_query(request: gr.Request): # triggered only once at startup => read query parameter if it exists
|
113 |
query = request.query_params.get("query") or ""
|
114 |
return query, query # return one for the "search_bar", one for a hidden component that triggers a reload only if value has changed
|
@@ -151,54 +127,33 @@ def filter_queries(query: str, filtered_df: pd.DataFrame):
|
|
151 |
|
152 |
|
153 |
def filter_models(
|
154 |
-
df: pd.DataFrame,
|
155 |
-
type_query: list,
|
156 |
-
size_query: list,
|
157 |
-
precision_query: list,
|
158 |
-
add_special_tokens_query: list,
|
159 |
-
num_few_shots_query: list,
|
160 |
-
show_deleted: bool,
|
161 |
-
show_merges: bool,
|
162 |
-
show_flagged: bool
|
163 |
) -> pd.DataFrame:
|
164 |
-
#
|
165 |
-
print(f"Initial DataFrame shape: {df.shape}")
|
166 |
-
|
167 |
-
# Show deleted models フィルタ
|
168 |
if show_deleted:
|
169 |
filtered_df = df
|
170 |
-
|
171 |
-
else:
|
172 |
filtered_df = df[df[AutoEvalColumn.still_on_hub.name] == True]
|
173 |
-
|
174 |
-
|
175 |
-
#
|
|
|
|
|
|
|
|
|
176 |
type_emoji = [t[0] for t in type_query]
|
177 |
-
filtered_df = filtered_df[
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
filtered_df = filtered_df[filtered_df[AutoEvalColumn.precision.name].isin(precision_query + ["None", "Unknown"])]
|
182 |
-
print(f"After filtering by precision (including 'Unknown'): {filtered_df.shape}")
|
183 |
|
184 |
-
|
185 |
-
filtered_df = filtered_df[filtered_df[AutoEvalColumn.add_special_tokens.name].isin(add_special_tokens_query)]
|
186 |
-
print(f"After filtering by add_special_tokens: {filtered_df.shape}")
|
187 |
-
|
188 |
-
# Num Few Shots フィルタ
|
189 |
-
filtered_df = filtered_df[filtered_df[AutoEvalColumn.num_few_shots.name].isin(num_few_shots_query)]
|
190 |
-
print(f"After filtering by num_few_shots: {filtered_df.shape}")
|
191 |
-
|
192 |
-
# Model size フィルタ
|
193 |
numeric_interval = pd.IntervalIndex(sorted([NUMERIC_INTERVALS[s] for s in size_query]))
|
194 |
-
params_column = pd.to_numeric(
|
195 |
mask = params_column.apply(lambda x: any(numeric_interval.contains(x)))
|
196 |
-
filtered_df = filtered_df[mask]
|
197 |
-
print(f"After filtering by model size: {filtered_df.shape}")
|
198 |
-
|
199 |
return filtered_df
|
200 |
|
201 |
-
|
202 |
leaderboard_df = filter_models(leaderboard_df, [t.to_str(" : ") for t in ModelType], list(NUMERIC_INTERVALS.keys()), [i.value.name for i in Precision], [i.value.name for i in AddSpecialTokens], [i.value.name for i in NumFewShots], False, False, False)
|
203 |
|
204 |
demo = gr.Blocks(css=custom_css)
|
|
|
53 |
restart_space()
|
54 |
|
55 |
LEADERBOARD_DF = get_leaderboard_df(EVAL_RESULTS_PATH, EVAL_REQUESTS_PATH, COLS, BENCHMARK_COLS)
|
|
|
|
|
|
|
|
|
|
|
56 |
original_df = LEADERBOARD_DF
|
57 |
leaderboard_df = original_df.copy()
|
58 |
(
|
|
|
76 |
show_flagged: bool,
|
77 |
query: str,
|
78 |
):
|
79 |
+
filtered_df = filter_models(hidden_df, type_query, size_query, precision_query, add_special_tokens_query, num_few_shots_query, show_deleted, show_merges, show_flagged)
|
|
|
|
|
|
|
|
|
80 |
filtered_df = filter_queries(query, filtered_df)
|
|
|
81 |
print(f"Filter applied: query={query}, columns={columns}, type_query={type_query}, precision_query={precision_query}")
|
82 |
+
print(filtered_df.head()) # フィルタ後のデータを確認
|
83 |
+
|
|
|
|
|
|
|
|
|
|
|
84 |
df = select_columns(filtered_df, columns)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
85 |
return df
|
86 |
|
87 |
|
|
|
|
|
88 |
def load_query(request: gr.Request): # triggered only once at startup => read query parameter if it exists
|
89 |
query = request.query_params.get("query") or ""
|
90 |
return query, query # return one for the "search_bar", one for a hidden component that triggers a reload only if value has changed
|
|
|
127 |
|
128 |
|
129 |
def filter_models(
|
130 |
+
df: pd.DataFrame, type_query: list, size_query: list, precision_query: list, add_special_tokens_query: list, num_few_shots_query: list, show_deleted: bool, show_merges: bool, show_flagged: bool
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
131 |
) -> pd.DataFrame:
|
132 |
+
# Show all models
|
|
|
|
|
|
|
133 |
if show_deleted:
|
134 |
filtered_df = df
|
135 |
+
else: # Show only still on the hub models
|
|
|
136 |
filtered_df = df[df[AutoEvalColumn.still_on_hub.name] == True]
|
137 |
+
|
138 |
+
#if not show_merges:
|
139 |
+
# filtered_df = filtered_df[filtered_df[AutoEvalColumn.merged.name] == False]
|
140 |
+
|
141 |
+
#if not show_flagged:
|
142 |
+
# filtered_df = filtered_df[filtered_df[AutoEvalColumn.flagged.name] == False]
|
143 |
+
|
144 |
type_emoji = [t[0] for t in type_query]
|
145 |
+
filtered_df = filtered_df.loc[df[AutoEvalColumn.model_type_symbol.name].isin(type_emoji)]
|
146 |
+
filtered_df = filtered_df.loc[df[AutoEvalColumn.precision.name].isin(precision_query + ["None"])]
|
147 |
+
filtered_df = filtered_df.loc[df[AutoEvalColumn.add_special_tokens.name].isin(add_special_tokens_query)]
|
148 |
+
filtered_df = filtered_df.loc[df[AutoEvalColumn.num_few_shots.name].isin(num_few_shots_query)]
|
|
|
|
|
149 |
|
150 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
151 |
numeric_interval = pd.IntervalIndex(sorted([NUMERIC_INTERVALS[s] for s in size_query]))
|
152 |
+
params_column = pd.to_numeric(df[AutoEvalColumn.params.name], errors="coerce")
|
153 |
mask = params_column.apply(lambda x: any(numeric_interval.contains(x)))
|
154 |
+
filtered_df = filtered_df.loc[mask]
|
|
|
|
|
155 |
return filtered_df
|
156 |
|
|
|
157 |
leaderboard_df = filter_models(leaderboard_df, [t.to_str(" : ") for t in ModelType], list(NUMERIC_INTERVALS.keys()), [i.value.name for i in Precision], [i.value.name for i in AddSpecialTokens], [i.value.name for i in NumFewShots], False, False, False)
|
158 |
|
159 |
demo = gr.Blocks(css=custom_css)
|