Expand description
Hybrid search and ranking with deterministic scoring for khive.
Combines HNSW vector search, BM25 keyword search, and RRF fusion into a unified
retrieval layer. All scores use DeterministicScore for cross-platform consistency.
See docs/architecture.md for module layout, design principles, ID bridging
strategies, and trait composition guide.
Re-exports§
pub use error::ErrorKind;pub use error::Result;pub use error::RetrievalError;pub use hit::HybridSearchOutcome;pub use hit::RankScoreKind;pub use hit::SearchHit;pub use hit::SearchSignals;pub use hit::SearchSource;pub use hybrid::fuse_search_results;pub use hybrid::fuse_search_results_checked;pub use hybrid::DualIndexConfig;pub use hybrid::DualIndexRouter;pub use hybrid::DualIndexStrategy;pub use hybrid::HybridConfig;pub use hybrid::HybridSearcher;pub use hybrid::IdentityReranker;pub use hybrid::KeywordSearch;pub use hybrid::Query;pub use hybrid::Reranker;pub use hybrid::VectorSearch;pub use materialization::materialize_ranked_prefix;pub use materialization::DropCounts;pub use materialization::DropDiagnostic;pub use materialization::DropReason;pub use materialization::MaterializationDecision;pub use materialization::MaterializationError;pub use materialization::MaterializationLimitError;pub use materialization::MaterializationLimits;pub use materialization::MaterializedItem;pub use materialization::MaterializedPrefix;pub use materialization::RankedCandidate;pub use materialization::MAX_MATERIALIZATION_CANDIDATES;pub use materialization::MAX_MATERIALIZATION_DIAGNOSTICS;pub use materialization::MAX_MATERIALIZATION_DROP_REASONS;pub use materialization::MAX_MATERIALIZATION_LOADER_BATCH;pub use materialization::MAX_MATERIALIZATION_OUTPUTS;pub use metrics::MetricEvent;pub use metrics::MetricValue;pub use metrics::MetricsSink;pub use metrics::NoopSink;pub use metrics::RecordingSink;pub use policy::filter_by_policy;pub use policy::filter_by_predicate;pub use policy::ClearanceLevel;pub use policy::SearchPolicy;pub use query_ir::FilterPredicate;pub use query_ir::FuseStrategy;pub use query_ir::QueryNode;pub use query_ir::RerankMethod;pub use search_config::SearchConfig;pub use timeout::search_with_cancellation;pub use timeout::search_with_deadline;pub use timeout::search_with_optional_timeout;pub use timeout::search_with_timeout;
Modules§
- embed
- Re-exports from
lattice-embed. Use these instead of depending onlattice-embeddirectly. - error
- Error types for retrieval operations.
- eval
- Retrieval evaluation types and metrics.
- hit
- Search result types returned by hybrid retrieval pipelines.
- hybrid
- Unified hybrid search interface.
- materialization
- Policy-free materialization of a bounded ranked candidate prefix.
- metrics
- Observability hooks for retrieval indices.
- policy
- Policy integration for access-controlled retrieval.
- query_
ir - Query Intermediate Representation for the retrieval pipeline.
- search_
config - Per-call hybrid search configuration (fusion strategy + top_k). Default: RRF k=60, top_k=10.
- timeout
- Timeout and cancellation support for search operations.
Enums§
- Fusion
Strategy - Validated selection for combining ranked result lists.
Constants§
- DEFAULT_
RRF_ K - Default RRF constant k=60, standard in literature (Cormack et al., 2009).
Functions§
- fuse
- Fuse ranked sources and retain at most
top_kresults. - normalize_
weights - Lossily normalize finite positive weights; all-zero input becomes equal weights.
- reciprocal_
rank_ fusion - Fuse score-descending sources by
sum 1/(max(k, 1) + one_based_rank). - weighted_
fusion - Fuse per-source min-max-normalized scores with lossy normalized weights.
- weights_
are_ normalized - Returns
trueif positive weights sum to withintoleranceof 1.0.