Skip to main content

Smaller & Faster Single-File Vector Search Engine from Unum

Project description

USearch

Smaller & Faster Single-File
Similarity Search & Clustering Engine for Vectors & 🔜 Texts


Discord     LinkedIn     Twitter     Blog     GitHub

Spatial • Binary • Probabilistic • User-Defined Metrics
C++ 11Python 3JavaScriptJavaRustC 99Objective-CSwiftC#GoLangWolfram
Linux • MacOS • Windows • iOS • WebAssembly • SQLite3


Technical Insights and related articles:

Comparison with FAISS

FAISS is a widely recognized standard for high-performance vector search engines. USearch and FAISS both employ the same HNSW algorithm, but they differ significantly in their design principles. USearch is compact and broadly compatible without sacrificing performance, primarily focusing on user-defined metrics and fewer dependencies.

FAISS USearch Improvement
Indexing time ⁰
100 Million 96d f32, f16, i8 vectors 2.6 · 2.6 · 2.6 h 0.3 · 0.2 · 0.2 h 9.6 · 10.4 · 10.7 x
100 Million 1536d f32, f16, i8 vectors 5.0 · 4.1 · 3.8 h 2.1 · 1.1 · 0.8 h 2.3 · 3.6 · 4.4 x
Codebase length ¹ 84 K SLOC 3 K SLOC maintainable
Supported metrics ² 9 fixed metrics any metric extendible
Supported languages ³ C++, Python 10 languages portable
Supported ID types ⁴ 32-bit, 64-bit 32-bit, 40-bit, 64-bit efficient
Filtering ⁵ ban-lists any predicates composable
Required dependencies ⁶ BLAS, OpenMP - light-weight
Bindings ⁷ SWIG Native low-latency
Python binding size ⁸ ~ 10 MB < 1 MB deployable

Tested on Intel Sapphire Rapids, with the simplest inner-product distance, equivalent recall, and memory consumption while also providing far superior search speed. ¹ A shorter codebase of usearch/ over faiss/ makes the project easier to maintain and audit. ² User-defined metrics allow you to customize your search for various applications, from GIS to creating custom metrics for composite embeddings from multiple AI models or hybrid full-text and semantic search. ³ With USearch, you can reuse the same preconstructed index in various programming languages. ⁴ The 40-bit integer allows you to store 4B+ vectors without allocating 8 bytes for every neighbor reference in the proximity graph. ⁵ With USearch the index can be combined with arbitrary external containers, like Bloom filters or third-party databases, to filter out irrelevant keys during index traversal. ⁶ Lack of obligatory dependencies makes USearch much more portable. ⁷ Native bindings introduce lower call latencies than more straightforward approaches. ⁸ Lighter bindings make downloads and deployments faster.

Base functionality is identical to FAISS, and the interface must be familiar if you have ever investigated Approximate Nearest Neighbors search:

# pip install usearch

import numpy as np
from usearch.index import Index

index = Index(ndim=3)               # Default settings for 3D vectors
vector = np.array([0.2, 0.6, 0.4])  # Can be a matrix for batch operations
index.add(42, vector)               # Add one or many vectors in parallel
matches = index.search(vector, 10)  # Find 10 nearest neighbors

assert matches[0].key == 42
assert matches[0].distance <= 0.001
assert np.allclose(index[42], vector, atol=0.1) # Ensure high tolerance in mixed-precision comparisons

More settings are always available, and the API is designed to be as flexible as possible. The default storage/quantization level is hardware-dependant for efficiency, but bf16 is recommended for most modern CPUs.

index = Index(
    ndim=3, # Define the number of dimensions in input vectors
    metric='cos', # Choose 'l2sq', 'ip', 'haversine' or other metric, default = 'cos'
    dtype='bf16', # Store as 'f64', 'f32', 'f16', 'i8', 'b1'..., default = None
    connectivity=16, # Optional: Limit number of neighbors per graph node
    expansion_add=128, # Optional: Control the recall of indexing
    expansion_search=64, # Optional: Control the quality of the search
    multi=False, # Optional: Allow multiple vectors per key, default = False
)

Serialization & Serving Index from Disk

USearch supports multiple forms of serialization:

  • Into a file defined with a path.
  • Into a stream defined with a callback, serializing or reconstructing incrementally.
  • Into a buffer of fixed length or a memory-mapped file that supports random access.

The latter allows you to serve indexes from external memory, enabling you to optimize your server choices for indexing speed and serving costs. This can result in 20x cost reduction on AWS and other public clouds.

index.save("index.usearch")

loaded_copy = index.load("index.usearch")
view = Index.restore("index.usearch", view=True)

other_view = Index(ndim=..., metric=...)
other_view.view("index.usearch")

Exact vs. Approximate Search

Approximate search methods, such as HNSW, are predominantly used when an exact brute-force search becomes too resource-intensive. This typically occurs when you have millions of entries in a collection. For smaller collections, we offer a more direct approach with the search method.

from usearch.index import search, MetricKind, Matches, BatchMatches
import numpy as np

# Generate 10'000 random vectors with 1024 dimensions
vectors = np.random.rand(10_000, 1024).astype(np.float32)
vector = np.random.rand(1024).astype(np.float32)

one_in_many: Matches = search(vectors, vector, 50, MetricKind.L2sq, exact=True)
many_in_many: BatchMatches = search(vectors, vectors, 50, MetricKind.L2sq, exact=True)

