Skip to content

[Feature]: Turbo Integration #323

@richyreachy

Description

@richyreachy

Problem / Motivation

Currently, the internal implementation of metric distances is scattered across multiple files, which causes confusion to spot and fix problem during runtime. Moreover, it's quite difficult to tell which distance function is actually being invoked.

In addition, some quantization metas are concatenated after vector data, increasing the dimensionality and making the resulting dimensions inconsistent with those of the original input.

Proposed Solution

1. Use a unified interface to select the best optimized distance function as per runtime march
2. Every metric distance function is coherently implemented in a single unified function
3. Versions of distance functions, including single and batch, are organized into separate folders respectively, 
4. Extra meta is specified explicitly, rather than being mixed with vector dimensions

Alternatives Considered

No response

Affected Area

{"label" => "C++ Core (storage, indexing)"}

Metadata

Metadata

Assignees

Labels

featureNew feature wanted

Type

No type

Projects

Status

Backlog

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions