Repository navigation
Tracking Issue: Vector Extension Type #7297
Description
Activity
- changed the title
[-]Vector Similarity Search[/-][+]Tracking Issue: Vector Similarity Search[/+]on Apr 6, 2026 - added 12 commits that reference this issue
on Apr 7, 2026 5 remaining items
- addedepicPublic roadmap umbrella for a major initiative, with work tracked in sub-issues.Public roadmap umbrella for a major initiative, with work tracked in sub-issues.
on Apr 27, 2026 - changed the title
[-]Tracking Issue: Vector Similarity Search[/-][+]Epic: Vector Similarity Search[/+]on Apr 27, 2026 - changed the title
[-]Epic: Vector Similarity Search[/-][+]Epic Vector Similarity Search[/+]on Apr 27, 2026 - changed the title
[-]Epic Vector Similarity Search[/-][+]Epic: Vector Similarity Search[/+]on Apr 27, 2026 - changed the title
[-]Epic: Vector Similarity Search[/-][+]Epic: Vector Similarity Scan[/+]on Apr 27, 2026 We have figured out that a full vector search pipeline with a vector index like IVF and a top-k operator does not really belong in Vortex right.
We would definitely like to add support for having an IVF inside vortex (likely as a new kind of layout), but we have not figured that out yet.
But more importantly, a top-k "expression" or operator really does not make that much sense to have in Vortex given that it is effectively a specialized
ORDER BYandLIMITclause. Since the Vortex model is a scalar late materialization engine, it does not makes sense to implement top-k directly in Vortex. We would leave it to the query engines (like DataFusion and DuckDB) to implement this logic.So I am renaming this issue to just be about "Vectors" to close this issue as completed. Future work can create a new tracking issue or epic.
- added a parent issue
on Apr 27, 2026 - changed the title
[-]Epic: Vector Extension Type[/-][+]Tracking Issue: Vector Extension Type[/+]on Apr 27, 2026 - removed a parent issue
on Apr 28, 2026 - added a parent issue
on Apr 28, 2026 - added a commit that references this issue
on Apr 29, 2026 - added a commit that references this issue
on May 18, 2026
Vectors and Similarity Scans
We would like to add vector search support to Vortex.
Plan
At a minimum, we likely need to support (some of this already exists):
Note that we still have not decided how to communicate or expose approximation/lossiness in a principled way.
Design
Details
Vectorshould be a first-class data model for fixed-length float embeddings, with clean integration into the dtype system, expression system, serialization, and compression pipeline.inner_product,cosine_similarity, andl2_norm.ConstantArrayon one side, and we should not pay the same cost as the fully general pairwise case.There are also more high-level things that likely deserve their own issues:
ApproxOptionsis a useful start, but it is not yet a full user-facing contract for what is allowed to be approximate, when approximation is chosen automatically, or how accuracy tradeoffs are surfaced.Steps / History
Vectorextension type: Vector Extension Type #6964cosine_similarity: Vortex Fixed-Shape Tensor #6812l2_norm: Vector Extension Type #6964l2_denorm: L2 Denorm expression #7329inner_product: TurboQuant encoding for Vectors #7269sorfor some "make random" reversible expression: Pull outL2Denormfrom TurboQuant #7349ApproxOptionsmodel for tensor expressions: Approximate expressions for tensor types #7226TurboQuantmetadata to be protobuf #7301L2Denorm(norms, Sorf(matrix, Dict(centroids, codes)))L2Denormfrom TurboQuant #7349ScalarValue::Arraysupport for perfomant list scalars (in progress):ScalarValue::Array#6717Constantchildren #7394InnerProductoptimizations #7396vector-search-benchbenchmarking crate #7458And then is no particular order:
vortex-tensor#7525vortex-tensoreven more #7610Future Work
Unresolved Questions