If you pass the exact=True argument, the system bypasses indexing altogether and performs a brute-force search through the entire dataset using SIMD-optimized similarity metrics from SimSIMD. When compared to FAISS's IndexFlatL2 in Google Colab, USearch may offer up to a 20x performance improvement:

  • faiss.IndexFlatL2: 55.3 ms.
  • usearch.index.search: 2.54 ms.

User-Defined Metrics

While most vector search packages concentrate on just two metrics, "Inner Product distance" and "Euclidean distance", USearch allows arbitrary user-defined metrics. This flexibility allows you to customize your search for various applications, from computing geospatial coordinates with the rare Haversine distance to creating custom metrics for composite embeddings from multiple AI models, like joint image-text embeddings. You can use Numba, Cppyy, or PeachPy to define your custom metric even in Python:

from numba import cfunc, types, carray
from usearch.index import Index, MetricKind, MetricSignature, CompiledMetric

@cfunc(types.float32(types.CPointer(types.float32), types.CPointer(types.float32)))
def python_inner_product(a, b):
    a_array = carray(a, ndim)
    b_array = carray(b, ndim)
    c = 0.0
    for i in range(ndim):
        c += a_array[i] * b_array[i]
    return 1 - c

metric = CompiledMetric(pointer=python_inner_product.address, kind=MetricKind.IP, signature=MetricSignature.ArrayArray)
index = Index(ndim=ndim, metric=metric, dtype=np.float32)

Similar effect is even easier to achieve in C, C++, and Rust interfaces. Moreover, unlike older approaches indexing high-dimensional spaces, like KD-Trees and Locality Sensitive Hashing, HNSW doesn't require vectors to be identical in length. They only have to be comparable. So you can apply it in obscure applications, like searching for similar sets or fuzzy text matching, using GZip compression-ratio as a distance function.

Filtering and Predicate Functions

Sometimes you may want to cross-reference search-results against some external database or filter them based on some criteria. In most engines, you'd have to manually perform paging requests, successively filtering the results. In USearch you can simply pass a predicate function to the search method, which will be applied directly during graph traversal. In Rust that would look like this:

let is_odd = |key: Key| key % 2 == 1;
let query = vec![0.2, 0.1, 0.2, 0.1, 0.3];
let results = index.filtered_search(&query, 10, is_odd).unwrap();
assert!(
    results.keys.iter().all(|&key| key % 2 == 1),
    "All keys must be odd"
);

Memory Efficiency, Downcasting, and Quantization

Training a quantization model and dimension-reduction is a common approach to accelerate vector search. Those, however, are only sometimes reliable, can significantly affect the statistical properties of your data, and require regular adjustments if your distribution shifts. Instead, we have focused on high-precision arithmetic over low-precision downcasted vectors. The same index, and add and search operations will automatically down-cast or up-cast between f64_t, f32_t, f16_t, i8_t, and single-bit b1x8_t representations. You can use the following command to check, if hardware acceleration is enabled:

$ python -c 'from usearch.index import Index; print(Index(ndim=768, metric="cos", dtype="f16").hardware_acceleration)'
> sapphire
$ python -c 'from usearch.index import Index; print(Index(ndim=166, metric="tanimoto").hardware_acceleration)'
> ice

In most cases, it's recommended to use half-precision floating-point numbers on modern hardware. When quantization is enabled, the "get"-like functions won't be able to recover the original data, so you may want to replicate the original vectors elsewhere. When quantizing to i8_t integers, note that it's only valid for cosine-like metrics. As part of the quantization process, the vectors are normalized to unit length and later scaled to [-127, 127] range to occupy the full 8-bit range. When quantizing to b1x8_t single-bit representations, note that it's only valid for binary metrics like Jaccard, Hamming, etc. As part of the quantization process, the scalar components greater than zero are set to true, and the rest to false.

USearch uint40_t support

Using smaller numeric types will save you RAM needed to store the vectors, but you can also compress the neighbors lists forming our proximity graphs. By default, 32-bit uint32_t is used to enumerate those, which is not enough if you need to address over 4 Billion entries. For such cases we provide a custom uint40_t type, that will still be 37.5% more space-efficient than the commonly used 8-byte integers, and will scale up to 1 Trillion entries.

Indexes for Multi-Index Lookups

For larger workloads targeting billions or even trillions of vectors, parallel multi-index lookups become invaluable. Instead of constructing one extensive index, you can build multiple smaller ones and view them together.

from usearch.index import Indexes

multi_index = Indexes(
    indexes: Iterable[usearch.index.Index] = [...],
    paths: Iterable[os.PathLike] = [...],
    view: bool = False,
    threads: int = 0,
)
multi_index.search(...)

Clustering

Once the index is constructed, USearch can perform K-Nearest Neighbors Clustering much faster than standalone clustering libraries, like SciPy, UMap, and tSNE. Same for dimensionality reduction with PCA. Essentially, the Index itself can be seen as a clustering, allowing iterative deepening.

clustering = index.cluster(
    min_count=10, # Optional
    max_count=15, # Optional
    threads=..., # Optional
)

# Get the clusters and their sizes
centroid_keys, sizes = clustering.centroids_popularity

# Use Matplotlib to draw a histogram
clustering.plot_centroids_popularity()

# Export a NetworkX graph of the clusters
g = clustering.network

# Get members of a specific cluster
first_members = clustering.members_of(centroid_keys[0])

