Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

RaBitQ with many centroids and a 4-bit query, as VectorChord uses it

Open
#11 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
56/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
postgresql, python
Domain
data, databases

Research direction

Start with src/shrinkvec/codecs/rabitq.py and the rabitqlib k-means used in tests. Add IVF centroids, per-centroid residuals, and an optional 4-bit query quantizer to match VectorChord's setup. Run the rabitq-1-ivf cross-check; it is done when recall matches rabitqlib at the same settings.

Written by the indexing model from the issue text.

Description

area: lab codec enhancement

The lab's RaBitQ uses one centroid and a full-precision query. VectorChord uses IVF centroids and quantizes the query to 4 bits. Matching that setup makes lab and Postgres numbers directly comparable.

Where to start: src/shrinkvec/codecs/rabitq.py. k-means for the centroids (or the rabitqlib k-means in tests), residuals per centroid, and an optional query quantizer.

Done when: rabitq-1-ivf matches rabitqlib's IVF recall at the same settings in the cross-check.

Dominant language
Python
Stars
0
Forks
0
Avg merge
3m
Merged PRs (30d)
4

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from ahmad-codex/shrinkvec

All issues in ahmad-codex/shrinkvec

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.