Back to Gap Map Infrastructure / Storage & Retrieval

SPTAG

Microsoft
open source / Overall score: 1.8

SPTAG (Space Partition Tree And Graph) is a Microsoft Research and Bing library for large-scale approximate nearest neighbour search, combining kd-tree or balanced k-means tree partitioning with a relative neighbourhood graph. It supports online insertion and deletion and a distributed search mode across machines.

Distinct from diskann - a different Microsoft Research ANN algorithm family (tree-plus-graph rather than Vamana), maintained independently. sptag on PyPI is declared as the measurement identity because, unlike diskannpy, it is built from this repository's root `setup.py` against the current code by the Microsoft SPTAG team, and the library has no server for it to be a client of; installing it gives you SPTAG. Its count is small because most users build the C++ library directly, which the adoption note records.

Openness

5 high confidence
5.0
license
MIT(OSI)
source
public
core features withheld
no

MIT license body confirmed. The repository is public and unarchived and builds the whole library, and the README describes no paid tier, enterprise edition or license-gated build beside it.

Adoption

1 medium confidence
1.0

SPTAG's adoption reading comes from PyPI downloads of the `sptag` package, since SPTAG is a C++ library with Python bindings and no separate server, so the package figure is a direct read of usage. Most users build the C++ library directly rather than installing it through PyPI, so this reading captures only a slice of overall use.

Capability

3 medium confidence
3.0

SPTAG combines two index families — kd-tree and balanced k-means tree, each paired with a relative neighbourhood graph — with online insertion, deletion and distributed search across machines. That puts it alongside Faiss: both are search toolkits rather than durable, transactional stores, so neither reaches the complete, distributed systems at the top of the category.

Verified 2026-09-23