feat: Unify keyword and semantic search into 'Search My Library' #37
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Feat: Unify Keyword and Semantic Search into "Search My Library" Page
**Closes: #31 **
This PR refactors the user-facing search experience by deprecating the two separate search pages (
Query Stored SummariesandSemantic Search (FAISS)).These have been replaced with a single, unified
📚 Search My Librarypage. This new interface provides a much cleaner UX by allowing the user to select their desired search mode (Keyword or Semantic) from a simple radio toggle before searching.All existing functionality, including loading spinners and the various download options (TXT, MD, PDF), has been preserved and migrated to this new unified page.
Changes Made
In
streamlit_app.py:Query Stored SummariesandSemantic Search (FAISS)from thest.radiosidebar options.📚 Search My Libraryoption to the sidebar.elifblocks that rendered the old, separate search pages.elifblock for📚 Search My Library.st.radioto select"Keyword"or"Semantic"mode.st.text_inputfor the query.🔍 Search Librarybutton.Rebuild Indexbutton (formerly on the "Semantic Search" page) into anst.expanderon this new page.query_dborsearch_similarbased on the selected search mode.How to Test
streamlit run streamlit_app.py.📚 Search My Libraryoption."Keyword".db.json."Semantic".🗂️ Index Managementexpander.🔄 Rebuild Indexand verify the loading animation plays and a success message appears.