Table of Contents

Class RrfDefaults

Namespace
Qavren.Edge.VectorData
Assembly
Qavren.Edge.VectorData.dll

The four numbers that compose the fused hybrid score. Getting one of them wrong produces a working query with wrong results, which is why each is transcribed and asserted.

public sealed class RrfDefaults
Inheritance
RrfDefaults
Inherited Members

Fields

MaxCandidateCount

SQLITE_VEC_VEC0_K_MAX. Neither lane may ask vec0 for more rows than this, so it is also the cap on the candidate count.

Properties

CandidateMultiplier

Each lane fetches (top + skip) * this, capped at MaxCandidateCount. Fewer candidates per lane and a row that ranks 5th in one lane and 40th in the other never enters the fusion at all - the failure mode RRF exists to avoid.

K

The RRF smoothing constant. 60 is the value sqlite-vec's own reference uses.

KeywordWeight

Weight applied to the keyword lane's reciprocal rank. 1.0 = unweighted fusion.

VectorWeight

Weight applied to the vector lane's reciprocal rank. 1.0 = unweighted fusion.

Methods

ResolveCandidateCount(int, int)

The value bound to $cand in BuildHybridRrfSql(bool, bool): (top + skip) * CandidateMultiplier, capped at MaxCandidateCount.