microsoft / microsoft/DiskANN

Integrate single attribute diversity search into benchmarks

Open
#910 0 comments 0 reactions 1 assignee View on GitHub

@narendatha is already working on this.

Since Apr 7, 2026.

enhancement
Dominant language
Rust
Stars
1.9k
Forks
454
Avg merge
3d 22h
Merged PRs (30d)
35

Description

**Status as of Sep 10, 2026:**
Single attribute diversity algorithm based on diversity queue is already part of main branch. But it is not yet integrated with benchmarks.
This work is blocked. The block is: how to get attribute information for vectors during operations in diversity queue? The current code has experimental implementation that reads attribute information from a file and gives it in a side channel. that will not work in production because 1) attribute information and vector information are retrieved in different APIs causing performance issue of reading twice or from different places, 2) there is consistency issue if vector gets deleted between vector read and attribute read.

The right solution is to read both vector and attribute together. The current discussed design is to keep both vector and attribute info in InternalId and retrieve it together. This needs design and implementation change in core library. Since that work was postponed, this work got delayed. Once the design changes are implemented, https://github.com/microsoft/DiskANN/pull/1250 can also gets unblocked.

Contributor guide

Open the contributing guide

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.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.