Skip to content

Conversation

@khoroshevskyi
Copy link
Member

Changes:

  • Added combined sparse and dense search, which improves search results

TODO:

  • Update the version of pephub in the __version__.py file
  • Update the changelog

@cloudflare-workers-and-pages
Copy link

cloudflare-workers-and-pages bot commented Dec 11, 2025

Deploying pephub-ui with  Cloudflare Pages  Cloudflare Pages

Latest commit: 8436347
Status: ✅  Deploy successful!
Preview URL: https://f0429841.pephub.pages.dev
Branch Preview URL: https://dev.pephub.pages.dev

View logs

@khoroshevskyi khoroshevskyi changed the title improved return errors of the search and added sparse search Release 0.15.5 Dec 11, 2025
@khoroshevskyi khoroshevskyi merged commit cca4286 into master Dec 11, 2025
2 checks passed
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds hybrid search functionality combining dense, sparse, and exact match retrieval methods to improve search quality in PEPHub. The implementation uses Qdrant's reciprocal rank fusion (RRF) to blend results from multiple search strategies.

Key changes:

  • Added sparse search capability using SPLADE encoder alongside existing dense embeddings
  • Implemented hybrid query strategy with prefetch and fusion for improved search relevance
  • Removed configurable collection_name parameter, now hardcoded to default

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
pephub/routers/models.py Removed collection_name field from SearchQuery model
pephub/routers/api/v1/search.py Implemented hybrid search with dense, sparse, and exact match retrieval using RRF fusion
pephub/dependencies.py Added sparse encoder model initialization and dependency injection function
pephub/const.py Updated model constants, replacing DEFAULT_HF_MODEL with separate dense and sparse encoder models
pephub/_version.py Bumped version from 0.15.4 to 0.15.5
Comments suppressed due to low confidence (3)

pephub/routers/api/v1/search.py:48

  • The parameter name "model_sparce" contains a spelling error. It should be "model_sparse" (with an 's' instead of 'c').
    return agent.namespace.get(limit=limit, query=query or "", offset=offset)

pephub/routers/api/v1/search.py:68

  • The variable "model_sparce" contains a spelling error. It should be "model_sparse" (with an 's' instead of 'c').
    pephub/routers/api/v1/search.py:69
  • The variable "model_sparce" contains a spelling error. It should be "model_sparse" (with an 's' instead of 'c').
    # get namespaces:

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants