Update app.py
Browse files
app.py
CHANGED
|
@@ -15,20 +15,32 @@ Our approach involved prompting Mixtral to evaluate whether the topics in each c
|
|
| 15 |
Additionally, the model was tasked with finding the topic of each cluster.
|
| 16 |
""")
|
| 17 |
|
|
|
|
| 18 |
@st.cache_data
|
| 19 |
-
def load_data(min_score=1, max_score=10):
|
| 20 |
ds = load_dataset("HuggingFaceTB/FW_clusters_free_topics", split="train", token=HF_TOKEN, num_proc=2)
|
| 21 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 22 |
return ds
|
| 23 |
|
| 24 |
st.subheader("Cluster information")
|
| 25 |
-
col_1, col_2 = st.columns(2)
|
| 26 |
with col_1:
|
| 27 |
min_value = st.slider('Select minimum educational score', 1, 10, 1, key='min_score')
|
| 28 |
with col_2:
|
| 29 |
max_value = st.slider('Select maximum educational score', 1, 10, 10, key='max_score')
|
| 30 |
-
|
| 31 |
-
|
|
|
|
|
|
|
|
|
|
| 32 |
selected_category_type = st.selectbox("Select a topic", categories)
|
| 33 |
categories = list(set(ds["category"]))
|
| 34 |
selected_cluster = ds.filter(lambda x: x['category'] == selected_category)
|
|
|
|
| 15 |
Additionally, the model was tasked with finding the topic of each cluster.
|
| 16 |
""")
|
| 17 |
|
| 18 |
+
|
| 19 |
@st.cache_data
|
| 20 |
+
def load_data(min_score=1, max_score=10, show_special=False):
|
| 21 |
ds = load_dataset("HuggingFaceTB/FW_clusters_free_topics", split="train", token=HF_TOKEN, num_proc=2)
|
| 22 |
+
def filter_func(x):
|
| 23 |
+
try:
|
| 24 |
+
score = int(x['educational_score'])
|
| 25 |
+
return max(min_score <= score <= max_score, show_special)
|
| 26 |
+
except (ValueError, TypeError):
|
| 27 |
+
# Return True if show_special is checked and educational_score is None or ''
|
| 28 |
+
return show_special
|
| 29 |
+
|
| 30 |
+
ds = ds.filter(filter_func)
|
| 31 |
return ds
|
| 32 |
|
| 33 |
st.subheader("Cluster information")
|
| 34 |
+
col_1, col_2, col_3 = st.columns(2)
|
| 35 |
with col_1:
|
| 36 |
min_value = st.slider('Select minimum educational score', 1, 10, 1, key='min_score')
|
| 37 |
with col_2:
|
| 38 |
max_value = st.slider('Select maximum educational score', 1, 10, 10, key='max_score')
|
| 39 |
+
with col_3:
|
| 40 |
+
show_special = st.checkbox('Show clusters with undefined educational score', False)
|
| 41 |
+
|
| 42 |
+
# Load data based on slider values and checkbox status
|
| 43 |
+
ds = load_data(min_value, max_value, show_special)
|
| 44 |
selected_category_type = st.selectbox("Select a topic", categories)
|
| 45 |
categories = list(set(ds["category"]))
|
| 46 |
selected_cluster = ds.filter(lambda x: x['category'] == selected_category)
|