Skip to main content

HsdPy

License: MIT Python version PyPI version

HsdPy library allows users to use Hsdlib in Python.

Installation

pip install hsdpy

Examples

Below is a simple usage example of HsdPy:

import hsdpy

# HsdPy uses NumPy for array handling
import numpy as np

# Create two NumPy arrays of float32 type
a = np.array([1.0, 2.0, 3.0], dtype=np.float32)
b = np.array([4.0, 5.0, 6.0], dtype=np.float32)

# Calculate the euclidean distance between the two arrays
dist_euc = hsdpy.dist_sqeuclidean_f32(a, b) ** 0.5

# Calculate Manhattan distance
dist_man = hsdpy.dist_manhattan_f32(a, b)

# Let's see the results
print(f"Euclidean distance: {dist_euc}")  # 5.196
print(f"Manhattan distance: {dist_man}")  # 9.0

# See the SIMD backend in use
print(f"Backend: {hsdpy.get_backend()}")

Check out hsdpy_example.py for more detailed examples.

API Summary

Function Description Input Types (np.ndarray) Return Type
dist_sqeuclidean_f32(a, b) Computes squared Euclidean distance between vectors. np.float32 float
dist_manhattan_f32(a, b) Computes Manhattan distance between vectors. np.float32 float
dist_hamming_u8(a, b) Computes Hamming distance between binary vectors. np.uint8 int
sim_dot_f32(a, b) Computes dot product between vectors. np.float32 float
sim_cosine_f32(a, b) Computes cosine similarity between vectors. np.float32 float
sim_jaccard_u16(a, b) Computes Jaccard similarity between integer vectors. np.uint16 float
get_backend() Returns information about the backend in use. None str
get_library_info() Returns information about the loaded library. None dict

Notes

  • HsdPy provides the HsdError exception class for error handling. It is a custom exception class wraps the Hsdlib error codes to make them more Pythonic.
  • All distance and similarity functions expect one-dimensional NumPy arrays as input.
  • Functions will raise NotImplementedError if the corresponding Hsdlib function is not implemented for the given data type.

License

HsdPy is licensed under the MIT License.

Metadata

Release files for hsdpy 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for hsdpy 0.1.0
File Interpreter ABI Platform
hsdpy-0.1.0-py3-none-any.whl Python 3 none any Details

Release files / hsdpy-0.1.0-py3-none-any.whl

Download URL hsdpy-0.1.0-py3-none-any.whl
Size 50.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8e2a077111bd283c5681e13813468e79b966194d72e36e94f870926b6aa877cd
BLAKE2b-256 checksum
How to use checksums
ade8f14a9ccc5dcd2537c5e5817745daf9327ff2b73c1a06d683e975a432a84e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.8

Release history Release notifications | RSS feed

This release

0.1.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page