Contents
Exact Metric and Operator Matrix
This file is generated from docs/user_guide/metric_operator_matrix.data.
Run scripts/generate-metric-operator-matrix.sh after changing the source data.
Each row identifies the exact framework-free kernel, its SQL-facing operator or helper, and its score direction. Operators apply only to like representations. Definitions and edge-case behavior are pinned in Metric Semantics.
| Representation | Metric | Exact core operator | SQL operator | Order for nearest-first search | Current SQL lifecycle |
|---|---|---|---|---|---|
| dense | L2 | DistanceMetric::L2::distance |
<-> |
ascending distance | stable |
| dense | Inner product | DistanceMetric::InnerProduct::distance |
inner_product helper |
descending raw similarity | stable |
| dense | Negative inner product | DistanceMetric::NegativeInnerProduct::distance |
<#> |
ascending distance | stable |
| dense | Cosine distance | DistanceMetric::Cosine::distance |
<=> |
ascending distance | stable |
| dense | L1 | DistanceMetric::L1::distance |
<+> |
ascending distance | stable |
| half | L2 | DistanceMetric::L2::distance_half |
<-> |
ascending distance | experimental |
| half | Inner product | DistanceMetric::InnerProduct::distance_half |
halfvec_inner_product helper |
descending raw similarity | experimental |
| half | Negative inner product | DistanceMetric::NegativeInnerProduct::distance_half |
<#> |
ascending distance | experimental |
| half | Cosine distance | DistanceMetric::Cosine::distance_half |
<=> |
ascending distance | experimental |
| half | L1 | DistanceMetric::L1::distance_half |
<+> |
ascending distance | experimental |
| sparse | L2 | DistanceMetric::L2::distance_sparse |
<-> |
ascending distance | experimental |
| sparse | Inner product | DistanceMetric::InnerProduct::distance_sparse |
sparsevec_inner_product helper |
descending raw similarity | experimental |
| sparse | Negative inner product | DistanceMetric::NegativeInnerProduct::distance_sparse |
<#> |
ascending distance | experimental |
| sparse | Cosine distance | DistanceMetric::Cosine::distance_sparse |
<=> |
ascending distance | experimental |
| sparse | L1 | DistanceMetric::L1::distance_sparse |
<+> |
ascending distance | experimental |
| bit | Hamming | BitVector::hamming_distance |
<~> |
ascending distance | experimental |
| bit | Jaccard distance | BitVector::jaccard_distance |
<%> |
ascending distance | experimental |