Skip to main content

Crate khive_retrieval

Crate khive_retrieval 

Source
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 on lattice-embed directly.
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§

FusionStrategy
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_k results.
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 true if positive weights sum to within tolerance of 1.0.