pydiskann 0.5.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. pydiskann-0.5.0/.DS_Store +0 -0
  2. pydiskann-0.5.0/.github/workflows/rust.yml +22 -0
  3. pydiskann-0.5.0/.gitignore +1 -0
  4. pydiskann-0.5.0/CHANGELOG.md +23 -0
  5. pydiskann-0.5.0/Cargo.lock +1560 -0
  6. pydiskann-0.5.0/Cargo.toml +53 -0
  7. pydiskann-0.5.0/LICENSE +21 -0
  8. pydiskann-0.5.0/PKG-INFO +30 -0
  9. pydiskann-0.5.0/README.md +446 -0
  10. pydiskann-0.5.0/benches/benchmark.rs +464 -0
  11. pydiskann-0.5.0/benches/comparison.rs +906 -0
  12. pydiskann-0.5.0/docs/charts/build_time.svg +316 -0
  13. pydiskann-0.5.0/docs/charts/incremental_updates.svg +157 -0
  14. pydiskann-0.5.0/docs/charts/memory_usage.svg +232 -0
  15. pydiskann-0.5.0/docs/charts/quantization_comparison.svg +469 -0
  16. pydiskann-0.5.0/docs/charts/recall_vs_qps.svg +308 -0
  17. pydiskann-0.5.0/examples/bigann.rs +324 -0
  18. pydiskann-0.5.0/examples/demo.rs +88 -0
  19. pydiskann-0.5.0/examples/diskann_mnist.rs +190 -0
  20. pydiskann-0.5.0/examples/diskann_sift.rs +213 -0
  21. pydiskann-0.5.0/examples/generate_quantization_chart.rs +78 -0
  22. pydiskann-0.5.0/examples/perf_test.rs +138 -0
  23. pydiskann-0.5.0/examples/quantization_benchmark.rs +218 -0
  24. pydiskann-0.5.0/examples/quantized_search.rs +224 -0
  25. pydiskann-0.5.0/examples/utils/annhdf5.rs +233 -0
  26. pydiskann-0.5.0/examples/utils/mod.rs +3 -0
  27. pydiskann-0.5.0/pyproject.toml +24 -0
  28. pydiskann-0.5.0/python/Cargo.lock +757 -0
  29. pydiskann-0.5.0/python/Cargo.toml +15 -0
  30. pydiskann-0.5.0/python/README.md +18 -0
  31. pydiskann-0.5.0/python/src/lib.rs +332 -0
  32. pydiskann-0.5.0/src/filtered.rs +740 -0
  33. pydiskann-0.5.0/src/formats.rs +250 -0
  34. pydiskann-0.5.0/src/incremental.rs +1967 -0
  35. pydiskann-0.5.0/src/lib.rs +1545 -0
  36. pydiskann-0.5.0/src/pq.rs +667 -0
  37. pydiskann-0.5.0/src/quantized.rs +1045 -0
  38. pydiskann-0.5.0/src/simd.rs +866 -0
  39. pydiskann-0.5.0/src/sq.rs +533 -0
  40. pydiskann-0.5.0/src/storage.rs +64 -0
  41. pydiskann-0.5.0/tests/correctness.rs +2013 -0
Binary file
@@ -0,0 +1,22 @@
1
+ name: Rust
2
+
3
+ on:
4
+ push:
5
+ branches: [ "main" ]
6
+ pull_request:
7
+ branches: [ "main" ]
8
+
9
+ env:
10
+ CARGO_TERM_COLOR: always
11
+
12
+ jobs:
13
+ build:
14
+
15
+ runs-on: ubuntu-latest
16
+
17
+ steps:
18
+ - uses: actions/checkout@v4
19
+ - name: Build
20
+ run: cargo build --verbose
21
+ - name: Run tests
22
+ run: cargo test --verbose
@@ -0,0 +1 @@
1
+ /target
@@ -0,0 +1,23 @@
1
+ # Changelog
2
+
3
+ ## [0.3.0] - 2025-09-23
4
+ - BREAKING: parallelize build with Rayon
5
+ - BREAKING: add support for generic trait distance via anndists
6
+ - More examples and benchmarks using MNIST and SIFT datasets
7
+ - Fix bug that leads to low recall
8
+
9
+ ## [0.2.0] - 2025-01-03
10
+ - BREAKING: Complete rewrite using proper Vamana graph algorithm
11
+ - BREAKING: Renamed SingleFileDiskANN to DiskANN
12
+ - Fixed critical memory efficiency issue (now uses 16% of file size instead of 100%)
13
+ - Implemented proper beam search with medoid entry points
14
+ - Added alpha-pruning for diverse neighbor selection in graph construction
15
+ - Achieved 6-10x memory efficiency improvement
16
+ - Fixed search to use graph traversal instead of linear scanning
17
+ - Updated examples to use correct API with user-provided vectors
18
+
19
+ ## [0.1.0] - 2024-12-28
20
+ - Initial release
21
+ - Single-file storage implementation
22
+ - Support for Euclidean and Cosine distance
23
+ - Three-layer search structure