sh1gechan commited on
Commit
419aeaf
·
verified ·
1 Parent(s): c163b21

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +31 -31
app.py CHANGED
@@ -68,9 +68,9 @@ leaderboard_df = original_df.copy()
68
  # Searching and filtering
69
  def update_table(
70
  hidden_df: pd.DataFrame,
71
- columns: list,
72
  type_query: list,
73
- precision_query: str,
74
  size_query: list,
75
  add_special_tokens_query: list,
76
  num_few_shots_query: list,
@@ -82,21 +82,20 @@ def update_table(
82
  print(f"Update table called with: type_query={type_query}, precision_query={precision_query}, size_query={size_query}")
83
  print(f"hidden_df shape before filtering: {hidden_df.shape}")
84
 
85
- 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)
 
 
86
  print(f"filtered_df shape after filter_models: {filtered_df.shape}")
87
 
88
- filtered_df = filter_queries(query, filtered_df)
89
- print(f"filtered_df shape after filter_queries: {filtered_df.shape}")
 
90
 
91
- print(f"Filter applied: query={query}, columns={columns}, type_query={type_query}, precision_query={precision_query}")
92
  print("Filtered dataframe head:")
93
  print(filtered_df.head())
94
 
95
- df = select_columns(filtered_df, columns)
96
- print(f"Final df shape: {df.shape}")
97
- print("Final dataframe head:")
98
- print(df.head())
99
- return df
100
 
101
 
102
  def load_query(request: gr.Request): # triggered only once at startup => read query parameter if it exists
@@ -141,45 +140,46 @@ def filter_queries(query: str, filtered_df: pd.DataFrame):
141
 
142
 
143
  def filter_models(
144
- 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
 
 
145
  ) -> pd.DataFrame:
146
  print(f"Initial df shape: {df.shape}")
147
- print(f"Initial df content:\n{df}")
148
-
149
  filtered_df = df
150
 
151
- # Model Type フィルタリング
152
- type_emoji = [t.split()[0] for t in type_query]
153
- filtered_df = filtered_df[filtered_df['T'].isin(type_emoji)]
154
  print(f"After type filter: {filtered_df.shape}")
155
 
156
- # Precision フィルタリング
157
- filtered_df = filtered_df[filtered_df['Precision'].isin(precision_query + ['Unknown', '?'])]
158
  print(f"After precision filter: {filtered_df.shape}")
159
 
160
- # Model Size フィルタリング
161
- if 'Unknown' in size_query:
162
- size_mask = filtered_df['#Params (B)'].isna() | (filtered_df['#Params (B)'] == 0)
163
- else:
164
- size_mask = filtered_df['#Params (B)'].apply(lambda x: any(x in NUMERIC_INTERVALS[s] for s in size_query if s != 'Unknown'))
165
- filtered_df = filtered_df[size_mask]
166
  print(f"After size filter: {filtered_df.shape}")
167
 
168
- # Add Special Tokens フィルタリング
169
- filtered_df = filtered_df[filtered_df['Add Special Tokens'].isin(add_special_tokens_query + ['Unknown', '?'])]
170
  print(f"After add_special_tokens filter: {filtered_df.shape}")
171
 
172
- # Num Few Shots フィルタリング
173
- filtered_df = filtered_df[filtered_df['Few-shot'].astype(str).isin([str(x) for x in num_few_shots_query] + ['Unknown', '?'])]
174
  print(f"After num_few_shots filter: {filtered_df.shape}")
175
 
176
- # Show deleted models フィルタリング
177
- if not show_deleted:
178
  filtered_df = filtered_df[filtered_df['Available on the hub'] == True]
179
  print(f"After show_deleted filter: {filtered_df.shape}")
180
 
181
  print("Filtered dataframe head:")
182
  print(filtered_df.head())
 
183
  return filtered_df
184
 
185
  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)
 
68
  # Searching and filtering
