Recent Releases of usearch
usearch - Release v2.20.9
Release: v2.20.9 [skip ci]
Patch
- Improve: Support more input types in JS (#653) (97ff4b2)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.20.8
Release: v2.20.8 [skip ci]
Patch
- Make: Disable half-precision intrinsics in Windows JNI (a1e75f3)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.20.7
Release: v2.20.7 [skip ci]
Patch
- Docs: Wording & logic mistakes (16b7c70)
- Docs: Using WFM (d3a2868)
- Make: Bump JS deps with vulnerabilities (d7a7cd4)
- Make: Forward
SIMSIMD_definitions (7254fa6)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.20.6
Release: v2.20.6 [skip ci]
Patch
- Make: Repeat Gradle SIMD flags in CI (988567c)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.20.5
Release: v2.20.5 [skip ci]
Patch
- Improve: Expose more platform caps in Java (29aad77)
- Make: Bump dependencies (471b9a0)
- C++
Published by ashvardanian 6 months ago
usearch - v2.20.4: SIMD dispatch in fat-JARs ☕
- Make: Skip Javadoc in blame (86e8b47)
- Improve: Format Javadoc (1f08de4)
- Make: Formatting Java with Spotless (5ae8f17)
- Make: Enable SIMD in Java builds (b9e345d)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.20.3
Release: v2.20.3 [skip ci]
Patch
- Improve:
hardwareAccelerationAPI for Java (a6cec2b)
- C++
Published by ashvardanian 6 months ago
usearch - v2.20.2: Zero-copy Java APIs ☕
- Improve: Zero-copy USearch APIs (dd1e197)
- Improve: Expose
memoryUsage()to Java (89b1432)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.20.1
Release: v2.20.1 [skip ci]
Patch
- Make: Versioning
java/README.md(68f8ffa) - Improve: Bench C++ with
.i8bininputs (3019d09) - Fix: Replace L2 with L2sq in Java (d4c1148)
- Docs: Usage instructions for Py scripts (81ac139)
- Docs: List SpaceV dataset files (2e5f1f8)
- Improve: Handle
.i8binfiles for SpaceV (106b718) - Docs: Describe Gradle usage (d1efd42)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.20.0
Release: v2.20.0 [skip ci]
Minor
- Add: Overloaded Java APIs (66fc6f1)
Hashes
- docs.tar.gz :
73961889c7bc10ddef93daae2b9312b17a2f40a13fe0c0469e9f55323ac31162 - hashes.md :
b87859339862b14f88e802099729301e06f4eec75542f3a3b3862388bd29056f - usearch-2.20.0-javadoc.jar :
15e94704db7b90f6fb5d8cae67851159fe8250772250a9d3643168b088bc6062 - usearch-2.20.0-sources.jar :
2b9aea4b7d549880f598949a726501d77beb964fd41a5103d9f8fda5fcd5073c - usearch-2.20.0.jar :
9f25ba841aca90accfcb2764dcc426d938e3d8c73f9b9da3d44912dd205ddd1f - usearch-v2.20.0.tar.gz :
f42f38baeee1f3951ff6964b2024ba6fbb9529c2cd1a7df3d0fa063b9a0978cc - usearch-v2.20.0.zip :
72166e470c7727f628f7fc8574f043e18678bf83fcb759f141328eb07db78e0f - usearchandroidarm32_2.20.0.zip :
b5c859df33f0839aa42a1106e765c35672c87f684d4e342209937c656d8f1ca1 - usearchandroidarm64_2.20.0.zip :
6b2a48eb0d92b030bb609c0d877dff6966031b94dd6c15b2bed2e624548d1713 - usearchlinuxamd64_2.20.0.deb :
decee02e14a93359e2d86e5254b17cccbdd564ff5fe18061c21ec1e8ecd5c43b - usearchlinuxamd64_2.20.0.so :
6bf60e3a42aca9bbf55a3cc8feb4cd1bff4c6b40be3a50134a89396abd1a7426 - usearchlinuxarm64_2.20.0.deb :
1536e170ecdc183a9ef5246a9cf732742ee09a9bb31d12b0c003ba1268c25e95 - usearchlinuxarm64_2.20.0.so :
b98febb9573f7454f60436f791fbe44fd87609f061dd1426edcee141c7a8776e - usearchmacosarm64_2.20.0.zip :
758b138dbbf86048c76a2457439d24374d8107406288b642f6a8a411b7196c9c - usearchmacosx86642.20.0.zip :
60fdf2d8a2ee39be946f76a27f8b38edede8d04b9fac89462c228c039dc9f047 - usearchsqlitelinuxamd642.20.0.so :
52f87c6441c2ecdb1d05e4a684fcc89edb57135000f962a4c6a663681d4ca5c2 - usearchsqlitelinuxarm642.20.0.so :
4cb951d2030d27e289cf86ec1a92b524a737a915eba1ac6050ccb48b64f98c8f - usearchsqlitemacosarm642.20.0.dylib :
0f4219fdd009b3051fcc9be24086cf27163b7dfbbface97a796f78a8a26c335c - usearchsqlitemacosx8664_2.20.0.dylib :
81c2836a8c82de2420f9a33622b2c17f79b1a9667264c82e112f4affc5bab084 - usearchwasm2.20.0.tar.gz :
cd838beb45a61b11d1a967a474ff5b4daa77b68f196912c4dbde13cc409f86ef - usearchwasm2.20.0.zip :
ab043eb77aa3764beeb77652dda775a395096e341b03ef43ecb367f773beac24 - usearchwindowsarm64_2.20.0.tar :
87063ca2091b37eae597864cfbf3182da874a6e64395314db30012b775949a09 - usearchwindowsx64_2.20.0.tar :
12a7038fe698c8791502e9aadae4819c439d3a235fd166fe9c37f313923423f3 - usearchwindowsx86_2.20.0.tar :
e43a8ae6fc8bbd74bf7e21275b04d5d983eb4f989641b7c57a568e29155a39af
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.23
Release: v2.19.23 [skip ci]
Patch
- Make: Resolve Windows CI and Gradle (287fea9)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.22
Release: v2.19.22 [skip ci]
Patch
- Make: Avoid
export K=Vin CI (6bb004e) - Make: Avoid
-latestCI images for versioned ones (fcc0944) - Make: Remove
/java/path components (95db493)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.21
Release: v2.19.21 [skip ci]
Patch
- Make: Newer compilers for JNI (b8246e4)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.20
Release: v2.19.20 [skip ci]
Patch
- Make: Put checksums after JNI & Android (88a8f32)
- Fix: Detect 32-bitness w/out
<cstdint>(9095b66) - Make: Disambiguate JNI builds via CMake (3ae8df5)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.19
Release: v2.19.19 [skip ci]
Patch
- Make: Fat JAR packaging order in CI (7e98f58)
Hashes
- docs.tar.gz :
84347d7ea22dad24b18481a1b3ca01db8108cdfeb082e35773d479e572f54f64 - hashes.md :
18c344a28b1b700b82a25fe2734174e19a90b69a5ccb7acbaf949af3ec5ab806 - usearch-2.19.19-javadoc.jar :
6a687616a408ae5089cd49c40bcb00f1ca15f14656c4a6ceb2cfa271d57398d3 - usearch-2.19.19-sources.jar :
26d20f10a0d42ce0fb16838ffb89b75451ee77a07389948c433df7f61a1e0818 - usearch-2.19.19.jar :
a13e3624a6de4b9d4a272228a25c5bb956a6e53170b8b893d00935abedf829b8 - usearch-v2.19.19.tar.gz :
3061043699d0fecf734c8c5749af98c2c9bb4de8cace382297647d3a3ed50300 - usearch-v2.19.19.zip :
81764f6167c7640982dbb17ff61725d9cfef4bea04d3a1eac534180a0ab71278 - usearchandroidarm32_2.19.19.zip :
4d632769c1e15470db573ca4ee15141a2fa74ff0e44385d0d91e3f9fd30957b1 - usearchandroidarm64_2.19.19.zip :
8d6711fc469877edce948088b1a645db4160d52cc9a02f2bb4373c5394beec5f - usearchlinuxamd64_2.19.19.deb :
46696d319cd7baf1a577d3a4a220fde9a324f55da532db31a9bcec5c489538bf - usearchlinuxamd64_2.19.19.so :
3c0f613d5fcbb1189ab8b9e86af960ee0b8300d0f1da50a04300fada43671875 - usearchlinuxarm64_2.19.19.deb :
1efc209541b9782403cfb6b7df5cdbda0ea2576107c4c560f3cc41239bd2e630 - usearchlinuxarm64_2.19.19.so :
08d2e052ae87ae6015f8f0495288b5fa0667eb7ad63e9a418a92250d6c3ac3ae - usearchmacosarm64_2.19.19.zip :
064cc04bbd950b515b13842aa6301c072ee3824dee699e3529648f93c9f94a00 - usearchmacosx86642.19.19.zip :
d9f722d1c48ed7c006a42684dfc005258687e8177186cacf0700be5842c9f7ce - usearchsqlitelinuxamd642.19.19.so :
52f87c6441c2ecdb1d05e4a684fcc89edb57135000f962a4c6a663681d4ca5c2 - usearchsqlitelinuxarm642.19.19.so :
4cb951d2030d27e289cf86ec1a92b524a737a915eba1ac6050ccb48b64f98c8f - usearchsqlitemacosarm642.19.19.dylib :
0f4219fdd009b3051fcc9be24086cf27163b7dfbbface97a796f78a8a26c335c - usearchsqlitemacosx8664_2.19.19.dylib :
81c2836a8c82de2420f9a33622b2c17f79b1a9667264c82e112f4affc5bab084 - usearchwasm2.19.19.tar.gz :
09fd48b9d21dbcbf7421d8428aee50f54fc46a85e457f1c5eebc667c2b432d9e - usearchwasm2.19.19.zip :
9fa4513ca6649a0065cfd910802970d755d4cd99f36007e04329a434bf572e1d - usearchwindowsarm64_2.19.19.tar :
f5991d5981a8cd99052ca2fe48d7646aff334983af70781e3cb9431c7b01fa03 - usearchwindowsx64_2.19.19.tar :
9a71ae207211e38e35f916961d5f7ac8d0dbb3575709bca6d22a58f7b408ceb0 - usearchwindowsx86_2.19.19.tar :
444c2690dc89f8f7cbc9089bf8910ebbfa182ed4fc8ed9d0e539b8bfd930ffd8
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.18
Release: v2.19.18 [skip ci]
Patch
- Make: Prefer
amd64naming overx86_64(f2a7b73) - Make: Resolve
$buildDirin Gradle (b69086f)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.17
Release: v2.19.17 [skip ci]
Patch
- Make: CMake install in C# builds (d8429f2)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.16
Release: v2.19.16 [skip ci]
Patch
- Make: Skip slim JARs (0ced334)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.15
Release: v2.19.15 [skip ci]
Patch
- Make: Separate
fatJartask for Gradle CI (d05bbdf)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.14
Release: v2.19.14 [skip ci]
Patch
- Make: Bump OS versions (4dca276)
- Make: Ignore formatting changes (b29f591)
- Fix: MSVC type-casting warnings (e90ab64)
- Make: MSVC has no
/O3(ab75e94) - Improve: Formatting YAML (66c2aa3)
- Make: Test Windows Arm builds (c932454)
- Make: Sync JAR artifact names (47f661b)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.13
Release: v2.19.13 [skip ci]
Patch
- Make: Compile for Windows on Arm (eb449ec)
- Make: Freeze Swift 6.0 over 6.2 (39d4c70)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.12
Release: v2.19.12 [skip ci]
Patch
- Improve: Formatting Swift code (a400ed5)
- Make: Sync lib names in JARs (86fc86a)
- Make: Triple-pull from NPM (ff1a1a6)
- Make: Auto-override consecutive releases (535a35e)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.11
Release: v2.19.11 [skip ci]
Patch
- Make: Bump & parameterize CI versions (d2f9325)
- Make: Dynamically checksum CI releases (fbd6f3d)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.10
Release: v2.19.10 [skip ci]
Patch
- Make: Cleanup WASM CI (79b1c73)
- Make: Package Android builds (2744fdd)
- Make: Test Android cross-compilation in CI (c5eee4b)
- Make: Match C lib names in JARs (71424d5)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.9
Release: v2.19.9 [skip ci]
Patch
- Make: Packaging fat JARs (1e5d325)
Hashes
- docs.tar.gz :
beca2ee340e35cd2a4a20e6131d8863ee5f687593fbe329d5cba3d4981f92188 - usearch-2.19.9-javadoc.jar :
906dd677411632361a028500fed8ad045d62d6937876313bd70eb4b7eb0d4a15 - usearch-2.19.9-sources.jar :
f159466f41b8b9dfad54f4c310c25db1324c9938616a7b15c043aa363d5f322c - usearch-2.19.9.jar :
b05f6e4bae060b3820e615d1fc3ed954fc0c7a4ef9ba3d53bb54c9a9fe6eafe5 - usearch-v2.19.9.tar.gz :
1bed0205ba66e87bda2850bbeb21e8e3333596f0e812e630143bca72a56c3690 - usearch-v2.19.9.zip :
e1ec90b0622506a48f81e337029f2526fdc8f7122d1df494b429100cf784e0ee - usearchlinuxamd64_2.19.9.deb :
b2ff05868ff606bd67a76c54b6385e28342f943536bc09ea8bdd3ce8898cc790 - usearchlinuxamd64_2.19.9.so :
66bfad899d4502fd1723b9920825cf1ae5b56c8a57adb65ccdc988f3398af226 - usearchlinuxarm64_2.19.9.deb :
6d5dbdbfdf87d834e1218e97e7fdd2e20fe2b42d081a34bd8f69ad5384091f21 - usearchlinuxarm64_2.19.9.so :
597ce0ca7060a0f510499ccecd27242a562f0d5d9e8eeac874af27ade271c22e - usearchmacosarm64_2.19.9.zip :
ca3966c5fe6c34d638d3ba8a270094a0567fb8b0c32f8365aa0a67b43e1e675f - usearchmacosx86642.19.9.zip :
16ee28db91c495ef565b930a69d4de233ed4e84ad89d7fb33692b12e42f20d2c - usearchsqlitelinuxamd642.19.9.so :
52f87c6441c2ecdb1d05e4a684fcc89edb57135000f962a4c6a663681d4ca5c2 - usearchsqlitelinuxarm642.19.9.so :
4cb951d2030d27e289cf86ec1a92b524a737a915eba1ac6050ccb48b64f98c8f - usearchsqlitemacosarm642.19.9.dylib :
0f4219fdd009b3051fcc9be24086cf27163b7dfbbface97a796f78a8a26c335c
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.8
Release: v2.19.8 [skip ci]
Patch
- Make: Packaging fat JARs for all OSes (e4e977d)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.7
Release: v2.19.7 [skip ci]
Patch
- Make: Skip Gradle not supported by Maven (56de0ec)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.6
Release: v2.19.6 [skip ci]
Patch
- Make: Avoid old Gradle syntax (52a4ff6)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.5
Release: v2.19.5 [skip ci]
Patch
- Improve: Expose
bf16for C users (2d09e71) - Fix: Consistent types in Java SDK (fd1509d)
- Make: Java builds for Windows (5884b0d)
- Make: Use Maven Central over OSSRH (1f55fc2)
- Improve: Signal instead of uninitialized matches (1979128)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.4
Release: v2.19.4 [skip ci]
Patch
- Make: Download
prebuildsin CI (aabb41c) - Improve: Check JS results count (#651) (80fe46c)
- C++
Published by ashvardanian 6 months ago
usearch - Release v2.19.3
Release: v2.19.3 [skip ci]
Patch
- Fix: MSVC won't recognize
notkeyword (f79e703) - Improve:
erase_iffor neighbors lists (10670a9) - Fix: Correctly pass 'allow' predicate as argument of indexdensegt::isolate (817d7f5)
- Fix: Correctly remove all incoming links in index_gt::isolate (6339676)
- C++
Published by ashvardanian 7 months ago
usearch - Release v2.19.2
Release: v2.19.2 [skip ci]
Patch
- Improve: Fetch crate version (#644) (164b492)
- C++
Published by ashvardanian 7 months ago
usearch - v2.19.1: Multi-threading Usability in Python & JavaScript
Thanks to @Stefano-t the Python and JS bindings require one less step to start working with a restored index. It was a common usability issue, and now it's gone!
Patch
- Fix: Reasonably clamp thread-counts (663eb9b)
- Docs: Recommend
--force-reinstall(315dfb5) - Fix: Infinite loop over
index.keys(0168744) - Fix:
py::enum_leak (10b3659) - Fix: Avoid copy into
bytesand use after free (203a76b) - Improve: Explicitly using
memoryview(bb36d3b) - Improve: Cleaner multithreaded PyTests (54307f0)
- Improve: Drop redundant test (5ceead8)
- Improve: Multithreaded JS tests (ea874aa)
- Docs: Inferring threads count in JS (cb50123)
- Improve:
threadsparameter in exact search in JS (d96a237) - Improve:
threadsparameter in search function in JS (b490758) - Improve: PyTest for multithread search after restore (be1cbdb)
- Fix:
try_reservewhen restoring index from disk (090b1d4)
- C++
Published by ashvardanian 7 months ago
usearch - v2.19: Rust & Python Improvements
Thanks to @frank-lsf, viewing Python's native buffers works as expected! Thanks to @couguiv, passing closures from Rust to C++ is also fixed! Thanks to @laurenspriem, Rust users can now also run each search queries! This PR also adds concurrent tests using Fork Union, instantiating many threads, indexing & searching concurrently 🚀
Minor
- Add: Exact search in Rust bindings (#616) (77b590a)
- Add:
reserve_capacity_and_threadsfor Rust (0ec06dc) - Add: Concurrent Rust tests (8a537c3)
Patch
- Fix: Rust static checks with Clippy (c41dc5a)
- Fix: Use exact search for consistency tests (bbd6928)
- Make: Bump Fork Union to 2.1 (a75bb4d)
- Fix:
MetricFunctionexample (0e740ed) - Docs: Running tests via
uv(1d12aeb) - Fix: Detect buffer-like objs pre Python 3.11 (a7990d7)
- Make: Upgrade SimSIMD (5a52c1e)
- Fix: Typo in test (ead8675)
- Fix: Properly deallocate the closure when dropping the Index (c68fffe)
- Fix:
load&viewany buffers in Python (#618) (0f20eba) - Fix: Use Box::into_raw to use Rust closure in C++ (486ddda)
- C++
Published by ashvardanian 8 months ago
usearch - v2.18: Copy-Less Indexing
Most importantly, this minor release fixes the copy-less indexing feature, which can help keep memory usage low in index_dense_gt instantiations. Thanks to @jrwinter for spotting! Now, the memory usage of the index itself remains very low, reducing your applications' overall memory requirement by around 2x in a best-case scenario:
```py from usearch.index import Index import numpy as np
keys = np.arange(1000000) vectors = np.random.rand(1000000, 1_536).astype("float32") # 5.7 GB
index = Index(ndim=1536, dtype="float32") index.add(keys, vectors, copy=False) index.memoryusage # 0.26 GB instead of 8.25 GB ```
Other minor changes include:
- C# bindings now support binary vectors. Thanks to @mlveggo for the implementation!
- .NET 7.0 STS is deprecated in favor of 8.0 LTS.
- Python 3.7 is deprecated in favor of 3.8 as the new minimum requirement.
- C++
Published by ashvardanian 8 months ago
usearch - Release v2.17.12
Release: v2.17.12 [skip ci]
Patch
- Fix: Init
cast_buffer_in loads/views (#621) (76c6bb3) - Fix:
__usearch_raise_runtime_errorlexing UB (#622) (6e80bed)
- C++
Published by ashvardanian 8 months ago
usearch - Release v2.17.11
Release: v2.17.11 [skip ci]
Patch
- Make: Don't
overwriteartifacts (b16bafa)
- C++
Published by ashvardanian 9 months ago
usearch - v2.17.10: JS Builds & Armv8-R Support
Patch
- Make: Bump SimSIMD to handle Armv8-R (6120597)
- Make: Pull only JS artifacts in CI (58dcdaa)
- Make: Format settings (e16f26f)
- C++
Published by ashvardanian 9 months ago
usearch - v2.17.9: Python 3.13t "No-GIL" Builds
- [x] bumps SimSIMD to a more broadly-compatible version.
- [x] bumps CI to provide better versioning & release notes.
- [x] builds no-GIL Python bindings & uploads 'em to PyPi.
Patch
- Make: Bump SimSIMD to 6.4.7 (279b034)
- Make: Enable no-GIL builds (7a91b55)
- Make: Bump TinySemVer (150714b)
- C++
Published by ashvardanian 9 months ago
usearch - v2.17.8: Higher Recall + Python, JS, & Swift Improvements
This is a very warm release! It doesn't break anything, doesn't change too much, but will be beneficial to all users - big or small - from indie devs to larger orgs (AFAIK every major AI lab now uses USearch), and is mostly driven by the community, not by me. So thanks to everyone 🤗
- @ycw66 found a core algorithmic issue, which yielded a 30% recall improvement in my testing 👏
- @frank-lsf suggested a new API to forward variadic arguments in
Index.restorein Python 👏 - @abetomo noticed the error handling issues in newly multi-threaded JS batched methods 👏
- @mapleFU fixed radius update issue when passing filter predicates to the core engine 👏
- @brittlewis12 fixed Swift compilation issues with half-precision
Float16and visionOS 👏
- C++
Published by ashvardanian 9 months ago
usearch - BF16, New Swift SDK for Linux, Redesigned Java SDK ☕
This PR brings a new BF16 interface for adding and retrieving vectors in the C++ SDK and adds a new way to compile Swift bindings on Linux, a much safer Java SDK, and more:
- Thanks to @danpalmer for rewriting the whole Swift binding 🤗
- Thanks to @anirudlappathi & @egorovcharenko for
bf16patches 🤗 - Thanks to @Light-V for noticing type-casting issues in
bench.cpp🤗 - Thanks to @IoeCmcomc for fixing
__delitem__problem inindex.py🤗 - Thanks to @agoncharuk for fixing key types in the Java Native Interface 🤗
- C++
Published by ashvardanian 11 months ago
usearch - Release v2.17.2
Release: v2.17.2 [skip ci]
- C++
Published by ashvardanian about 1 year ago
usearch - Release v2.17.1
Release: v2.17.1 [skip ci]
- C++
Published by ashvardanian about 1 year ago
usearch - Release v2.17.0
Release: v2.17.0 [skip ci]
- C++
Published by ashvardanian about 1 year ago
usearch - Release v2.16.10
Release: v2.16.10 [skip ci]
- C++
Published by ashvardanian about 1 year ago
usearch - Release v2.16.9
Release: v2.16.9 [skip ci]
- C++
Published by ashvardanian about 1 year ago
usearch - Release v2.16.8
Release: v2.16.8 [skip ci]
- C++
Published by ashvardanian about 1 year ago
usearch - Release v2.16.7
Release: v2.16.7 [skip ci]
- C++
Published by ashvardanian about 1 year ago
usearch - Release v2.16.6
Release: v2.16.6 [skip ci]
- C++
Published by ashvardanian over 1 year ago
usearch - Release v2.16.5
Release: v2.16.5 [skip ci]
Hashes
- docs.tar.gz :
df88cc20a8fd09efdd0fb0ff06a4ce90fe1d7f46bf0507cd9e93738f3f8dfdb3 - usearch-v2.16.5.tar.gz :
f24cf66c0f068e6bf9593946d2d44d0d07f1f4832cccad8a9102a65fb0150e3f - usearch-v2.16.5.zip :
03e0ea74cdca4a1020af6a85abe09ed9de5f83f02053ffe90d8fa03c584a928d - usearchlinuxamd64_2.16.5.deb :
0335a7cab4a58c914f06c320a88c36fae146ce247d199b33d77506ec840022c6 - usearchlinuxamd64_2.16.5.so :
5f1a7752762e3295e8206c94ebb449bd0bce2f049893dd48345b3f5472e888b3 - usearchlinuxarm64_2.16.5.deb :
19f186c81788cf91c21cc69ba7403396ebe45b065f0c9f9095dfa151e4fc17bc - usearchlinuxarm64_2.16.5.so :
ffdd5c9bc55f7f035457ada3a60a74f8e50c3bac79ed0530050134e41735b9b3 - usearchmacosarm64_2.16.5.zip :
8a360f8ab1f15637bb0b816c42115e992a27fa0a42d526e3f08880ca9e338898 - usearchmacosx86642.16.5.zip :
80c85c90424b98ec2b8857c252ae81a5c3e4c09df14d3692085938f9bb82f26a - usearchsqlitelinuxamd642.16.5.so :
030a902cfd2bdc37c0049f74918b049d893dda019328dbbf47119963c7694c8f - usearchsqlitelinuxarm642.16.5.so :
4244ca64420f4a50a74d17f6b3ad911a7884510f5392e935dc53a3df5798ac46 - usearchsqlitemacosarm642.16.5.dylib :
7d7b7724305105527bc80f20fe23451a110c05533126021d6245a1249c73259b - usearchsqlitemacosx8664_2.16.5.dylib :
210fda12b2412c77eee4dd706b7eb143e3491dff4ba3334333345c0bc6eb2334 - usearchwasmlinuxarm642.16.5.tar.gz :
4845e63c4d83e09bc2864c7fa4fa62f39599836026b7e5397a8d76c9706f8cc5 - usearchwasmlinuxx8664_2.16.5.tar.gz :
feacd61f04aa34c43ee428cfeac8c90611212676509ade3ec5c80388cb535621
- C++
Published by ashvardanian over 1 year ago
usearch - Release v2.16.4
Release: v2.16.4 [skip ci]
- C++
Published by ashvardanian over 1 year ago
usearch - Release v2.16.3
Release: v2.16.3 [skip ci]
- C++
Published by ashvardanian over 1 year ago
usearch - Release v2.16.2
Release: v2.16.2 [skip ci]
- C++
Published by ashvardanian over 1 year ago
usearch - Release v2.16.1
Release: v2.16.1 [skip ci]
- C++
Published by ashvardanian over 1 year ago
usearch - v2.16: Mixed-Precision K-Means
Many data scientists embark on their journey by implementing K-Means clustering, much like app developers starting with a calculator. But despite K-Means’ popularity, most implementations overlook the power of SIMD on modern CPUs. Efficient vector math, especially with single- and double-precision floating-point vectors, is challenging due to the computational cost of accuracy. Meanwhile, float16, bfloat16, and smaller types can fail under uneven distributions or when computing centroids for large clusters. So, what’s Unum’s solution? Mixed precision!
Thanks to strong community support and sponsorship from @sutoiku (LinkedIn, Website), we're introducing a high-performance K-Means implementation! It utilizes any numeric type for distance calculations, switching to float64 for centroid updates, a technique that boosts performance and enables billion-scale clustering on a single machine.
- C++
Published by ashvardanian over 1 year ago
usearch - Release v2.15.3
Release: v2.15.3 [skip ci]
Hashes
- docs.tar.gz :
423fd002bd83e263c0a9cb2508b5b8c813dfae9f0c26c11321e11f07df1f5bde - usearch-v2.15.3.tar.gz :
badb87b82ee5699e1555f55298a265f94edeae03f087bb16ca588f7a43b246c4 - usearch-v2.15.3.zip :
f3598138b6a8922e3770c4bfb094b91807209157438ce3a535fe11099890b316 - usearchlinuxamd64_2.15.3.deb :
eb5b4c47f03e35abeba4b9fb2708e6e2c0f63b25acbc876ea25956163609d1a3 - usearchlinuxamd64_2.15.3.so :
3052c1c37b75e45228bc0f94421c0e5133ad792f99229aa3df875a6836905458 - usearchlinuxarm64_2.15.3.deb :
4291fb414f4bb2051293b39ae0217c57081b293e1ac7ad9070a7c0be9ff29a1d - usearchlinuxarm64_2.15.3.so :
930a7de642bfcc534203a0471f5b1803114de63b64b50d262e3202950c5955bd - usearchmacosarm64_2.15.3.zip :
a9639b285368df8fbac43456cb640ca287757a46a8ef9fa40800d2a2da2e84d7 - usearchmacosx86642.15.3.zip :
ee843f82305d2b8192e2488719fe89e5d7fe02d412e1a99cfe57c372f0807c80 - usearchsqlitelinuxamd642.15.3.so :
281a3414455767fe1925b0a9de0551cce258d4bc9146ea4934179b63d70fa173 - usearchsqlitelinuxarm642.15.3.so :
05c4ed19aa57ac778d9240c2d31b817adb19788e2d21a6215249b49daf5dea9c - usearchsqlitemacosarm642.15.3.dylib :
f966a1eff9a6032b8c8de0383ab08e619dc0a65e4829386d19b5f7e131604487 - usearchsqlitemacosx8664_2.15.3.dylib :
19b9c48b02dab0980e4fd482b4008fbfe4c8e7e2da6b719630f51a78b70d7613 - usearchwasmlinuxarm642.15.3.tar.gz :
7c6735ff24b29962626889632537df40eac6bc57e6d41dff8c22c47b65a07951 - usearchwasmlinuxx8664_2.15.3.tar.gz :
b9137d94a68eed1864e027c37e9089154c3c559b1677ac465cd8dca9918482c0
- C++
Published by ashvardanian over 1 year ago
usearch - v2.15.2: Android compatibility 🤖
Contributors, we are still looking to improve Android compatibility in Java SDK, potentially Kotlin bindings, and an extended CI pipeline to ensure consistent behavior. Thank you all for support and help 🤗
- C++
Published by ashvardanian over 1 year ago
usearch - v2.15.1: Mixed Precision Kernels, Windows Builds, and Docs
What's Changed
- Test: Use
constinstead ofvarin JS by @abetomo in https://github.com/unum-cloud/usearch/pull/479 - Make: Rust Windows builds by @brkp in https://github.com/unum-cloud/usearch/pull/472
- Docs: Update JavaScript code example by @abetomo in https://github.com/unum-cloud/usearch/pull/478
- Mixed Precision Kernels, Windows Builds, and Docs by @ashvardanian in https://github.com/unum-cloud/usearch/pull/476
New Contributors
- @brkp made their first contribution in https://github.com/unum-cloud/usearch/pull/472
Full Changelog: https://github.com/unum-cloud/usearch/compare/v2.15.0...v2.15.1
- C++
Published by ashvardanian over 1 year ago
usearch - v2.15: New Obj-C, Swift, and GoLang APIs
- [x] Get API for ObjC and Swift #455
- [x] Feature parity between C and GoLang #409
- [x] Swift & Obj-C bindings for
filteredSearch#471
Thanks to @abetomo, @sdenton4, @brittlewis12, @vardhan, and @MarkReedZ for help 🤗
- C++
Published by ashvardanian over 1 year ago
usearch - `bf16` by default, even in Python 🐍
Previously, on modern CPUs the USearch index would default to f16 IEEE 16-bit floating point numbers, when used through high-level bindings, like Python. That format is more common in the Pythonic ecosystem, and it's supported by NumPy. Still, it's much less efficient and harder to convert to/from f32. The alternative is to use bf16, which is more hardware friendly, and upcast to f32, when we need to export the data back to Python. That's the new default behavior.
What's Changed
- Default to
bf16by @ashvardanian in https://github.com/unum-cloud/usearch/pull/465
Full Changelog: https://github.com/unum-cloud/usearch/compare/v2.13.5...v2.14.0
- C++
Published by ashvardanian over 1 year ago
usearch - Release v2.13.5
Release: v2.13.5 [skip ci]
- C++
Published by ashvardanian over 1 year ago
usearch - Fixing Rust Dynamic Dispatch
Last few releases of USearch for Rust didn't include SimSIMD. Expect things to get much faster, if you are a 🦀 user 🤗
- C++
Published by ashvardanian over 1 year ago
usearch - Release v2.13.3
Release: v2.13.3 [skip ci]
- C++
Published by ashvardanian over 1 year ago
usearch - Release v2.13.2
Release: v2.13.2 [skip ci]
- C++
Published by ashvardanian over 1 year ago
usearch - Release v2.13.1
Release: v2.13.1 [skip ci]
- C++
Published by ashvardanian over 1 year ago
usearch - Error Handling, Update Stability, and Improved SDKs
USearch implementation had 2 layers, the core HNSW structure implemented in index.hpp and the high-level wrapper for dense equidimensional vectors in index_dense.hpp. In this release, we've made the top layer thinner and cleaner, also making this APIs more similar, error-handling more consistent, and builds faster.
Reducing Dependencies & Accelerating Builds
Previously index_dense.hpp had the following STL includes:
```cpp
include // std::thread
std::threadinclude // std::function
std::functioninclude // std::vector
std::vectorinclude // std::iota
std::iota```
Those are some of the most common includes in C++ projects, also the ones I like the least. Here are a couple of reasons to hate them, taken from the "C++ Compile Health Watchdog":
| name | compilation time | lines of code | binary size |
|------------|------------------|---------------|--------------|
| <functional> | 82 .. 228 ms | 12.9 .. 27.4 kLoC | 0 .. 141 kB |
| <vector> | 32 .. 48 ms | 7.1 .. 8.0 kLoC | 0 .. 8.2 kB |
| <numeric> | 7 .. 13 ms | 1.6 .. 2.1 kLoC | 0 .. 3.3 kB |
| <thread> | 110 .. 189 ms | 17.5 .. 20.3 kLoC | 0 .. 153 kB |
Reduced Memory Consumption for DBMS-like Users
Most databases using USearch, would prefer to have a smaller index at the cost of some functionality. As mentioned by @rschu1ze, if enable_key_lookups is disabled, and some external DBMS is responsible for "key to vector" mappings, the memory consumption of the index_dense_gt can be further reduced.
Other Improvements
- In update-heavy workloads, it's possible to encounter an undefined behavior, leading to a corrupt index state.
- In aligned-alloc an integer overflow was resolved by @antonio2368.
- Search is now exhaustive by default, so if you have ≥10 items in the index and ask for 10 closest vectors, you are expected to get 10, not ≤10.
- Extended
get,loadFromPath, andviewFromPathAPIs for Java by @mccullocht. - On GCC 12 and older the
#pragma regionwarning was resolved by @mbautin. - Casts to
uint40_tslot IDs have been fixed by @Ngalstyan4. - Casts to
b1x8_tvectors have been fixed by @Ngalstyan4. - Python type annotation has been added by @jamesbraza.
- C++ example was patched by @SheldonFung98.
- JavaScript duplicate exports patched by @eryue0220 & @johnhorsema.
- Checking the number of dimensions in Rust by @jbrummack.
- Marking Rust index views unsafe with @bddap.
- Documenting reserve-save-load behavior with @GoodKnight.
- Patching argument types in C# tests with @brittlewis12.
- C++
Published by ashvardanian over 1 year ago
usearch - v2.12.0
2.12.0 (2024-04-29)
Add
- String-search example (6dc574f)
Docs
Fix
/EHceffect on exceptions in MSVC (d1be7d5)metric_jaccard_gtout-of-bounds (11e344a)- Overload resolution in MSVC (62f9b61)
- UBSan alignment complaints (813e992)
Improve
- Safeguard against uninitialized buffers (689fe19), closes ClickHouse/ClickHouse#61780
- Test obscure initializations (a9525d5)
- Tests for variable length sets (7b3b13a)
Make
- Move benchmark docs (a22ab47)
- C++
Published by ashvardanian almost 2 years ago
usearch - New Rust 🦀 & C 🐂 APIs in USearch v2.11
```c
include // For printing.
include // For assertions!
include // For the win 🚀
```
Filtering with Predicates
The new USearch release exposes low-level C++ predicated-search functionality to Rust and C 99, also providing several convenience methods already present in the Python and JavaScript APIs. In Rust you may use it like this:
rust
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"
);
The same using the C:
```c int isodd(usearchkey_t key, void* state) { return key % 2; }
int main() { ... usearchkeyt foundkeys[10]; usearchdistancet founddistances[10]; usearchfilteredsearch( index, &query[0], usearchscalarf32k, 10, &isodd, NULL, // no state needed for this callback &foundkeys[0], &founddistances[0], &error); ```
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][haversine] distance to creating custom metrics for composite embeddings from multiple AI models, like joint image-text embeddings. You could already use Numba, Cppyy, or PeachPy to define your custom metric even in Python:
```py 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 pythoninnerproduct(a, b): aarray = carray(a, ndim) barray = carray(b, ndim) c = 0.0 for i in range(ndim): c += aarray[i] * barray[i] return 1 - c
metric = CompiledMetric(pointer=pythoninnerproduct.address, kind=MetricKind.IP, signature=MetricSignature.ArrayArray) index = Index(ndim=ndim, metric=metric, dtype=np.float32) ```
Similar effect was much easier to achieve in the C++ layer, and is now also exposed to Rust and C.
```c simsimddistancet callback(void const* a, void const* b, void* state) { // Your custom metric implementation here }
int main() { ... void callbackstate = NULL; usearchchangemetric(index, callback, callbackstate, usearchmetricunknown_k, &error); ```
Let's say you are implementing a weighted distance function to search through joint embeddings of images and textual descriptions of some products in a catalog, taking some UForm or CLIP-like multimodal embedding models. Implementing that in Rust using SimSIMD for unimodal slices may look like:
```rust use simsimd::SpatialSimilarity;
let imagedimensions: usize = 768; let textdimensions: usize = 512; let imageweights: f32 = 0.7; let textweights: f32 = 0.9;
let weighteddistance = Box::new(move |a: *const f32, b: *const f32| unsafe { let aslice = std::slice::fromrawparts(a, imagedimensions + textdimensions); let bslice = std::slice::fromrawparts(b, imagedimensions + text_dimensions);
let image_similarity = f32::cosine(a_slice[0..image_dimensions], b_slice[0..image_dimensions]);
let text_similarity = f32::cosine(a_slice[image_dimensions..], b_slice[image_dimensions..]);
let similarity = image_weights * image_similarity + text_weights * text_similarity / (image_weights + text_weights);
1.0 - similarity
}); index.changemetric(weighteddistance); ```
Broader Type System for Rust
USearch supports the Rust-native f32 and f64 scalar types, as well as the i8 for quantized 8-bit scalars. Going beyond that, USearch supports non-native f16 and b1x8 for half-precision floating point and binary vectors, respectively.
Half Precision Floating Point
Rust has no native support for half-precision floating-point numbers, but USearch provides a f16 type. It has no advanced functionality - it is a transparent wrapper around i16 and can be used with half or any other half-precision library. Assuming USearch uses the IEEE 754 no conversion is needed, you can unsafe-cast the outputs of other IEEE-compliant libraries to usearch::f16.
```rust use usearch::f16 as USearchF16; use half::f16 as HalfF16;
let vectora: Vec
let buffera: &[USearchF16] = unsafe { std::slice::fromrawparts(ahalf.asptr() as *const SimF16, ahalf.len()) }; let bufferb: &[USearchF16] = unsafe { std::slice::fromrawparts(bhalf.asptr() as *const SimF16, bhalf.len()) };
index.add(42, buffera); index.add(43, bufferb); ```
Binary Vectors
USearch also implement binary distance functions and natively supports bit-vectors. If you initialize the index with quantization: ScalarKind::B1, you can add floating-point vectors and they will be quantized mapping positive values to 1 and negative and zero values to 0. Alternatively, you can use the b1x8 type to represent packed binary vectors directly.
```rs let index = Index::new(&IndexOptions { dimensions: 8, metric: MetricKind::Hamming, quantization: ScalarKind::B1, ..Default::default() }) .unwrap();
// Binary vectors represented as b1x8 slices
let vector42: Vec
// Adding binary vectors to the index index.reserve(10).unwrap(); index.add(42, &vector42).unwrap(); index.add(43, &vector43).unwrap();
let results = index.search(&query, 5).unwrap();
// Validate the search results based on Hamming distance asserteq!(results.keys.len(), 2); asserteq!(results.keys[0], 43); asserteq!(results.distances[0], 2.0); // 2 bits differ between query and vector43 asserteq!(results.keys[1], 42); assert_eq!(results.distances[1], 6.0); // 6 bits differ between query and vector42 ```
Metadata
Both C and Rust now provide:
memory_usageAPI, that reports the number of bytes consumed.hardware_accelerationAPI that reports the codename for used SIMD extensions.
Changelog 2.11.0 (2024-04-08)
b1x8for Rust (540fc75)filtered_searchAPI in C & C++ (5bb38aa)filtered_searchin Rust (e1b24e1)- Hyper-param configs in C (c7ed1d4)
- Metadata extraction in C (2c698cd)
- Guides for Rust and C (fe05ad8)
-Wdeprecated-this-capture(#387) (a233e20), closes #387- Explicit capture (208e383)
- Filter the entry point in the 0 layer (4ff568b)
- JS imports & Doxygen (#384) (7356158), closes #384
- More adequate default Rust params (c4f9e65)
metric_punned_tstatic methods (220ef57)- Configure Rust compilation options (32c9f3b), closes #378
- Include sources in Crates (0d414e4)
- C++
Published by ashvardanian almost 2 years ago
usearch - Broader Compatibility in USearch v2.10.0
USearch v2.10.0 brings major compatibility improvements:
- Better CMake thanks to @Ngalstyan4 🤗
- Pre-build JavaScript binaries thanks to @sroussey 🤗
- Better docs thanks to @simonw 🤗
Notable new features include:
- Use AVX in Windows Python images (c694880)
- Standalone SQLite binaries (227083b)
- Introspecting SIMD capabilities in Rust builds (16fa90f)
- Pretty printing the index with
__repr_pretty__(7087138) - Improved bit-casting for negative
float-s (1d03a9d)
Moreover, new USearch ships 50 binaries to PyPi, covering more platforms than NumPy with 35, but still fewer than SimSIMD and StringZilla with 105. More improvements to come to the most portable fast approximate nearest neighbors search engine 🥳
- C++
Published by ashvardanian almost 2 years ago
usearch - v2.9.2
2.9.2 (2024-03-05)
Docs
Fix
index.vectorscomputed property (fe710cc), closes #349multiinitialization in C tests (7f4dee4)- Add BigInt validation in index creation,Node Support (5c61c95)
- Bugfix for importlib attrib error (1bc24dd)
- No Pearson correlation for 1d data (3b09259)
- ordering keys before comparison (6bf1df8)
- Reordering vectors before comparison (a4fb305)
Make
- Upgrade SimSIMD & StringZilla (e7aac02)
Hashes
- docs.tar.gz :
71c0d872c29a98d2fdbfbd27946682372138f54512e701d3f40810cb8566ab0d - usearch-v2.9.2.tar.gz :
16736360f30c9e27d9544ac1fc7662939e02ea223c748e29e8e18ba282a2eadf - usearch-v2.9.2.zip :
572988a414ddc8ebe6091648c6fe12edfe3fb01ddb2c4000a3538d56e547aa76 - usearchlinuxamd_2.9.2.deb :
4025bf124e3ee32029407a85b8eb7011e9a3ce1f19f5057cc674391264947ea2 - usearchlinuxarm_2.9.2.deb :
a9ad80f35789b5f661ad8fd2d01663661d036c61ff04a9109a6e8ef9d20f3a99 - usearchmacOSarm64_2.9.2.zip :
ebfc16c1da6029110260dbb3bd5b3e1c20855cc5ffaa69ee00d30436f2bf377b - usearchmacOSx86642.9.2.zip :
7860f96675d87ff3afc0587e5940a3732e54c933057ad1290802ae8110a945f0 - usearchwasmlinuxarm642.9.2.tar.gz :
a610edde242ee047156945b82dcf9ad02448fce5c815ae57f87296ffa81ddecd - usearchwasmlinuxx8664_2.9.2.tar.gz :
4e389a217fad0c7f2802697330c8b19cbbee09201c9e85542404f694d17426e2 - usearchwasmmacosarm642.9.2.zip :
d88faf6739742a6c141736a6565eaae1316e327d295023501c97b5d77abac895 - usearchwasmmacosx8664_2.9.2.zip :
dc9a5df62be5ffad2fa37f312cfce213f4cc669d9bd3b8e117c518e132db3ce7 - usearchwasmwindowsx642.9.2.tar.gz :
80a8aac793c5bd537eef7b16c22186886ae1f6146a50fb4c06068eb3a8894d10 - usearchwasmwindowsx862.9.2.tar.gz :
2746e5cc7a172017324f76922bc9803309a5d9b3caf21df14ded9ce29faedb57 - usearchwindowsx64_2.9.2.tar :
440924a5e7aba5fd95daf673043b7a6fee3447ecefc3c2f380acee8c5626bed6 - usearchwindowsx86_2.9.2.tar :
bf851998175614f406ba31395c07f4d65a9f98ef1f09003e2fe00cb180c13ad0
- C++
Published by ashvardanian almost 2 years ago
usearch - v2.9.1
2.9.1 (2024-02-27)
Fix
- Explicit narrowing conversions (25436ae)
- Match enum values between C and C# (4a69086)
- Recovering quantization settings in
load(fd53619), closes #353 #343 - wildcard ES module imports (#351) (d5091ac), closes #351
Improve
Make
Hashes
- docs.tar.gz :
80b75daa7f627b9a96607fff2498d695f71dc4a12f3695bc9a3521ae8fc12f6a - usearch-v2.9.1.tar.gz :
69f22afb6da763c11840ca28307523b1cd1154d6925b0f05235af9e49674eba0 - usearch-v2.9.1.zip :
771f434c5cd818c4e6b395ab5cc7ac755b167417a724a9bb70f95954f21cb603 - usearchlinuxamd_2.9.1.deb :
e12ba570f5f8eba17221218e1d49f9fae5f5936cb7c21727df1f72f6712d3490 - usearchlinuxarm_2.9.1.deb :
ce6fb426af55a96324f77d1ada9ab58cf741ea787358e681e17805601f359279 - usearchmacOSarm64_2.9.1.zip :
6a1c951c429172867d2b0849ca775b1c87e0f051303337dbf09e1dccbfaa7d79 - usearchmacOSx86642.9.1.zip :
8e3a2af95febddde4cf78f6adb187cda7375655308a946f20b59a7fd5381eb88 - usearchwasmlinuxarm642.9.1.tar.gz :
470440a59551fb9f3a980a5837f5bbe95b37f0527dbaa41cd5d0e662f9e51551 - usearchwasmlinuxx8664_2.9.1.tar.gz :
bb577526cedfbf4ec3310e74a49b158145bb17ded857c0d80718fb1154470348 - usearchwasmmacosarm642.9.1.zip :
e4c26aa027cab0f0322ecb8cc6d13ef124acf6191e250fee132b183568b9591e - usearchwasmmacosx8664_2.9.1.zip :
717e1a2a7d9b53bab74df2768c86863d597857bd7a2be7edbb4cc201e15a2600 - usearchwasmwindowsx642.9.1.tar.gz :
34faf4748899305e9b8c688462a183295ed1e39bdf60bfc6da4348dd3de755a1 - usearchwasmwindowsx862.9.1.tar.gz :
967f2c40e22a2cf51b0e92558c653bd2585440cc0fc827701160a3d8c718dc0e - usearchwindowsx64_2.9.1.tar :
f73729ce83e3501d994bc8dc336c188c91b14aad5a473846f1fe74ed53cccd9a - usearchwindowsx86_2.9.1.tar :
0d68b669a7ae3607b74a7a27005653aaa7607be74e4dfa57ffcd6fb0148d2ba6
- C++
Published by ashvardanian almost 2 years ago
usearch - v2.9.0
2.9.0 (2024-02-22)
Add
Docs
- Header refreshed (7465c29)
- Py and SQLite extensions (550624b)
- README.md link to Joins (#327) (1279c54), closes #327
Fix
- bug reports were immediately marked invalid (c5fc825)
- Error handling, mem safety bugs #335 (#339) (4747ef4), closes #335 #339
- Passing SQLite tests (6334983)
- Reported number of levels (9b1a06a)
- Skip non-Linux SQLite tests (b02d262)
- SQLite cosine function + tests (55464fb)
- undefined var error in
removeapi (8d86a9e)
Improve
Make
npi ci(#330) (5680920), closes #330- Add 3.12 wheels (d66f697)
- Change include paths (21db294)
- invalid C++17 Clang arg (2a6d779)
- Link libpthread for older Linux GCC builds (#324) (6f1e5dd), closes #324
- Parallel CI for Python wheels (a9ad89e)
- Upgrade SimSIMD & StringZilla (5481bdf)
Revert
- Postpone Apache Arrow integration (5d040ca)
Hashes
- docs.tar.gz :
068f9712d50aa9734dd636ffce9a58453544754bc476f7df2aa07b3634816d46 - usearch-v2.9.0.tar.gz :
f2ceef55ba874b1ab14b115f8a8487848ebdd1384425497b1a76a6e4c1ab6718 - usearch-v2.9.0.zip :
51ec2db7403bf31459f0a63f90fe0437031f9353134a51837a68afbc59605fba - usearchlinuxamd_2.9.0.deb :
723cfa1d56dd909b3d6da2bf1c1d2d55625239574ccbad7d69ed4efb93c64e33 - usearchlinuxarm_2.9.0.deb :
4b277ccdfd93cfdddd983a215d3d588f4cb6cffda3dfe07cc4f9675aa47fd373 - usearchmacOSarm64_2.9.0.zip :
0c3f9df3b62292ad8adabe03f36336ab08bc556e4a7dd082b39347fd95e9d062 - usearchmacOSx86642.9.0.zip :
5baa0a303b9d0cad829c995f6cfeb0eccc968cb01ef45313c3907ba1da2e0c8c - usearchwasmlinuxarm642.9.0.tar.gz :
2726dec40ad971f0140e444d2ed0857829be197b5fd42483f0d77c22f8c4b062 - usearchwasmlinuxx8664_2.9.0.tar.gz :
241fe2473a9baac74ef782432465176e77261c5c6bbb2de6cccdbb37ecae4d78 - usearchwasmmacosarm642.9.0.zip :
573bea5c54503b4ccb573169a367a9018b552d9c8de627443462da409c751376 - usearchwasmmacosx8664_2.9.0.zip :
feeb8f5a8e0a58d337f44fb59d86caf595bbd88ce1f8f99465f0de2535efc7a5 - usearchwasmwindowsx642.9.0.tar.gz :
b5551b5364c1f8cf72ff27f9930a7cacbbf68f3e643181cffb29e6389d02d191 - usearchwasmwindowsx862.9.0.tar.gz :
1e232da2280c9bd10f39e06801c32859b72b2b22aff5d482f71aa04ec001cae6 - usearchwindowsx64_2.9.0.tar :
22dadba584463f93b22bc97c816b7d5451459211ed9b21bdc995bab53358fde5 - usearchwindowsx86_2.9.0.tar :
5421825873e60d6cc7083d95a02a4928f6187e3f4d4fe2f92a6706f30713db46
- C++
Published by ashvardanian almost 2 years ago
usearch - v2.8.15
2.8.15 (2024-01-09)
Fix
Hashes
- docs.tar.gz :
1083f4feafdcb4e2f58df423302cf0bf66cf55e3d03b14d902e462760a055a9f - usearch-v2.8.15.tar.gz :
551909e77acb8a83dff948ba7ae2689a8c87f11cb99c190b69b24d613e42ff1d - usearch-v2.8.15.zip :
1e4ed46061cf2b9bf426ed0b230cffd91ec8115a8744682d47350695100b2384 - usearchlinuxamd_2.8.15.deb :
cdf91489cd1d74eaa8cdb4e599f2f10e93b7fa2ad9f06f31353d350ee573d43e - usearchlinuxarm_2.8.15.deb :
09090bfbf4d164995279022e4f0f47ac78cb1a20f4b07bbccdb8a078f5e6cb6b - usearchmacOSarm64_2.8.15.zip :
8eb411e10183273ca5dfea133c4406f24d537b9e593293100786616da9085940 - usearchmacOSx86642.8.15.zip :
08075a3bbd6ff327a92cfc8729d16f50113689fd689452ef7059fb87d16850c9 - usearchwasmlinuxarm642.8.15.tar.gz :
fdd51bc4ee2e8e9409dd1dce050d0c29938d05e10f9d353e55d0aa288a133ca8 - usearchwasmlinuxx8664_2.8.15.tar.gz :
77624e1a46b2e34cdd10a0eb772fe3754b35867025543760812cb4c553542b60 - usearchwasmmacosarm642.8.15.zip :
466700de9092d412651f526a93d597756387e9a5cc6f92ba72f057c2af903e68 - usearchwasmmacosx8664_2.8.15.zip :
44f60623ca6a48f0d63030a72f4a876c65fc43c2887ca8b9a7a6c7c94f035903 - usearchwasmwindowsx642.8.15.tar.gz :
834bb4f96bf557e8d167dc8c0cffe39348a2dc71e914c62b7a2c8acda9f54fd7 - usearchwasmwindowsx862.8.15.tar.gz :
b1eea6d42c47f49a0cc305e7e7bb31339360a6f4ed30f6b39924cf39704327b2 - usearchwindowsx64_2.8.15.tar :
91ddee43f7aca3c8c2305bfc18a141d5581a7589b6262b2de99dc05f046dc53f - usearchwindowsx86_2.8.15.tar :
75895cc4cfe9a999fd3d448726a5f9b24c29c240dc4a6d8b29d51b70cc65f3a7
- C++
Published by ashvardanian about 2 years ago
usearch - Faster Double-Precision Math
As was discussed in the SciPy integration thread, Python libraries use double-precision floating-point numbers by default.
So, in this release, I've extended the spatial distance functions in the underlying SimSIMD - Cos, L2sq, IP with support for double arguments with specialized implementations on AVX-512-capable x86 CPUs and SVE-capable Arm CPUs.
Benchmarking SimSIMD vs. SciPy on Intel Sapphire Rapids CPU
- Vector dimensions: 1536
- Vectors count: 1000
- Hardware capabilities: serial, x86avx2, x86avx512, x86avx2fp16, x86avx512fp16, x86avx512vpopcntdq, x86avx512vnni
- NumPy BLAS dependency: openblas64
- NumPy LAPACK dependency: dep140640983012528
Between 2 Vectors, Batch Size: 1
| Datatype | Method | Ops/s | SimSIMD Ops/s | SimSIMD Improvement |
| :------- | :-------------------- | -------------------: | -------------------: | ------------------: |
| f64 | scipy.cosine | 63,612 | 572,605 | 9.00 x |
| f64 | scipy.sqeuclidean | 238,547 | 915,596 | 3.84 x |
| f64 | numpy.inner | 449,499 | 986,522 | 2.19 x |
Between 2 Vectors, Batch Size: 1,000
| Datatype | Method | Ops/s | SimSIMD Ops/s | SimSIMD Improvement |
| :------- | :-------------------- | -------------------: | -------------------: | ------------------: |
| f64 | scipy.cosine | 68,962 | 1,457,172 | 21.13 x |
| f64 | scipy.sqeuclidean | 247,727 | 1,535,547 | 6.20 x |
| f64 | numpy.inner | 463,509 | 1,512,004 | 3.26 x |
Benchmarking SimSIMD vs. SciPy on AWS Graviton 3
- Vector dimensions: 1536
- Vectors count: 1000
- Hardware capabilities: serial, armneon, armsve
- NumPy BLAS dependency: openblas64
- NumPy LAPACK dependency: openblas64
Between 2 Vectors, Batch Size: 1
| Datatype | Method | Ops/s | SimSIMD Ops/s | SimSIMD Improvement |
| :------- | :-------------------- | -------------------: | -------------------: | ------------------: |
| f64 | scipy.cosine | 40,729 | 725,382 | 17.81 x |
| f64 | scipy.sqeuclidean | 160,812 | 728,114 | 4.53 x |
| f64 | numpy.inner | 473,443 | 767,374 | 1.62 x |
| f64 | scipy.jensenshannon | 15,684 | 38,528 | 2.46 x |
| f64 | scipy.kl_div | 49,983 | 61,811 | 1.24 x |
Between 2 Vectors, Batch Size: 1,000
| Datatype | Method | Ops/s | SimSIMD Ops/s | SimSIMD Improvement |
| :------- | :-------------------- | -------------------: | -------------------: | ------------------: |
| f64 | scipy.cosine | 41,130 | 1,460,850 | 35.52 x |
| f64 | scipy.sqeuclidean | 162,147 | 1,486,255 | 9.17 x |
| f64 | numpy.inner | 473,856 | 1,580,136 | 3.33 x |
Hashes
- docs.tar.gz :
def474428a4d67076e68dfd16b660a53bf51fad12af7e4c6ee77e1555b220b8f - usearch-v2.8.14.tar.gz :
6ae186618120b6c710ff3ed1bf31e9a58610e7b837bccdeae79000247c2b24a3 - usearch-v2.8.14.zip :
a1da6b34bc23111926b16be9d36a7403988405a00c833417b27b8ccd9c70227f - usearchlinuxamd_2.8.14.deb :
ae4995f9504a9ab90921e3091a5aa6af432de647f1a6c835ee5cb2622dd2f8a3 - usearchlinuxarm_2.8.14.deb :
dafcee294630b7c17adaed9aebb668d4cbfc5fe269f35f66b10bf458d66d899d - usearchmacOSarm64_2.8.14.zip :
65e0a8d0259400e35de692c9afb3406d6bd4db5dd2f46632676890c41ba1537c - usearchmacOSx86642.8.14.zip :
1fa9a6e6983f5b6fe5dd2b82ce566262dcbd1d1e8671ec39b9d01ceddc3b80dd - usearchwasmlinuxarm642.8.14.tar.gz :
edb5846ab0b38b1095b12f2b8ca771748394911bf6efd74df6d5ba66f36328d9 - usearchwasmlinuxx8664_2.8.14.tar.gz :
84e4162db1dc83157f7a4032278c9cfc01a68ac59c4b1af1b5fc35e43905c515 - usearchwasmmacosarm642.8.14.zip :
8c966ef2f5e425cf82f472bd4b74f0e7cd7fa39b860dd9f25f488370afc035fe - usearchwasmmacosx8664_2.8.14.zip :
7e48cc5d0e34b586f36b86671c8410b2b2deca31962beb0ccf6230546ac42621 - usearchwasmwindowsx642.8.14.tar.gz :
02b1382c68fe8ef52d55da639a38ad15c7449d579230ef5ae78465776fd689fa - usearchwasmwindowsx862.8.14.tar.gz :
cf922953ca61c8f9101fac33a2aa06d70fd09ef8b8c73d64a6623f73dcfe09cc - usearchwindowsx64_2.8.14.tar :
8a74a122fafae229f65df8de5a6e264eb16a7e5eba691629d6439b0b54ea8b74 - usearchwindowsx86_2.8.14.tar :
96c6625fc2ca723cc44e864a75f5c72dc3ab9aeb5fe5f0f80ba32783121f6766
- C++
Published by ashvardanian about 2 years ago
usearch - v2.8.13
2.8.13 (2023-11-18)
Docs
- badges, comparisons with clustering tools (05b3109)
Improve
- Faster exports for non-multi Indexes (48655a3)
Hashes
- docs.tar.gz :
1da23a52fc6c7a458176e9cc35f76ee781bcd25b23b8cdd09cb37cbe015de8fa - usearch-v2.8.13.tar.gz :
7600c3a29761cce942ded60ab60596a1065d2a561399c56ab56fde78037bb1a5 - usearch-v2.8.13.zip :
d7d39a8d954d45d901dd9975086e05d4db58ddf15a93573caa13d2953e801f3a - usearchlinuxamd_2.8.13.deb :
2b966a5d77c25c640e81f16ca831dc9673ac8ee24371e5349e94761f44f8f001 - usearchlinuxarm_2.8.13.deb :
c0b147adfd9427b14547ac6de2f7bec02bcfde9ef2badadf4ec96867a39b9944 - usearchmacOSarm64_2.8.13.zip :
cd2de8d9656e8c69307945b7ef2fbc648a24ce06c13d08ca66cb7b532a42eb78 - usearchmacOSx86642.8.13.zip :
2b44e47829edca468b4e0e5e4832ba0baefbf90bc402eba97078462f20519ced - usearchwasmlinuxarm642.8.13.tar.gz :
0be59109c46c80a14323ab5131a75f4fe71c7f9537bdf2ff23370daa2808fab4 - usearchwasmlinuxx8664_2.8.13.tar.gz :
175f6234bd52e76501336de8401d0d6dabcf0274b7ca32e7998cbea65159c54c - usearchwasmmacosarm642.8.13.zip :
41e4d2afa660f96f2d4c5316c12d5a1bd2e067997f9727364f7531909197ad8f - usearchwasmmacosx8664_2.8.13.zip :
c42edb8e87b0b1ced4bdc6684f7b081004ff8f295e56faedd41b4e2113809ad3 - usearchwasmwindowsx642.8.13.tar.gz :
bffd155710a385980b0b551173594ea3255a3bb3f358d89f083c2bcb71941e0d - usearchwasmwindowsx862.8.13.tar.gz :
f8fcd52e46bfc694c175e725f904745077d736741f11cc69df259a8d3a794e12 - usearchwindowsx64_2.8.13.tar :
c9df87ae09fc2819a9ed905050015faf06f4af2d4aacea8efec5ec07dc3e23a1 - usearchwindowsx86_2.8.13.tar :
c9df87ae09fc2819a9ed905050015faf06f4af2d4aacea8efec5ec07dc3e23a1
- C++
Published by ashvardanian over 2 years ago
usearch - v2.8.12
2.8.12 (2023-11-13)
Docs
- Typo in Java README (#307) (494b9f0), closes #307
- Update Java's step-by-step build instructions (#306) (63d8027), closes #306
Fix
- Dumping to uninitialized memory in Java (9eaa10d)
- Key type mismatch in Java (25dc6fc)
- Normalize bit-vector length for SimSIMD (#311) (8a77b3e), closes #311
- OOM error in Java (2589979), closes #308
Improve
Make
- Trace used compiler (7d17eab)
Hashes
- docs.tar.gz :
2d939471b122e76d02f0ce06a200cd70f0f3e549992264dbcdb7bd289b456af2 - usearch-v2.8.12.tar.gz :
e8b272f8d9b544123ddc574fcd925c60b67d8ce94568f30fe80a72ec86139257 - usearch-v2.8.12.zip :
0c8d8ef7144913f2fcd6190135880137e16cca46d822acf3b8e985c7c7445e52 - usearchlinuxamd_2.8.12.deb :
646a26438035b4d698eca8c259a4454bb15d1270dd554fb47d68ffa791f51135 - usearchlinuxarm_2.8.12.deb :
68fd077160ec6669716a296481d0a2b74a7e9ed17d76a41663a8212ecd361f5a - usearchmacOSarm64_2.8.12.zip :
f2e81ef8f3913028aa6237a8773d93da4875a86c5bd0111e825e7201a900980e - usearchmacOSx86642.8.12.zip :
5389c72e3c91012ba70389885e7260b9deebfe94cf284a8c5c36f3eedc0991d1 - usearchwasmlinuxarm642.8.12.tar.gz :
323631cae148ab13ade9aab3158d23249979fb3af238aad5e04c1e6a28cf16aa - usearchwasmlinuxx8664_2.8.12.tar.gz :
0d387642e06c49aa7c3e47f15a0b8d4ceda161a25b50e5f301b3270f55f478f7 - usearchwasmmacosarm642.8.12.zip :
b10c7fa633f491069737f64d3c39fbdb11b8565a25932d6e3d9acea20512c980 - usearchwasmmacosx8664_2.8.12.zip :
ecc6b08c1dd42d0024274f966e91cfaf41b9db35214f7ec0c54c13586b3d9b77 - usearchwasmwindowsx642.8.12.tar.gz :
9f0a85be9190d2e026575041f8fce4992688e110dd53ee037774f61dfcd0e87f - usearchwasmwindowsx862.8.12.tar.gz :
697a723af5e9640c01f30f28fc007ec0c837b62dbbef6bdf95edf3879fc2e165 - usearchwindowsx64_2.8.12.tar :
e3239a9f2d0a8353ee539d480d9cbed28b911fa590164cdbede4ce362db9ff2f - usearchwindowsx86_2.8.12.tar :
dc830356ca3c7cf50ee9c0633f37f68fe298dff95ea10fb6512112803815692a
- C++
Published by ashvardanian over 2 years ago
usearch - v2.8.10
2.8.10 (2023-11-11)
Docs
- Reorganized sections (7431f94)
Fix
- Detecting GCC and forwarding Py settings (28cd82c)
Hashes
- docs.tar.gz :
e190dbf19f4c0472f42624d1ce91030df4ab33a52994eb960ecd2bb9fbc16d74 - usearch-v2.8.10.tar.gz :
3f3f87df5e886ab69f0719e88bde888d720e33c1111ec6a7a88ed891896f42be - usearch-v2.8.10.zip :
6ee979042e0a1c786d45364ad741fcc37bed1fb69582d55fcbe17fb8f6d22e46 - usearchlinuxamd_2.8.10.deb :
63f8a2c276b118622cccfbff69f28cbe4480885a0d1a3cb47bb5c5944592451b - usearchlinuxarm_2.8.10.deb :
2cb30ab18fe961009249860e58ccf3cfe7b3baa27b6a3d443b72ecb3d5d44655 - usearchmacOSarm64_2.8.10.zip :
482bbf4d73dffc86cf956303c48a1d9f5a65e3cbaff8f61b89f2fd5338a9ca69 - usearchmacOSx86642.8.10.zip :
ccd0ebf0832c3d0e8f217defff9f14647961397cec13368b46b79f69483f2e01 - usearchwasmlinuxarm642.8.10.tar.gz :
581557fb85268efd229f6a95298921a59e3123500efbb24090aeebc0aed7d5fb - usearchwasmlinuxx8664_2.8.10.tar.gz :
8a7b30a38a172ec973832cf7cdbfc63fd83e58c2eb2bf964fbc12d208690e9d9 - usearchwasmmacosarm642.8.10.zip :
fcb9f6e8e8c266d1569b3ea0db2d135381b71efe8d6310199a9b02648aa4874e - usearchwasmmacosx8664_2.8.10.zip :
a075ad8b8befb91fe4f3eeb2d5d282586bce3d3244942430918c28869bc50134 - usearchwasmwindowsx642.8.10.tar.gz :
84de155e0656ae4aec605d95c447b4d4799c9797a53a714880cc07f58bb77138 - usearchwasmwindowsx862.8.10.tar.gz :
84cf89047c0f850c6189ce5ed1d33e666a342c2d0ab5761f3b1cf2f8d3530141 - usearchwindowsx64_2.8.10.tar :
6d1addacb31aa4837e77a24dd54fbe56a43ef0514fb4badc6c39ab1a2b95bf1b - usearchwindowsx86_2.8.10.tar :
32df2118d19d9554eb26c98b30505f2dd38e7a02f4bdcb0c132e5cf43d24073f
- C++
Published by ashvardanian over 2 years ago
usearch - v2.8.9
2.8.9 (2023-11-09)
Docs
- Compiling NodeJS bindings on Lambdas (aeb3956)
Fix
Make
- Upgrade SimSIMD (39a926e)
test
- usearch-js expected results (cf1b58f)
Hashes
- docs.tar.gz :
853d1a71cb7efde12d89777d25d7f3482d47533d6248d4ead14dc51081dbb824 - usearch-v2.8.9.tar.gz :
1d337693896851554962f3ea89350ea82c5b13cbdb0357777b50d9e1688d6a02 - usearch-v2.8.9.zip :
39ca7284549ec55802fc6b55c9c90f011b074daaca38cccf67a9073aab4de02d - usearchlinuxamd_2.8.9.deb :
a017e3150cdacb1b8c3fea93bfb17fe5e8d3ef79f48d8422e2ac04386a3376b5 - usearchlinuxarm_2.8.9.deb :
c416d335bdec1001a87b0d3c3a7e08811b78b0e729d570ebae4e14d15690bd7a - usearchmacOSarm64_2.8.9.zip :
4fef6c22aebf39452f3569ea0aa7e4e76261ec91e10c02816b2b59652b23b8e2 - usearchmacOSx86642.8.9.zip :
a7c969fa74e6f396995aafe16bc84184b5c62525f3d2c054f634844a09c5ca7a - usearchwasmlinuxarm642.8.9.tar.gz :
3e56e757c9b2260dff1ba2acfdb4966cd7c84ad560f65f57429375eb75c3ce1c - usearchwasmlinuxx8664_2.8.9.tar.gz :
0fd3e878f47e7f9cc1a956631e1fe97ddfc2da44dc2a7d48695311cf0d77883c - usearchwasmmacosarm642.8.9.zip :
6497cd781c47f03ecc7855eeac013fb8a6dc77f338cf6fd60bb61572ced1090f - usearchwasmmacosx8664_2.8.9.zip :
74fa03be9236dfbe394761eee3f02c0f99bcecd14115fa53a41be1157cf8bb92 - usearchwasmwindowsx642.8.9.tar.gz :
cacf78f4503e1463335ec67a4e8fff59b83a92e8d8128340e1e3b73802eaabc7 - usearchwasmwindowsx862.8.9.tar.gz :
dd6dba98a55c5da625dca96d32439c77a01f48bc68718db5c70b38d4b83747b9 - usearchwindowsx64_2.8.9.tar :
5e77f60ceb7e717ede45c7e79d40280b1be83d61b126fe74b1d97a91148c2a1a - usearchwindowsx86_2.8.9.tar :
5e77f60ceb7e717ede45c7e79d40280b1be83d61b126fe74b1d97a91148c2a1a
- C++
Published by ashvardanian over 2 years ago
usearch - v2.8.7
2.8.7 (2023-11-09)
Make
Hashes
- docs.tar.gz :
b31d1ac7776e330d2da6342fc10d014ce6ca2443a10fc8cfb76168e57264eb73 - usearch-v2.8.7.tar.gz :
518712ddc3a2f376e11f995393d63da7163a7c8b4717543ac4b43c5416758cd6 - usearch-v2.8.7.zip :
d91c7dc60dc0009bf293de83677a32340da57dbc793ba9841b4f34e51f0f0987 - usearchlinuxamd_2.8.7.deb :
9cd13a3d926e4496bf06f4f98a4d09e40cad31e5c0ba306619a80dacd8fcce85 - usearchlinuxarm_2.8.7.deb :
8c03322842f7f5e1c21f61cd0037a6de96b7dc8641780769f9a1f8bcaa825462 - usearchmacOSarm64_2.8.7.zip :
ec94cd4b3187968f653bef6c9080c875c75a25bcb168c8ead0e9c3adbabf4ddf - usearchmacOSx86642.8.7.zip :
f546d9d5a86dfbdec7e8de60b9271c9cc5b43c83bd4a2b0710d76e471f386aae - usearchwasmlinuxarm642.8.7.tar.gz :
0fd74b291fea62262d0e5128646684c6dcb292ac9d1ed893f3c6dcd02f99ab54 - usearchwasmlinuxx8664_2.8.7.tar.gz :
2e0fc337fd96a19cd27417ec6f08970035b8a21a11eb798cec5a35d57f19cf83 - usearchwasmmacosarm642.8.7.zip :
5b7500f01c8c4a5d705c8c1c917089f85d666527791f1708efa7e496159030ae - usearchwasmmacosx8664_2.8.7.zip :
9fbce5111ebb22f6360b7882fa274b45c570563b2a0bbac01a96e12a6279d323 - usearchwasmwindowsx642.8.7.tar.gz :
fcd3699d9c8a16c66937ba1f2dee86a7cf88fa4ed1fc6e3ef25403888c7bf991 - usearchwasmwindowsx862.8.7.tar.gz :
30e39ce164b3368df1b107dfe56ab4c3de801147a0b0e473b5a8ab288ff85a8a - usearchwindowsx64_2.8.7.tar :
dece3d35ec2d742ac72b578e77df3de2c3f01589bb6707513b2f6a49ea7a24f4 - usearchwindowsx86_2.8.7.tar :
07387e83fc53349ad26852da5a9dd7fe7d1a1a17db644c95573815b8c3fa09d6
- C++
Published by ashvardanian over 2 years ago
usearch - v2.8.6
2.8.6 (2023-11-06)
Make
- Globally configure env for Gradle (6d195ca)
Hashes
- docs.tar.gz :
20cbe4469ac77f6cce5558240e0f99226a4e863bb017d7c4da8fcc4246a2747f - usearch-v2.8.6.tar.gz :
69681c50ac13f93efe38ec7f95ea9cacf6fd2629f7c8623f985b6651f6c045d4 - usearch-v2.8.6.zip :
3262c5b111c0fc7e7675cde69b2e0f31c1f9726c6a22c7add1ed6167228e543b - usearchlinuxamd_2.8.6.deb :
7c5a55a44623e6f04d7fce5cfbd5dba3884b769f56f445cd2fe73e624a35b869 - usearchlinuxarm_2.8.6.deb :
b5f8deb2d02cb3ecc8c85e0aff27db4df3749db4b819f70895f790715bc77b70 - usearchmacOSarm64_2.8.6.zip :
b1f2f218e5be2405ef24f0b0dabf25d02b63e2c37e0b37dbdd8973a3c671e62b - usearchmacOSx86642.8.6.zip :
fe9e9cc100a5c4e7379d2636f6044087363d53d707223345f4b993c6d971e139 - usearchwasmlinuxarm642.8.6.tar.gz :
eaba9cdd287e882e656843545797c488a147b6fcb9e0ba6a91bb432831ecd03b - usearchwasmlinuxx8664_2.8.6.tar.gz :
b4b47c8ac4c3f97373bd9d8c8fb4c21b2fcecc3dac9cb982d03d2f8a74e0f263 - usearchwasmmacosarm642.8.6.zip :
13bbdfb81ceac5eebfee867b94c1ca324b85d337c21cf3f59f35022fcb1efeb9 - usearchwasmmacosx8664_2.8.6.zip :
be9b595c50f313b490256eafa81ef78f218b15fc34c4298490f00c72d1a1379c - usearchwasmwindowsx642.8.6.tar.gz :
ebe3e8e2f0e975f0dbefe3ba62d4c728c9f6363953e2938922084007e2f74e4c - usearchwasmwindowsx862.8.6.tar.gz :
c65b885160693d83e3319115a88d74adde535a062dc399793470641c4821a577 - usearchwindowsx64_2.8.6.tar :
caf40eb5237e9d93e70c0273ad81cee5248390a0286fc5eca236ddcf4c755a51 - usearchwindowsx86_2.8.6.tar :
241e928dcf25ffd51e26a16e298d07f4f3afc9dc30ec26069af746f06f935691
- C++
Published by ashvardanian over 2 years ago