pub struct Bm25fQueryPlan {
pub weights: Bm25fFieldWeights,
pub b: f64,
pub k1: f64,
}Expand description
F5 (0.8.14 Slice 10) — the compiled BM25F query plan for the fielded lexical
arm (ADR-0.8.1 §3.2 BM25fQueryPlan). Carries the tunable per-field
weights and the tunable length-normalization b (and the term-saturation
k1).
NOTE on b: SQLite FTS5’s built-in bm25() auxiliary function pins its
internal k1/b and exposes ONLY per-column weights — it cannot express a
tunable b. So the score is computed in-engine (a textbook BM25F over the
FTS5-recalled candidates) rather than delegated to the built-in bm25():
that is what makes b (and k1) genuinely tunable here, not a dead
parameter. The search_index_v2 FTS5 index is still load-bearing — it does
the candidate recall (MATCH) that the scorer then ranks.
Defaults match Robertson/SQLite BM25 (b = 0.75, k1 = 1.2) with uniform
field weights. Engine-internal for 0.8.14 (no SDK surface).
Fields§
§weights: Bm25fFieldWeights§b: f64§k1: f64Trait Implementations§
Source§impl Clone for Bm25fQueryPlan
impl Clone for Bm25fQueryPlan
Source§fn clone(&self) -> Bm25fQueryPlan
fn clone(&self) -> Bm25fQueryPlan
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more