pub enum SearchTier {
Instant,
Dense,
Fast,
Deep,
Auto,
}Expand description
Retrieval tier — selects the work the search engine does for a query.
Instant and Dense are single-retriever ablations (BM25-only and
vector-only respectively), exposed mostly for the quality benchmark
harness but also useful as product knobs when callers want a pure
keyword or pure semantic search. Fast and Deep are the production
hybrid tiers. Auto (the new default) routes per-query to the cheapest
tier that’s likely to do the job, mirroring Exa’s auto philosophy.
Variants§
Instant
FTS5 BM25 only. No model load, no vector index access.
Dense
Vector index only (binary-quantized Hamming KNN). Uses the dense embedder; primarily an ablation for quality benchmarks.
Fast
BM25 + dense + RRF fusion. Production hybrid tier.
Deep
Fast + cross-encoder reranking over the top-K fused candidates.
Auto
Inspect the query and route to the cheapest tier likely to answer it
well: identifier-shaped short queries → Instant; long question-form
queries (or [deep] prefix) → Deep; everything else → Fast.
Default tier.
Trait Implementations§
Source§impl Clone for SearchTier
impl Clone for SearchTier
Source§fn clone(&self) -> SearchTier
fn clone(&self) -> SearchTier
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SearchTier
impl Debug for SearchTier
Source§impl Default for SearchTier
impl Default for SearchTier
Source§fn default() -> SearchTier
fn default() -> SearchTier
Source§impl<'de> Deserialize<'de> for SearchTier
impl<'de> Deserialize<'de> for SearchTier
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Display for SearchTier
impl Display for SearchTier
Source§impl FromStr for SearchTier
impl FromStr for SearchTier
Source§impl PartialEq for SearchTier
impl PartialEq for SearchTier
Source§impl Serialize for SearchTier
impl Serialize for SearchTier
impl Copy for SearchTier
impl Eq for SearchTier
impl StructuralPartialEq for SearchTier
Auto Trait Implementations§
impl Freeze for SearchTier
impl RefUnwindSafe for SearchTier
impl Send for SearchTier
impl Sync for SearchTier
impl Unpin for SearchTier
impl UnsafeUnpin for SearchTier
impl UnwindSafe for SearchTier
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian().Source§impl<T> ToCompactString for Twhere
T: Display,
impl<T> ToCompactString for Twhere
T: Display,
Source§fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
ToCompactString::to_compact_string() Read moreSource§fn to_compact_string(&self) -> CompactString
fn to_compact_string(&self) -> CompactString
CompactString. Read more