Skip to content

Build indexes using compressed vectors - #244

Merged
jbellis merged 47 commits into
mainfrom
live-compression-2
Mar 27, 2024
Merged

jbellis merged 47 commits into
mainfrom
live-compression-2

Conversation

@jbellis

@jbellis jbellis commented Mar 8, 2024

Copy link
Copy Markdown
Contributor

Changes to Bench are quick-and-dirty and not intended to be committed as is.

BuildScoreProvider encapsulates build-time similarity APIs. The main changes to the actual logic are in ConcurrentNeighborSet to perform two-pass diversity checks to reduce the full-precision comparisons required.

Note that

     * While GraphIndexBuilder may use approximate scoring to find candidate neighbors, we
     * always rerank them using exact scoring before storing them in the neighbor set.

This is important for performance (2x neighbors = 2x slower searches) and it means we don't need to do crazy juggling around "now that i'm writing to disk i'm going to recompute all the scores."

@jkni
jkni self-requested a review March 8, 2024 17:37
@jbellis
jbellis force-pushed the live-compression-2 branch from eb19107 to ff29179 Compare March 22, 2024 14:57
@jbellis
jbellis marked this pull request as ready for review March 25, 2024 15:55

@jkni jkni left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Few questions/comments -- I didn't look at Bench changes because of your comment suggesting they wouldn't be merged as-is. Is that still true?

@jbellis
jbellis force-pushed the live-compression-2 branch from 1bc5f53 to 5db274c Compare March 26, 2024 17:33
@jbellis
jbellis force-pushed the live-compression-2 branch from 5db274c to 115ef56 Compare March 26, 2024 18:15
@jkni

jkni commented Mar 27, 2024

Copy link
Copy Markdown
Contributor

LGTM! I took the liberty of adding missing licenses for CI, so if you force-push, make sure you pick up those.

@jbellis

jbellis commented Mar 27, 2024

Copy link
Copy Markdown
Contributor Author

Oops, I thought I did pull, sorry.

@jbellis
jbellis merged commit 040baec into main Mar 27, 2024
@jbellis
jbellis deleted the live-compression-2 branch March 27, 2024 14:01
@jshook jshook mentioned this pull request Nov 4, 2026
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.

2 participants