# Deepen into that cluster, splitting it into more parts, all the same arguments supported
sub_clustering = clustering.subcluster(min_count=..., max_count=...)

The resulting clustering isn't identical to K-Means or other conventional approaches but serves the same purpose. Alternatively, using Scikit-Learn on a 1 Million point dataset, one may expect queries to take anywhere from minutes to hours, depending on the number of clusters you want to highlight. For 50'000 clusters, the performance difference between USearch and conventional clustering methods may easily reach 100x.

Joins, One-to-One, One-to-Many, and Many-to-Many Mappings

One of the big questions these days is how AI will change the world of databases and data management. Most databases are still struggling to implement high-quality fuzzy search, and the only kind of joins they know are deterministic. A join differs from searching for every entry, requiring a one-to-one mapping banning collisions among separate search results.

Exact Search Fuzzy Search Semantic Search ?
Exact Join Fuzzy Join ? Semantic Join ??

Using USearch, one can implement sub-quadratic complexity approximate, fuzzy, and semantic joins. This can be useful in any fuzzy-matching tasks common to Database Management Software.

men = Index(...)
women = Index(...)
pairs: dict = men.join(women, max_proposals=0, exact=False)

Read more in the post: Combinatorial Stable Marriages for Semantic Search 💍

Functionality

By now, the core functionality is supported across all bindings. Broader functionality is ported per request. In some cases, like Batch operations, feature parity is meaningless, as the host language has full multi-threading capabilities and the USearch index structure is concurrent by design, so the users can implement batching/scheduling/load-balancing in the most optimal way for their applications.

C++ 11 Python 3 C 99 Java JavaScript Rust GoLang Swift
Add, search, remove
Save, load, view
User-defined metrics
Batch operations
Filter predicates
Joins
Variable-length vectors
4B+ capacities

Application Examples

USearch + UForm + UCall = Multimodal Semantic Search

AI has a growing number of applications, but one of the coolest classic ideas is to use it for Semantic Search. One can take an encoder model, like the multi-modal UForm, and a web-programming framework, like UCall, and build a text-to-image search platform in just 20 lines of Python.

from ucall import Server
from uform import get_model, Modality
from usearch.index import Index

import numpy as np
import PIL as pil

processors, models = get_model('unum-cloud/uform3-image-text-english-small')
model_text = models[Modality.TEXT_ENCODER]
model_image = models[Modality.IMAGE_ENCODER]
processor_text = processors[Modality.TEXT_ENCODER]
processor_image = processors[Modality.IMAGE_ENCODER]

server = Server()
index = Index(ndim=256)

@server
def add(key: int, photo: pil.Image.Image):
    image = processor_image(photo)
    vector = model_image(image)
    index.add(key, vector.flatten(), copy=True)

@server
def search(query: str) -> np.ndarray:
    tokens = processor_text(query)
    vector = model_text(tokens)
    matches = index.search(vector.flatten(), 3)
    return matches.keys

server.run()

Similar experiences can also be implemented in other languages and on the client side, removing the network latency. For Swift and iOS, check out the ashvardanian/SwiftSemanticSearch repository.

SwiftSemanticSearch demo Dog SwiftSemanticSearch demo with Flowers

A more complete demo with Streamlit is available on GitHub. We have pre-processed some commonly used datasets, cleaned the images, produced the vectors, and pre-built the index.

Dataset Modalities Images Download
Unsplash Images & Descriptions 25 K HuggingFace / Unum
Conceptual Captions Images & Descriptions 3 M HuggingFace / Unum
Arxiv Titles & Abstracts 2 M HuggingFace / Unum

USearch + RDKit = Molecular Search

Comparing molecule graphs and searching for similar structures is expensive and slow. It can be seen as a special case of the NP-Complete Subgraph Isomorphism problem. Luckily, domain-specific approximate methods exist. The one commonly used in Chemistry is to generate structures from SMILES and later hash them into binary fingerprints. The latter are searchable with binary similarity metrics, like the Tanimoto coefficient. Below is an example using the RDKit package.

from usearch.index import Index, MetricKind
from rdkit import Chem
from rdkit.Chem import AllChem

import numpy as np

molecules = [Chem.MolFromSmiles('CCOC'), Chem.MolFromSmiles('CCO')]
encoder = AllChem.GetRDKitFPGenerator()

fingerprints = np.vstack([encoder.GetFingerprint(x) for x in molecules])
fingerprints = np.packbits(fingerprints, axis=1)

index = Index(ndim=2048, metric=MetricKind.Tanimoto)
keys = np.arange(len(molecules))

index.add(keys, fingerprints)
matches = index.search(fingerprints, 10)

That method was used to build the "USearch Molecules", one of the largest Chem-Informatics datasets, containing 7 billion small molecules and 28 billion fingerprints.

USearch + POI Coordinates = GIS Applications

Similar to Vector and Molecule search, USearch can be used for Geospatial Information Systems. The Haversine distance is available out of the box, but you can also define more complex relationships, like the Vincenty formula, that accounts for the Earth's oblateness.

from numba import cfunc, types, carray
import math

# Define the dimension as 2 for latitude and longitude
ndim = 2

# Signature for the custom metric
signature = types.float32(
    types.CPointer(types.float32),
    types.CPointer(types.float32))

# WGS-84 ellipsoid parameters
a = 6378137.0  # major axis in meters
f = 1 / 298.257223563  # flattening
b = (1 - f) * a  # minor axis

