SPTAG logo

SPTAG

microsoft/SPTAG

Distributed ANN library for large-scale vector search

GraphCanon updated today · GitHub synced today · 29 views this month

5.0k stars620 forksLast push 2d C++ MIT

Decision brief

SPTAG is optimal for developers and enterprises handling large-scale vector searches who need high-quality indexing with efficient serving mechanisms.

Good fit when

  • If you are working on applications that require quick access to nearest neighborhood data in massive datasets, such as recommendation engines or image search systems.
  • When a scalable solution for fresh updates is necessary without disrupting ongoing operations - SPTAG supports real-time index updates and distributed serving.

Avoid when

  • Avoid using SPTAG if your application does not benefit from distributed infrastructure and prefers simpler, single-machine deployments with less operational complexity.
  • If the primary requirement of your project is a high level of exactness over speed in nearest neighbor detection, as SPTAG compromises on precision for faster query performance.
Pricing:
freemium - SPTAG is open source and free to use under the MIT license. Advanced support or integrations may bear extra costs depending on commercial context.
Requirements:
Requires proficiency in C++ for optimal customization, though general usage can be managed with provided toolkits.; High infrastructure demands due to its distributed nature make efficient resource management a priority.

Observed Jul 15, 2026 · Source: enrich:decision_facts

Verify the decision

Maintenance and security

Full trust report
Maintenance
Very active (1d since push)
As of today
Provenance
Not a fork · Organization account
As of today
Security (OSV)
No lockfile
As of 1mo

Public GitHub metadata and optional OSV scans. Signals, not a guarantee. Trust methodology.

Backing

Company context for Microsoft. Display-only - separate from trust and ranking.

Company
Microsoft·GitHub org profile·1mo
Employees
221,000·Wikidata (P1128 employees)·1mo
Commercial model
Pure OSS·GitHub org profile (public repos)·1mo

Install

git clone https://github.com/microsoft/SPTAG

Similar tools

Same-category neighbours. No typed graph edges are catalogued for this tool yet.

Evidence and technical details

Sourced facts, taxonomy, compatibility claims, README excerpt, and machine-readable endpoints.

Overview

microsoft/SPTAG is a C++ distributed approximate nearest neighborhood search library that offers tools for building and serving high-quality indexes in large-scale vector search scenarios.

Capability facts

Deploy
Self-host

Source: dockerfile:Dockerfile · Aug 23, 2026

Docker
Dockerfile present

Source: dockerfile:Dockerfile · Aug 23, 2026

Languages
c++

Source: github.language · Aug 23, 2026

Categories

Graph entities

Tags

README

Requirements

  • swig >= 4.0.2
  • cmake >= 3.12.0
  • boost >= 1.67.0

Install

For Linux: Compile SPDK

cd ThirdParty/spdk
./scripts/pkgdep.sh
CC=gcc-9 ./configure
CC=gcc-9 make -j

Compile isal-l_crypto

cd ThirdParty/isal-l_crypto
./autogen.sh
./configure
make -j

Build RocksDB

mkdir build && cd build
cmake -DUSE_RTTI=1 -DWITH_JEMALLOC=1 -DWITH_SNAPPY=1 -DCMAKE_C_COMPILER=gcc-7 -DCMAKE_CXX_COMPILER=g++-7 -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS="-fPIC" ..
make -j
sudo make install

Build SPTAG

mkdir build
cd build && cmake -DSPDK=OFF -DROCKSDB=OFF .. && make

It will generate a Release folder in the code directory which contains all the build targets.

For Windows:

mkdir build
cd build && cmake -A x64 -DSPDK=OFF -DROCKSDB=OFF ..

It will generate a SPTAGLib.sln in the build directory. Compiling the ALL_BUILD project in the Visual Studio (at least 2019) will generate a Release directory which contains all the build targets.

For detailed instructions on installing Windows binaries, please see here

Using Docker:

docker build -t sptag .

Will build a docker container with binaries in /app/Release/.


License

The entire codebase is under MIT license

For agents

This page has a .md twin and JSON over the API.

Was this helpful?

Anonymous feedback helps us improve pages and translations.