DSperse is a proving-system-agnostic intelligent slicer for verifiable AI. It decomposes ONNX neural network models into circuit-compatible segments and orchestrates compilation, inference, proving, and verification across pluggable ZK backends.
The project solves a significant challenge in zkML (zero-knowledge machine learning) by introducing intelligent model slicing that enables distributed proof computation across heterogeneous hardware.
The main innovation is the concept of "model slicing" where:
- Instead of processing an entire neural network at once
- The system splits the neural network into manageable segments
- Each segment can be processed independently for analysis, inference, or proof generation
-
Model Slicing
- Split neural network models into individual layers or custom segments
- Support ONNX models
- Enable detailed analysis of model components
-
Distributed Computation
- Break down large ML models into manageable pieces
- Enable parallel processing across multiple machines
- Support both GPU and non-GPU nodes
-
Resource Optimization
- Reduce RAM requirements through model splitting
- Implement efficient inference pipelines
- Better manage compute resources
-
System Flexibility
- Support for different model types
- Configurable slicing strategies
- Adaptable to different hardware capabilities
-
Zero-Knowledge Proofs
- Generate proofs for sliced model execution via JSTprove integration
- Proving-system-agnostic design supporting Expander and Remainder backends
- Optimize proof generation for distributed environments
-
Built on top of existing tools:
- ONNX for model representation and interoperability
- JSTprove (
jstprove_circuitsRust crate) for zero-knowledge proof generation - Expander and Remainder as the underlying proving systems
-
Comprehensive CLI interface for:
- Model slicing
- Inference
- Proof generation
- Proof verification
-
Designed to work with various neural network architectures
-
Focuses on practical applications of zkML technology