def vincenty_distance(a_ptr, b_ptr):
    a_array = carray(a_ptr, ndim)
    b_array = carray(b_ptr, ndim)
    lat1, lon1, lat2, lon2 = a_array[0], a_array[1], b_array[0], b_array[1]
    L, U1, U2 = lon2 - lon1, math.atan((1 - f) * math.tan(lat1)), math.atan((1 - f) * math.tan(lat2))
    sinU1, cosU1, sinU2, cosU2 = math.sin(U1), math.cos(U1), math.sin(U2), math.cos(U2)
    lambda_, iterLimit = L, 100
    while iterLimit > 0:
        iterLimit -= 1
        sinLambda, cosLambda = math.sin(lambda_), math.cos(lambda_)
        sinSigma = math.sqrt((cosU2 * sinLambda) ** 2 + (cosU1 * sinU2 - sinU1 * cosU2 * cosLambda) ** 2)
        if sinSigma == 0: return 0.0  # Co-incident points
        cosSigma, sigma = sinU1 * sinU2 + cosU1 * cosU2 * cosLambda, math.atan2(sinSigma, cosSigma)
        sinAlpha, cos2Alpha = cosU1 * cosU2 * sinLambda / sinSigma, 1 - (cosU1 * cosU2 * sinLambda / sinSigma) ** 2
        cos2SigmaM = cosSigma - 2 * sinU1 * sinU2 / cos2Alpha if not math.isnan(cosSigma - 2 * sinU1 * sinU2 / cos2Alpha) else 0  # Equatorial line
        C = f / 16 * cos2Alpha * (4 + f * (4 - 3 * cos2Alpha))
        lambda_, lambdaP = L + (1 - C) * f * (sinAlpha * (sigma + C * sinSigma * (cos2SigmaM + C * cosSigma * (-1 + 2 * cos2SigmaM ** 2)))), lambda_
        if abs(lambda_ - lambdaP) <= 1e-12: break
    if iterLimit == 0: return float('nan')  # formula failed to converge
    u2 = cos2Alpha * (a ** 2 - b ** 2) / (b ** 2)
    A = 1 + u2 / 16384 * (4096 + u2 * (-768 + u2 * (320 - 175 * u2)))
    B = u2 / 1024 * (256 + u2 * (-128 + u2 * (74 - 47 * u2)))
    deltaSigma = B * sinSigma * (cos2SigmaM + B / 4 * (cosSigma * (-1 + 2 * cos2SigmaM ** 2) - B / 6 * cos2SigmaM * (-3 + 4 * sinSigma ** 2) * (-3 + 4 * cos2SigmaM ** 2)))
    s = b * A * (sigma - deltaSigma)
    return s / 1000.0  # Distance in kilometers

# Example usage:
index = Index(ndim=ndim, metric=CompiledMetric(
    pointer=vincenty_distance.address,
    kind=MetricKind.Haversine,
    signature=MetricSignature.ArrayArray,
))

Integrations & Users

Citations

