Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Backport] Add BitVectors format and make flat vectors format easier to extend (#13288) #13316

Merged
merged 2 commits into from Apr 22, 2024

Conversation

benwtrent
Copy link
Member

Instead of making a separate thing pluggable inside of the FieldFormat, this instead keeps the vector similarities as they are, but allows a custom scorer to be provided to the FlatVector storage used by HNSW.

This idea is akin to the compression extensions we have. But in this case, its for vector scorers.

To show how this would work in practice, I took the liberty of adding a new HnswBitVectorsFormat in the sandbox module.

A larger part of the change is a refactor of the RandomAccessVectorValues<T> to remove the <T>. Nothing actually uses that any longer, and we should instead rely on well defined classes and stop relying on casting with generics (yuck).

benwtrent and others added 2 commits April 17, 2024 14:06
…pache#13288)

Instead of making a separate thing pluggable inside of the FieldFormat, this instead keeps the vector similarities as they are, but allows a custom scorer to be provided to the FlatVector storage used by HNSW.

This idea is akin to the compression extensions we have. But in this case, its for vector scorers.

To show how this would work in practice, I took the liberty of adding a new HnswBitVectorsFormat in the sandbox module.

A larger part of the change is a refactor of the `RandomAccessVectorValues<T>` to remove the `<T>`. Nothing actually uses that any longer, and we should instead rely on well defined classes and stop relying on casting with generics (yuck).
@benwtrent benwtrent merged commit d8a8147 into apache:branch_9x Apr 22, 2024
2 checks passed
@benwtrent benwtrent deleted the backport-13288 branch April 22, 2024 14:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant