Portable Mixed-Precision BLAS-like Vector Math Library

6.5.16 · active · verified Thu Apr 09

SimSIMD is a highly optimized, mixed-precision math library providing over 350 SIMD-accelerated kernels for common vector similarity functions and dot-products. It is extensively used in AI, Search, and Database Management Systems workloads to achieve significant performance and accuracy improvements over standard NumPy and SciPy operations. The library is actively developed with frequent releases, though its main development has transitioned to a new project name, NumKong, starting with version 7.x.x.

Warnings

Install

Imports

Quickstart

This example demonstrates how to calculate various vector similarity metrics (cosine, squared Euclidean, inner product) between two NumPy arrays using SimSIMD. Ensure NumPy is installed as it's commonly used for array creation, although not a direct dependency of SimSIMD.

import simsimd
import numpy as np

# Create two random 1536-dimensional vectors for demonstration
vec1 = np.random.randn(1536).astype(np.float32)
vec2 = np.random.randn(1536).astype(np.float32)

# Calculate cosine similarity
distance = simsimd.cosine(vec1, vec2)
print(f"Cosine distance: {distance}")

# Calculate squared Euclidean distance
distance_sqeuclidean = simsimd.sqeuclidean(vec1, vec2)
print(f"Squared Euclidean distance: {distance_sqeuclidean}")

# Calculate inner product
inner_product = simsimd.inner(vec1, vec2)
print(f"Inner product: {inner_product}")

view raw JSON →