69
  def update_table(
70
  hidden_df: pd.DataFrame,
71
+ shown_columns: list,
72
  type_query: list,
73
+ precision_query: list,
74
  size_query: list,
75
  add_special_tokens_query: list,
76
  num_few_shots_query: list,
 
82
  print(f"Update table called with: type_query={type_query}, precision_query={precision_query}, size_query={size_query}")
83
  print(f"hidden_df shape before filtering: {hidden_df.shape}")
84
 
85
+ filtered_df = filter_models(hidden_df, type_query, size_query, precision_query,
86
+ add_special_tokens_query, num_few_shots_query,
87
+ show_deleted, show_merges, show_flagged, shown_columns)
88
  print(f"filtered_df shape after filter_models: {filtered_df.shape}")
89
 
90
+ if query:
91
+ filtered_df = filter_queries(query, filtered_df)
92
+ print(f"filtered_df shape after filter_queries: {filtered_df.shape}")
93
 
94
+ print(f"Filter applied: query={query}, columns={shown_columns}, type_query={type_query}, precision_query={precision_query}")
95
  print("Filtered dataframe head:")
96
  print(filtered_df.head())
97
 
98
+ return select_columns(filtered_df, shown_columns)
 
 
 
 
99
 
100
 
101
  def load_query(request: gr.Request): # triggered only once at startup => read query parameter if it exists
 
140
 
141
 
142
  def filter_models(
143
+ df: pd.DataFrame, type_query: list, size_query: list, precision_query: list,
144
+ add_special_tokens_query: list, num_few_shots_query: list, show_deleted: bool,
145
+ show_merges: bool, show_flagged: bool, shown_columns: list
146
  ) -> pd.DataFrame:
147
  print(f"Initial df shape: {df.shape}")
148
+
 
149
  filtered_df = df
150
 
151
+ if 'T' in shown_columns:
152
+ type_emoji = [t.split()[0] for t in type_query]
153
+ filtered_df = filtered_df[filtered_df['T'].isin(type_emoji)]
154
  print(f"After type filter: {filtered_df.shape}")
155
 
156
+ if 'Precision' in shown_columns:
157
+ filtered_df = filtered_df[filtered_df['Precision'].isin(precision_query + ['Unknown', '?'])]
158
  print(f"After precision filter: {filtered_df.shape}")
159
 
160
+ if '#Params (B)' in shown_columns:
161
+ if 'Unknown' in size_query:
162
+ size_mask = filtered_df['#Params (B)'].isna() | (filtered_df['#Params (B)'] == 0)
163
+ else:
164
+ size_mask = filtered_df['#Params (B)'].apply(lambda x: any(pd.Interval(NUMERIC_INTERVALS[s].left, NUMERIC_INTERVALS[s].right).contains(x) for s in size_query if s != 'Unknown'))
165
+ filtered_df = filtered_df[size_mask]
166
  print(f"After size filter: {filtered_df.shape}")
167
 
168
+ if 'Add Special Tokens' in shown_columns:
169
+ filtered_df = filtered_df[filtered_df['Add Special Tokens'].isin(add_special_tokens_query + ['Unknown', '?'])]
170
  print(f"After add_special_tokens filter: {filtered_df.shape}")
171
 
172
+ if 'Few-shot' in shown_columns:
173
+ filtered_df = filtered_df[filtered_df['Few-shot'].astype(str).isin([str(x) for x in num_few_shots_query] + ['Unknown', '?'])]
174
  print(f"After num_few_shots filter: {filtered_df.shape}")
175
 
176
+ if not show_deleted and 'Available on the hub' in shown_columns:
 
177
  filtered_df = filtered_df[filtered_df['Available on the hub'] == True]
178
  print(f"After show_deleted filter: {filtered_df.shape}")
179
 
180
  print("Filtered dataframe head:")
181
  print(filtered_df.head())
182
+
183
  return filtered_df
184
 
185
  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)