Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
Update app.py
Browse filesAdd threshold of 0.3 to semantic search
app.py
CHANGED
@@ -147,8 +147,11 @@ if button:
|
|
147 |
semantic_all = results[0]
|
148 |
lexical_all = results[1]
|
149 |
|
|
|
|
|
|
|
150 |
# 2) Filter the entire sets
|
151 |
-
filtered_semantic = filter_results(
|
152 |
filtered_lexical = filter_results(lexical_all, country_filter, region_filter, end_year_range)
|
153 |
|
154 |
filtered_semantic_no_dupe = remove_duplicates(filtered_semantic)
|
@@ -159,6 +162,10 @@ if button:
|
|
159 |
# Check user preference
|
160 |
if show_exact_matches:
|
161 |
st.write(f"Showing **Top 10 Lexical Search results** for query: {var}")
|
|
|
|
|
|
|
|
|
162 |
# Show the top 10 from filtered_lexical
|
163 |
for res in filtered_lexical_no_dupe[:10]:
|
164 |
project_name = res.payload['metadata'].get('project_name', 'Project Link')
|
|
|
147 |
semantic_all = results[0]
|
148 |
lexical_all = results[1]
|
149 |
|
150 |
+
# 2) Apply a threshold to SEMANTIC results (score >= 0.3)
|
151 |
+
semantic_thresholded = [r for r in semantic_all if r.score >= 0.3]
|
152 |
+
|
153 |
# 2) Filter the entire sets
|
154 |
+
filtered_semantic = filter_results(semantic_thresholded, country_filter, region_filter, end_year_range)
|
155 |
filtered_lexical = filter_results(lexical_all, country_filter, region_filter, end_year_range)
|
156 |
|
157 |
filtered_semantic_no_dupe = remove_duplicates(filtered_semantic)
|
|
|
162 |
# Check user preference
|
163 |
if show_exact_matches:
|
164 |
st.write(f"Showing **Top 10 Lexical Search results** for query: {var}")
|
165 |
+
|
166 |
+
if not filtered_semantic_no_dupe:
|
167 |
+
st.write("No relevant results found.")
|
168 |
+
else:
|
169 |
# Show the top 10 from filtered_lexical
|
170 |
for res in filtered_lexical_no_dupe[:10]:
|
171 |
project_name = res.payload['metadata'].get('project_name', 'Project Link')
|