RAFT
RAFT is a suite of GPU-accelerated libraries for data science, including support for vector search and similarity operations, often used in vector database scenarios.
About this tool
RAFT
RAFT is an open-source suite of GPU-accelerated libraries providing fundamental algorithms and primitives for machine learning and information retrieval. It is designed as a C++ header-only template library (with optional shared library), and also offers lightweight Python wrappers (pylibraft
, raft-dask
).
Features
- CUDA-accelerated primitives for machine learning and data mining
- Data Formats: Support for both sparse and dense data, conversions, and data generation
- Dense Operations: Linear algebra, matrix and vector operations, reductions, slicing, norms, factorization, least squares, SVD, and eigenvalue problems
- Sparse Operations: Linear algebra, eigenvalue problems, slicing, norms, reductions, factorization, symmetrization, components, and labeling
- Solvers: Combinatorial optimization and iterative solvers
- Statistics: Sampling, moments and summary statistics, metrics, and model evaluation
- Tools & Utilities: Common tools for CUDA application development, multi-node/multi-GPU infrastructure
- Memory Management: Integrates with RAPIDS Memory Manager (RMM) for flexible memory allocation strategies
- Multi-dimensional Arrays: APIs use
mdspan
for multi-dimensional array views, similar to NumPy'sndarray
, and providemdarray
for memory management on host and device (GPU) - Python Bindings:
pylibraft
andraft-dask
for Python integration
Notes
- RAFT is intended for use by developers building high-performance, GPU-accelerated applications, not directly for exploratory data science.
- Some vector search and clustering algorithms have migrated to cuVS, and their RAFT implementations will be deprecated in future releases.
Pricing
RAFT is open-source software and is available for free under its respective open-source license.