pub struct HybridSearchResponse {Show 13 fields
pub query: String,
pub k: usize,
pub rrf_k: u32,
pub weights: Weights,
pub results: Vec<HybridSearchItem>,
pub graph_matches: Vec<RecallItem>,
pub fts_degraded: bool,
pub fts_error: Option<String>,
pub fts_auto_rebuilt: bool,
pub vec_degraded: bool,
pub vec_error: Option<String>,
pub warning: Option<String>,
pub elapsed_ms: u64,
}Fields§
§query: String§k: usize§rrf_k: u32RRF k parameter used in the combined ranking.
weights: WeightsWeights applied to vec and fts sources in the RRF fusion.
results: Vec<HybridSearchItem>§graph_matches: Vec<RecallItem>§fts_degraded: boolTrue when FTS5 failed and the response is vec-only.
Omitted from JSON when false to keep the happy-path envelope clean.
fts_error: Option<String>Human-readable description of the FTS5 failure when fts_degraded is true.
Omitted from JSON when None.
fts_auto_rebuilt: boolTrue when the FTS5 index was corrupted and successfully auto-rebuilt during this request.
Omitted from JSON when false to keep the happy-path envelope clean.
vec_degraded: boolG58 (v1.0.80): symmetric to fts_degraded; true when the live query
embedding failed and the response degraded to FTS5-only. Absent on the
wire when false.
vec_error: Option<String>G58 (v1.0.80): human-readable description of the embedding failure
that triggered the fallback. Absent on the wire when vec_degraded is
false.
warning: Option<String>G58 (v1.0.80): advisory warning echoed for callers that branch on top-level status. Distinguishes a FTS5-only fallback from a clean hybrid response so downstream pipelines can lower their confidence.
elapsed_ms: u64Total execution time in milliseconds from handler start to serialisation.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for HybridSearchResponse
impl RefUnwindSafe for HybridSearchResponse
impl Send for HybridSearchResponse
impl Sync for HybridSearchResponse
impl Unpin for HybridSearchResponse
impl UnsafeUnpin for HybridSearchResponse
impl UnwindSafe for HybridSearchResponse
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
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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 more