Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
Update app.py
Browse files
app.py
CHANGED
@@ -143,35 +143,51 @@ def filter_models(
|
|
143 |
print("Initial df columns:")
|
144 |
print(df.columns.tolist())
|
145 |
|
146 |
-
#
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
|
152 |
print(f"After deletion filter: {filtered_df.shape}")
|
153 |
|
|
|
154 |
type_emoji = [t[0] for t in type_query]
|
155 |
if 'T' in filtered_df.columns:
|
156 |
-
filtered_df = filtered_df
|
157 |
elif 'Type_Symbol' in filtered_df.columns:
|
158 |
-
filtered_df = filtered_df
|
159 |
else:
|
160 |
print("Warning: Neither 'T' nor 'Type_Symbol' column found in the dataframe")
|
161 |
-
# filtered_df = filtered_df.loc[df[AutoEvalColumn.model_type_symbol.name].isin(type_emoji)]
|
162 |
-
if 'Unknown' not in precision_query:
|
163 |
-
precision_query.append('Unknown')
|
164 |
-
filtered_df = filtered_df.loc[filtered_df[AutoEvalColumn.precision.name].isin(precision_query)]
|
165 |
-
filtered_df = filtered_df.loc[filtered_df[AutoEvalColumn.add_special_tokens.name].isin(add_special_tokens_query + ["Unknown"])]
|
166 |
-
filtered_df = filtered_df.loc[filtered_df[AutoEvalColumn.num_few_shots.name].isin(num_few_shots_query + ["Unknown"])]
|
167 |
-
print(f"After num_few_shots filter: {filtered_df.shape}")
|
168 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
169 |
|
|
|
170 |
numeric_interval = pd.IntervalIndex(sorted([NUMERIC_INTERVALS[s] for s in size_query]))
|
171 |
-
params_column = pd.to_numeric(
|
172 |
-
mask = params_column.apply(lambda x: any(numeric_interval.contains(x)))
|
173 |
-
filtered_df = filtered_df
|
174 |
print(f"After size filter: {filtered_df.shape}")
|
|
|
|
|
|
|
|
|
|
|
175 |
print("Filtered dataframe head:")
|
176 |
print(filtered_df.head())
|
177 |
print("Column names:")
|
@@ -180,9 +196,11 @@ def filter_models(
|
|
180 |
print(filtered_df.dtypes)
|
181 |
print("Final filtered dataframe sample:")
|
182 |
print(filtered_df.head().to_dict('records'))
|
|
|
183 |
filtered_df = filtered_df.rename(columns={'Type_Symbol': 'T'})
|
184 |
print("Filtered DataFrame sample:")
|
185 |
print(filtered_df.head().to_dict('records'))
|
|
|
186 |
filtered_df = filtered_df.astype(str)
|
187 |
return filtered_df
|
188 |
|
|
|
143 |
print("Initial df columns:")
|
144 |
print(df.columns.tolist())
|
145 |
|
146 |
+
filtered_df = df.copy() # Create a copy to avoid modifying the original dataframe
|
147 |
+
|
148 |
+
# Show all models (comment out for debugging)
|
149 |
+
# if not show_deleted:
|
150 |
+
# filtered_df = filtered_df[filtered_df[AutoEvalColumn.still_on_hub.name] == True]
|
151 |
|
152 |
print(f"After deletion filter: {filtered_df.shape}")
|
153 |
|
154 |
+
# Type filter
|
155 |
type_emoji = [t[0] for t in type_query]
|
156 |
if 'T' in filtered_df.columns:
|
157 |
+
filtered_df = filtered_df[filtered_df['T'].isin(type_emoji + ['?'])] # Include '?' as a valid type
|
158 |
elif 'Type_Symbol' in filtered_df.columns:
|
159 |
+
filtered_df = filtered_df[filtered_df['Type_Symbol'].isin(type_emoji + ['?'])]
|
160 |
else:
|
161 |
print("Warning: Neither 'T' nor 'Type_Symbol' column found in the dataframe")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
162 |
|
163 |
+
print(f"After type filter: {filtered_df.shape}")
|
164 |
+
|
165 |
+
# Precision filter
|
166 |
+
precision_query = precision_query + ['Unknown', '?']
|
167 |
+
filtered_df = filtered_df[filtered_df[AutoEvalColumn.precision.name].isin(precision_query)]
|
168 |
+
print(f"After precision filter: {filtered_df.shape}")
|
169 |
+
|
170 |
+
# Add Special Tokens filter
|
171 |
+
add_special_tokens_query = add_special_tokens_query + ["Unknown"]
|
172 |
+
filtered_df = filtered_df[filtered_df[AutoEvalColumn.add_special_tokens.name].isin(add_special_tokens_query)]
|
173 |
+
print(f"After add_special_tokens filter: {filtered_df.shape}")
|
174 |
+
|
175 |
+
# Num Few Shots filter
|
176 |
+
num_few_shots_query = num_few_shots_query + ["Unknown"]
|
177 |
+
filtered_df = filtered_df[filtered_df[AutoEvalColumn.num_few_shots.name].isin(num_few_shots_query)]
|
178 |
+
print(f"After num_few_shots filter: {filtered_df.shape}")
|
179 |
|
180 |
+
# Size filter
|
181 |
numeric_interval = pd.IntervalIndex(sorted([NUMERIC_INTERVALS[s] for s in size_query]))
|
182 |
+
params_column = pd.to_numeric(filtered_df[AutoEvalColumn.params.name], errors="coerce")
|
183 |
+
mask = params_column.apply(lambda x: pd.isna(x) or any(numeric_interval.contains(x)))
|
184 |
+
filtered_df = filtered_df[mask]
|
185 |
print(f"After size filter: {filtered_df.shape}")
|
186 |
+
|
187 |
+
if filtered_df.empty:
|
188 |
+
print("Warning: Filtered dataframe is empty!")
|
189 |
+
return pd.DataFrame(columns=df.columns) # Return an empty dataframe with the same columns
|
190 |
+
|
191 |
print("Filtered dataframe head:")
|
192 |
print(filtered_df.head())
|
193 |
print("Column names:")
|
|
|
196 |
print(filtered_df.dtypes)
|
197 |
print("Final filtered dataframe sample:")
|
198 |
print(filtered_df.head().to_dict('records'))
|
199 |
+
|
200 |
filtered_df = filtered_df.rename(columns={'Type_Symbol': 'T'})
|
201 |
print("Filtered DataFrame sample:")
|
202 |
print(filtered_df.head().to_dict('records'))
|
203 |
+
|
204 |
filtered_df = filtered_df.astype(str)
|
205 |
return filtered_df
|
206 |
|