Metadata-Version: 2.4
Name: latence-solver
Version: 0.1.3
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Rust
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Dist: numpy>=1.20.0
Requires-Dist: pytest>=7.0 ; extra == 'dev'
Requires-Dist: pytest-benchmark>=4.0 ; extra == 'dev'
Provides-Extra: dev
Summary: CPU-reference-first Tabu Search Quadratic Knapsack solver with optional accelerator hooks
Keywords: optimization,knapsack,tabu-search,cpu,machine-learning,search
Author-email: Latence Team <dev@latence.ai>
License: Apache-2.0
Requires-Python: >=3.10
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: Homepage, https://github.com/ddickmann/voyager-index
Project-URL: Repository, https://github.com/ddickmann/voyager-index

## latence-solver

`latence-solver` is the Tabu Search Quadratic Knapsack solver used by `voyager-index`
for both local refinement and the canonical OSS `/reference/optimize` contract.

The default build is **CPU fallback** (deterministic Rust). Optional Cargo features enable
experimental **CUDA** (NVIDIA) and **wgpu** hooks; when unavailable or disabled, the solver
falls back to the CPU backend. Python builds expose `cuda_available()` / `gpu_available()`
and `backend_status()` for runtime reporting.

Build locally (Python extension) with:

```bash
python -m pip install ./src/kernels/knapsack_solver
```

This repo currently ships the solver through local source install rather than a
separate PyPI release.

CUDA-enabled wheels require building with `--features cuda` (see `Cargo.toml`) and a suitable
CUDA toolkit/runtime on the build machine.