@software{Vardanian_USearch_2023,
doi = {10.5281/zenodo.7949416},
author = {Vardanian, Ash},
title = {{USearch by Unum Cloud}},
url = {https://github.com/unum-cloud/usearch},
version = {2.15.1},
year = {2023},
month = oct,
}

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

usearch-2.15.1-cp312-cp312-win_arm64.whl (262.9 kB view details)

Uploaded CPython 3.12 Windows ARM64

usearch-2.15.1-cp312-cp312-win_amd64.whl (283.1 kB view details)

Uploaded CPython 3.12 Windows x86-64

usearch-2.15.1-cp312-cp312-musllinux_1_2_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.12 musllinux: musl 1.2+ x86-64

usearch-2.15.1-cp312-cp312-musllinux_1_2_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.12 musllinux: musl 1.2+ ARM64

usearch-2.15.1-cp312-cp312-manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.28+ x86-64

usearch-2.15.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.27+ ARM64 manylinux: glibc 2.28+ ARM64

usearch-2.15.1-cp312-cp312-macosx_11_0_arm64.whl (366.3 kB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

usearch-2.15.1-cp312-cp312-macosx_10_9_x86_64.whl (381.6 kB view details)

Uploaded CPython 3.12 macOS 10.9+ x86-64

usearch-2.15.1-cp312-cp312-macosx_10_9_universal2.whl (710.2 kB view details)

Uploaded CPython 3.12 macOS 10.9+ universal2 (ARM64, x86-64)

usearch-2.15.1-cp311-cp311-win_arm64.whl (262.0 kB view details)

Uploaded CPython 3.11 Windows ARM64

usearch-2.15.1-cp311-cp311-win_amd64.whl (281.9 kB view details)

Uploaded CPython 3.11 Windows x86-64

usearch-2.15.1-cp311-cp311-musllinux_1_2_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.11 musllinux: musl 1.2+ x86-64

usearch-2.15.1-cp311-cp311-musllinux_1_2_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.11 musllinux: musl 1.2+ ARM64

usearch-2.15.1-cp311-cp311-manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.28+ x86-64

usearch-2.15.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.27+ ARM64 manylinux: glibc 2.28+ ARM64

usearch-2.15.1-cp311-cp311-macosx_11_0_arm64.whl (364.6 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

usearch-2.15.1-cp311-cp311-macosx_10_9_x86_64.whl (377.8 kB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

usearch-2.15.1-cp311-cp311-macosx_10_9_universal2.whl (704.4 kB view details)

Uploaded CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)

usearch-2.15.1-cp310-cp310-win_arm64.whl (260.6 kB view details)

Uploaded CPython 3.10 Windows ARM64

usearch-2.15.1-cp310-cp310-win_amd64.whl (281.2 kB view details)

Uploaded CPython 3.10 Windows x86-64

usearch-2.15.1-cp310-cp310-musllinux_1_2_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.10 musllinux: musl 1.2+ x86-64

usearch-2.15.1-cp310-cp310-musllinux_1_2_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.10 musllinux: musl 1.2+ ARM64

usearch-2.15.1-cp310-cp310-manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.28+ x86-64

usearch-2.15.1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.27+ ARM64 manylinux: glibc 2.28+ ARM64

usearch-2.15.1-cp310-cp310-macosx_11_0_arm64.whl (363.6 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

usearch-2.15.1-cp310-cp310-macosx_10_9_x86_64.whl (376.1 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

usearch-2.15.1-cp310-cp310-macosx_10_9_universal2.whl (700.4 kB view details)

Uploaded CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)

usearch-2.15.1-cp39-cp39-win_arm64.whl (262.1 kB view details)

Uploaded CPython 3.9 Windows ARM64

usearch-2.15.1-cp39-cp39-win_amd64.whl (277.7 kB view details)

Uploaded CPython 3.9 Windows x86-64

usearch-2.15.1-cp39-cp39-musllinux_1_2_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.9 musllinux: musl 1.2+ x86-64

usearch-2.15.1-cp39-cp39-musllinux_1_2_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.9 musllinux: musl 1.2+ ARM64

usearch-2.15.1-cp39-cp39-manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.28+ x86-64

usearch-2.15.1-cp39-cp39-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.27+ ARM64 manylinux: glibc 2.28+ ARM64

usearch-2.15.1-cp39-cp39-macosx_11_0_arm64.whl (363.7 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

usearch-2.15.1-cp39-cp39-macosx_10_9_x86_64.whl (376.4 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

usearch-2.15.1-cp39-cp39-macosx_10_9_universal2.whl (701.2 kB view details)

Uploaded CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)

usearch-2.15.1-cp38-cp38-win_amd64.whl (282.1 kB view details)

Uploaded CPython 3.8 Windows x86-64

usearch-2.15.1-cp38-cp38-musllinux_1_2_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.8 musllinux: musl 1.2+ x86-64

usearch-2.15.1-cp38-cp38-musllinux_1_2_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.8 musllinux: musl 1.2+ ARM64

usearch-2.15.1-cp38-cp38-manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.28+ x86-64

usearch-2.15.1-cp38-cp38-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.27+ ARM64 manylinux: glibc 2.28+ ARM64

usearch-2.15.1-cp38-cp38-macosx_11_0_arm64.whl (363.4 kB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

usearch-2.15.1-cp38-cp38-macosx_10_9_x86_64.whl (376.1 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

usearch-2.15.1-cp38-cp38-macosx_10_9_universal2.whl (700.3 kB view details)

Uploaded CPython 3.8 macOS 10.9+ universal2 (ARM64, x86-64)

usearch-2.15.1-cp37-cp37m-win_amd64.whl (282.8 kB view details)

Uploaded CPython 3.7m Windows x86-64

usearch-2.15.1-cp37-cp37m-musllinux_1_2_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.7m musllinux: musl 1.2+ x86-64

usearch-2.15.1-cp37-cp37m-musllinux_1_2_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.7m musllinux: musl 1.2+ ARM64

usearch-2.15.1-cp37-cp37m-manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.28+ x86-64

usearch-2.15.1-cp37-cp37m-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.27+ ARM64 manylinux: glibc 2.28+ ARM64

usearch-2.15.1-cp37-cp37m-macosx_10_9_x86_64.whl (374.0 kB view details)

Uploaded CPython 3.7m macOS 10.9+ x86-64

File details

Details for the file usearch-2.15.1-cp312-cp312-win_arm64.whl.

File metadata

  • Download URL: usearch-2.15.1-cp312-cp312-win_arm64.whl
  • Upload date:
  • Size: 262.9 kB
  • Tags: CPython 3.12, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for usearch-2.15.1-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 d32e1cd5624efe64c735f70f34ff969a628ccee964f213d58c6fb8bab1d6244e
MD5 c889ce4312c14e96aefe7923e6541be4
BLAKE2b-256 24ff0e5232ed5c539afc0ce1c07e7fc046a01d4769d601e0fe30d83458efa447

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: usearch-2.15.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 283.1 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for usearch-2.15.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 4ed5c05f460c4202d9e13f173b3c0895f4195f1107c2671d23dfc53b4e7a0007
MD5 bb075168a07007ef16dd60a1b0b2ad87
BLAKE2b-256 f82308054d4cb19ea4c59731dc72176a65723951b9745ac281b745423f758a57

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2e961ef7e5b408d9aa3706f945bef7eda36a3d72411b79118101ff7c722df987
MD5 f16717520e8a1baf2f1da12fc3c1ca2f
BLAKE2b-256 6941c4905f3e9c5bb72ed88e99ac0358e3d0d69b486378d6194ecc555825ce94

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 93134604a1dbefd2b83b9eb9a71f80d9a9aac1db94c3c5cfd18ecc6cff1a4d44
MD5 9c4f1c1a6d9c572d3cb15cfb9f677b49
BLAKE2b-256 82e4c5f2842da05b3d9e37b72bcee7d91e860871eeba60a2f0f2418651d94938

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8cb9d0fff2b73c23b1344ed75d382af8b0f426b85db2f2a6a80816af8a7720d4
MD5 348b01b5ec2d35db5403d91c04cafb84
BLAKE2b-256 bb4cdbd2f86ebb83393a47fd966b490840cea94f39e82c9f4e2e9ccb3c7284f6

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 aa324fb6a086f44e53a1ef480e3857d8a6db948e829916767af27c32a6b8c33f
MD5 8870b79e6fbf47427b94dab7afc3bbb2
BLAKE2b-256 bd2d1f773b009cd6b668fc4865ce16628f33061323b5e493880663e4f3ee554c

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 61190502a8448b8ceed807adde69a951ee423cae85955486264c3b8b3db9b50e
MD5 95208e7136f969d155dc61185fe66785
BLAKE2b-256 b642daeab4558552784bb231f96c1845498286c3a2f2680fc396697f13ef9262

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 cd4d7163aaa972906212d90ba0c128c18418b0a093f7410003b02f9316937035
MD5 4d260adaa19213facb7dde44dc155730
BLAKE2b-256 42d87648c436c39eb90016c5d1001ea2116668f4874312d2affd3819ad3064d2

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp312-cp312-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp312-cp312-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 c762770548b94e7cae749f1e4357b00d5a9f2ddcd8615c495d6d15bc54d9dce2
MD5 dd1338a745c453b874f22e7c305ad871
BLAKE2b-256 64b0d2caba6577de9ee68361192199fc604264a86d0e08b68d4d12504679e699

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp311-cp311-win_arm64.whl.

File metadata

  • Download URL: usearch-2.15.1-cp311-cp311-win_arm64.whl
  • Upload date:
  • Size: 262.0 kB
  • Tags: CPython 3.11, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for usearch-2.15.1-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 50a23312061d90a5eb619fca4fa1636624e8932e622186b955bac4910a3c8b17
MD5 281c55608382d3ccafbce40a4e862eaf
BLAKE2b-256 6b967b5e3935604615f8789ce29cb863d337751881ea25962cd90dcf0a436c32

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: usearch-2.15.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 281.9 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for usearch-2.15.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 bbdc71cc459daaf937d1fbc812b760af950a246df144e0ce833bc51953fcabb7
MD5 f30d645c5384df936f85e4d4db333966
BLAKE2b-256 19d8f1b058b1d6fc6cd819d3647d5603233eba17786a61bf9c1221f2213ad9bb

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b42bb7317a770e975429a2c0bb9abd11e42ea010a4e68a916b7476dd20fd2f62
MD5 94ff349829a85755a6769b7ec34152d3
BLAKE2b-256 c5944c8230720e8400478fc5662a2a87783e0c62f23f338244cd56b9beea721d

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 672ac913a23ef32fa1e3d8a5dc73373c0cc3ddf1609a3964c2f2caae24715f67
MD5 deea5e49e2b7a507914a095bc255784b
BLAKE2b-256 eaddc4c9001a45e174a5c075b0dec76b00fd7e8ad5efbcbd5df4e8ce9b2f09b2

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 eebfb4b150cb1d4651996c1a2b49c9576529cf3d2b67b8c7f5f26df9d2eae411
MD5 35dfb7e00e618644eecfff8e7dd683d7
BLAKE2b-256 ddfb5500d0d04a9694dbf0dc7d5a425953e5de2b79000f6052fe1432a6f30d11

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e31ad6ffd8a49b933c4507a980b1e36eca42ca978f615f24e7f495b70c41c939
MD5 0bb1c713e6afcac0826b46e393269791
BLAKE2b-256 a36c2946088dacbfa6e7deb8e2f4a659a6a08700c65806130e7875457657fae8

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 93bb7e650b8990f1105fdf37b628d8b06c212231a74ff2eaa1b0768a8faebeba
MD5 a5fc8dbc19ca7e6231cc3ed9ecb59cd6
BLAKE2b-256 3a62371dd595b7dc2d2a030f61607cf6c3bb58e31212eebfab0c8207498f8226

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 bf1ab2b68a2a1ae8175e60529b8061839e53a528ea192514ca0880e070d9f8e3
MD5 747f4d42feaa331b43f8ece649f5d04a
BLAKE2b-256 602d12eecee36caba60e3ccef2ac753a936bdde2f34d9ae6e1381141547e7ad7

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 0c403f10a1f810f97f628a56a051b62eb03a8312082c3d7e1613742eb9d9ef15
MD5 0e8b4dc4f8c3cf5f05e4b76d745f1469
BLAKE2b-256 1729fbcda825d7b14f24f3b9b543f88415ddbc5e7fa1f64394064fb0d2ba4d93

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp310-cp310-win_arm64.whl.

File metadata

  • Download URL: usearch-2.15.1-cp310-cp310-win_arm64.whl
  • Upload date:
  • Size: 260.6 kB
  • Tags: CPython 3.10, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for usearch-2.15.1-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 f5e697d7812db3eeba1c75c806f3e4c1e24702ed32b795e1ff3ccc8c1057da7e
MD5 ca630fbe193d5fc6e41a028680dff2bc
BLAKE2b-256 8268dde2f04f5888114446a078818ec45378973c5ade1eea71dc39648fc3c129

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: usearch-2.15.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 281.2 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for usearch-2.15.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 d7efac31c171645c39ff7f01ff680e42fe09ffdf68416467b05974e8babefdf8
MD5 58ef1f731e655dd601f65198ebbb5a49
BLAKE2b-256 9331ff6ef55163f96fa943d8e42c5df930fdbbdd3be39ae4c60f574ab24b3a7c

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 aabd48a963195007aefad6f69fdcc7024b8ec1dfed8e99f5b1c00d18d98f25cc
MD5 642bdd3bdbe25faab462b4161e12a49c
BLAKE2b-256 92c32c99053af30b2ae718e4887aa5303a3bb050eb07042ff174186630f402be

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 0eee444c7ee25cbf1107fc4c229c984c50504babd52ccee78da6311e9a91d394
MD5 c591a78bc7be7d9f1b22e649a6f2c32c
BLAKE2b-256 0ae8a6892f6e3e82258e2208728539b8f16bb111e1e8913c94959eb60aeb5123

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 97d64e4a9395331ca52323d084ff6c9ad02ad4f4f1259a14127ca1325b44ff5a
MD5 d11d61ca557f3e165678a9e6bdc3bebf
BLAKE2b-256 5df404d168837e8ed1f7b5cdc69a893a92db3571df198382f48e200ddfd66b31

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c849f50836aecc20a17ddf2b56feb78a128f4f4ffa37ef54ed8c1ebfa6dc1826
MD5 b2dd00ef1831a0e3a9f552e7ea1d300e
BLAKE2b-256 3b38ef1e0b7fd59133af0a2eaf36ac4d3e2b1e2843b94dd35ae7af06c1e2fcb5

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 100404de625e9a92ff2c81e9158c4f958ea162a05cf50df3eab2fc58119f4301
MD5 a994c77ed616da560c2a062f71926a33
BLAKE2b-256 0e8d6d4e83dcbcc721ddc3c4bc719c59fa134aa0d50b6f908062d5dccfa76fe5

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8b6fd124f758a0e17e8ba84f8fc24581d5eb2601553951e6f04e882b998a06fc
MD5 5077f4d9bb09b05bbe4c6ab67c0e8517
BLAKE2b-256 d588bf9ed5e5b5efecebaf9a93bb9ffb804a481211290efb6929395cd95a0b98

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 b16a27b83e48915a27bc86bb4fe9e97d2b7b0eac39532fd0bd1cd59b186f1999
MD5 036ade6f1d5f14ddb81427770e77f5c9
BLAKE2b-256 746ce788cdd46dcdb5a728bfb6bec8ceebf107623265e215684e1994c926dede

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp39-cp39-win_arm64.whl.

File metadata

  • Download URL: usearch-2.15.1-cp39-cp39-win_arm64.whl
  • Upload date:
  • Size: 262.1 kB
  • Tags: CPython 3.9, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for usearch-2.15.1-cp39-cp39-win_arm64.whl
Algorithm Hash digest
SHA256 7f9864bbd5484b9f63d3289398d0bafa37ac760309cd40bf501a30cd319d7aa9
MD5 0d263a22dec0793aad8635f2e1682e72
BLAKE2b-256 4124210baf8458b46895d42780ea3d7f0f12e2c81a5e82378f9a03d815baa530

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: usearch-2.15.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 277.7 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for usearch-2.15.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 49a133d8e7b7e227fb1bd4139b268fd9fad689018c6be17cb9e27de466897ab2
MD5 896937d05aa8c1364b90b95dedb9fd3e
BLAKE2b-256 cf9e22dd7c1b7df7d781a69511787b22e58124514892bb7c5576c84d8e7edc0c

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 28876b58af3f0b8b1da5a9ff28bea27af141075c707acc5b98d1bd30b936674b
MD5 182117114aebe39010542818ae5876dd
BLAKE2b-256 0e373a1a8a9fc021f60b2d4b7c6325cfda792959b8ff121652d32fa44abb9887

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp39-cp39-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 032950a2110a0ecdc712377d1769aaaf54934d107afbe2823f1e709a841e49d2
MD5 80dc06f3106405e15e01b5d124fc8f12
BLAKE2b-256 52471b0600313cbfd69a1f03ef1e13decd6f2c92b3053da7f7758b5e3f53fcae

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 60f6e83d9b1c19d5778e842e3e1542440926212a73b6ecc006fc57bd6ce7e0d6
MD5 713b9a3bcf62178d78ea2c3c72057043
BLAKE2b-256 c1554b2de4e07a5fc4f341da61bb4ad51959b3ff19aef0a33110041cd0eb6ffe

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp39-cp39-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp39-cp39-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e6c95ac627fee0824babcfb8050b5df77ef3acab682ac551b0f659c054f789d7
MD5 978c8d147859dc681193f59797b0c8d8
BLAKE2b-256 06c8263d3d8bbdc91051d01b4f77be855bef2417c6742be7d2641a4f93b75147

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c03de2eb02b1f3293e8c59437f0b9fa2c7b890bb282dd9fb296e203498d03661
MD5 d8191315a0c42bcccb5eb6327884a555
BLAKE2b-256 1423f915ef6d60e15665a68a6876acad9f5bf01b838e69c725fc81a10c2f902e

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b0b366e5dfa3729feeb85a0d42a97fe1aaa24c2854d46e3604d0f67abba02327
MD5 12bf61702efec2abe0047b7873a183c6
BLAKE2b-256 a2747da28cf86f7d706054600e4debda8a3fb8a6310322e24275d3aac38be445

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 c863b3bcd93eb0a952a24a2a0887516449db34cf023dd5bbf6251bf951fc96af
MD5 06f58ffc18a5d51ca4e119202abdea93
BLAKE2b-256 861b05ac5642411b985cc602eb2d531de5620b5a1e03959920f11c194d233fda

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: usearch-2.15.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 282.1 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for usearch-2.15.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 faea386146462ea4f7b9f30c75ce415bd94ca371af976d5609272b659bfc696b
MD5 fb4943746447c2c394919052e6200108
BLAKE2b-256 bfbfe2cc55d6bd1f623665f77ffe0f2c444f673bd1aa14e4d15b45dc7689b0bf

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp38-cp38-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp38-cp38-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 5087be2ae99c5e5a109d0535800d934297168ed8a2cac83097ded68f45579beb
MD5 9ee8b18fa329e72c5a2af9b277db5c9c
BLAKE2b-256 897a846ecbb491156d2caf3f445683c7f4ddb21f1d159caf4503dab2c0615017

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp38-cp38-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp38-cp38-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a76776962f960ec80d1c36e3d1a913531299f7bde3903b697e4ffac524f2fbdc
MD5 78d0dad0cf2745031e9d380fafba2d46
BLAKE2b-256 30510956a3754bbba8aba643080dd04ff0985e37e6ee3dba7ccd4ee8860926e3

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp38-cp38-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp38-cp38-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a12cc0ad0450baff7eeb86212cfd42c319abb8cd1420e473ea863d5dce0d1b5e
MD5 321a816ef9cef775141cf6633860cac6
BLAKE2b-256 66b87a7a6fdaca950ce0c68d00f0d67f324c0f16c5cbddf871b9636ec1489b77

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp38-cp38-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp38-cp38-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6f9310f5738abfd423f00a6cc3f1f8ab8c54b6791a44646ba639df087cfca0cf
MD5 bce3148cabf0a774b999255a08645401
BLAKE2b-256 b99a6d95ba5bc5fb3224bef0060afe8a2bb048835986863a878cf6ee62031008

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 102e5b5c25bb3033a80da0ca741ddcaf371f3409ac5978b1e07051ff1beba99e
MD5 395648bb5247f1f99d939b25499b521e
BLAKE2b-256 a9fa7119f8b2b81e469b2bd2d5c31db50cd85176e0ab7edc61d8d6f9f02a19bf

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6a7dc8ea07450e75816596d46490f6643a37173190938ede45f175af087cacb4
MD5 3e765617d94135928f0dfc4425b22b8c
BLAKE2b-256 ab394d69c60116f22137bd124ba383b9067e5ad4af143a66441c2bcb5ccf10ed

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp38-cp38-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp38-cp38-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 2208f4715977669b369178b5df9aa29a19f20fbdf13bf3f996eef398b2ef5725
MD5 b75873c37c194141d716a51cc8ebc00b
BLAKE2b-256 99753c51736f7353b5eb82ee461232386b7e10e5ab7a5ea021f70da5af2a0c23

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: usearch-2.15.1-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 282.8 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for usearch-2.15.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 8c03dc2cb5d2e60f63fd8be81f1eb9c5fedc69d8e275fe4ab749adae7130d0cd
MD5 d2e1af4b96b560e3ee11b828e5473c17
BLAKE2b-256 12354d263dde8aac18c3e2d8c77c4cbf03cb2ea538d7f743427a3d1a13ab1cbf

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp37-cp37m-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp37-cp37m-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 56b05e4302b9bf5f3411fc694df4473d3a8a47a8f7f10993c163f71e40f51751
MD5 175fc2180b61416a715250e80e24b08e
BLAKE2b-256 934765ba2a841ecc881ba44cb23a5c89c45fce92c76539e47076c48faa6b409f

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp37-cp37m-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp37-cp37m-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6343fa809f5ccaef1ddf76a8e0e5b6c1bfb8deb478114e6c5756cef8d6bd2ca7
MD5 9f2dd4b1f3d2d6b7b6cf1f167b8468a3
BLAKE2b-256 376c1372d295639cee0544245b98d0a5e593d6207949cfdedc1a3b736e327eff

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp37-cp37m-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp37-cp37m-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0035886aecec97d8bada2adf7959bf9a7802ca4e7111c8bb7f1db37db95af75c
MD5 37f37f4d1413c0d218e2e9e0618b320d
BLAKE2b-256 ca5ccd06a76792e27860d9ac1d1cdb8bf44e84cb7bf6f67e02966feb4f5ff614

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp37-cp37m-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp37-cp37m-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 29a3fc24fe92b4a66ba16064cf3e6a35d24642e216e7e0b87cd734e3ad96e986
MD5 025e547b0b0ce758f21768ecf452e16b
BLAKE2b-256 48e2761957df4240d3b7b896ede1ef778367c23999a638af6285f3de3a272323

See more details on using hashes here.

File details

Details for the file usearch-2.15.1-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for usearch-2.15.1-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6cac59b50f428d8c279950fbfa1d77b857f73df58a66b79fc373a48d4427b5d6
MD5 e25d15a832496ba1992c3910b669cef7
BLAKE2b-256 583bf1129e467359a73920db6f7d4f98dd81dadfa2b500af1ee86361ba3b8434

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page