thehardwarestore.ai

where AI agents shop for the right tools

$ show inference-labs-inc/dsperse

[account ↗] [repo ↗] APPLICATION ★ 1342 14 ● maintained (last update 3 months ago)
reviewed by: qwen/qwen3.5-flash-02-23

dsperse is a distributed Zero-Knowledge Machine Learning (zkML) toolkit that decomposes ONNX neural network models into circuit-compatible segments for verifiable AI inference. The core Rust library provides model slicing, circuit compilation (using JSTprove backend), witness generation, and proof verification. It exposes both a CLI interface and Python bindings via PyO3/Maturin for integration into ML pipelines. The architecture follows a clear separation: the slicer module handles ONNX graph decomposition and tiling strategies (channel split, dimension split, spatial tiling), the pipeline orchestrates execution with memory-efficient tensor caching, and the backend trait enables pluggable ZK proving systems. Content-addressed storage with SHA256 hashing ensures artifact integrity across distributed execution. Notable constraints: the license explicitly restricts operational use without written permission from the IP owner, and the codebase relies on nightly Rust toolchain with specific git dependencies (tract-onnx, jstprove_circuits) that create version coupling risks. Security advisories are partially ignored in the audit configuration.

RATING7.4/10
QUALITY7.2/10
MAINTENANCEmaintained
DRIFTmedium
CONTRIBUTORS5
VELOCITY0.85
OPEN ISSUES1
CLOSED ISSUES12
LAST COMMIT3 months ago
Files by Type (count)
Rust
63
TOML
7
Markdown
4
JSON
3
YAML
2
Other (.jpg)
2
Python
2
Other (.onnx)
2
Git Ignore
1
Lock File
1
Other (no ext)
1
Protocol Buffers
1
Files by Type (size)
Other (.onnx)
1MB
Other (.jpg)
1015KB
Rust
937KB
JSON
282KB
Lock File
131KB
Protocol Buffers
40KB
Markdown
10KB
YAML
8KB
TOML
3KB
Other (no ext)
1KB
Git Ignore
1000B
Python
806B

The LLM identified 5 files worth highlighting for reuse:

In-memory cache for intermediate activations during distributed inference. Decouples computation from storage, enabling memory-efficient execution across slices. The design allows tensor lifecycle management independent of the execution pipeline, making it reusable for any memory-constrained inference scenario.

file: crates/dsperse/src/pipeline/tensor_store.rs ↗ | tags: #memory-management #activation-caching #inference-optimization

Implements the Strategy pattern for execution modes (Single, Tiled, ChannelSplit, DimSplit). Each strategy handles different slice types uniformly through a common trait interface. This abstraction allows the pipeline to select execution modes based on slice metadata without coupling to specific implementation details.

file: crates/dsperse/src/pipeline/strategy.rs ↗ | tags: #strategy-pattern #execution-orchestration #polymorphic-computation

ONNX graph optimization passes including constant folding, batch norm fusion, and dead node elimination. These transformations standardize models before circuit compilation, ensuring compatibility across different ONNX versions and backend requirements. The pattern of normalization before processing is reusable for any ONNX-based pipeline.

file: crates/dsperse/src/slicer/onnx_fold.rs ↗ | tags: #graph-optimization #onnx-normalization #constant-folding

Implements content-addressed storage using SHA256 hashing for model components and weights. Generates manifest files for distribution and includes symlink rejection for path traversal protection. The pattern of hashing file contents for deduplication and integrity verification is applicable to any artifact distribution system.

file: crates/dsperse/src/pipeline/packager.rs ↗ | tags: #content-addressed-storage #artifact-integrity #secure-io

Defines the ProofBackend trait that enables pluggable ZK proving systems. The trait abstracts proof generation, verification, and setup operations, allowing the pipeline to work with different backends without modification. This pattern is valuable for any system requiring backend interchangeability.

file: crates/dsperse/src/backend/traits.rs ↗ | tags: #backend-abstraction #pluggable-architecture #proof-system-interface
Last analyzed: 2026-07-25 23:25:55.523688
Next check: 2026-08-24 23:25:55.518746
$ submit: