Releases: ZantFoundation/Z-Ant
Releases · ZantFoundation/Z-Ant
Zant v1.0.0
[v1.0.0] - 2025-08-30
Added
- One-click deployment and test shell scripts (
./create MyModel) for reproducible pipelines. - ONNX preprocessing stage feeding Zant IR (layout normalization, graph cleanup, graph optimization).
- Graph-split testing pipeline (
./zant onnx_extract --path path/my_model.onnx \ zig build extractor-* -Dmodel="my_model") validating per-node intermediate I/O. - Expanded math operations and full CNN support (conv/pool/activations).
- New documentation: end-to-end guides and troubleshooting.
Changed
- CLI redesigned for faster workflows and consistent flags; improved help and diagnostics.
- Default conversion pipeline now routes through ONNX preprocessing.
Fixed
- Clearer error surfaces and exit codes across CLI/tooling.
Notes
- Rebuild artifacts with v1.0.0 to benefit from preprocessing and per-node tests.
V 0.1
Changelog
- Project Overview and Documentation
- Updated Zant description as an SDK for deploying optimized neural networks on microcontrollers
- Revised key features, use cases, and reasons to use Zant
- Updated roadmap with short-term (Q1 2025), mid-term (Q2-Q3 2025), and long-term (Q3 2025) goals
- Added comprehensive documentation for code generation and model integration
- Added instructions for generating code for models and testing them
- Added section on integrating projects with Zant via static library and CMake
- Build System and Dependencies
- Updated Zig version from 0.13.0 to 0.14.0
- Removed build.zig.zon file
- Added new module for code generation in build.zig
- Added executable for code generation with options
- Added test for oneOp models with dependencies
Code Generation
- Renamed src/codeGen directory to src/CodeGen for consistency
- Added shape_handler and zant_codegen modules
- Added functions for parsing input shapes from codegen options
- Added network output initialization handling
- Added graph serialization and code generation functionality
- Added test file generation capabilities
- Added support for exporting predict functions
Tensor Math Operations
- Completely restructured tensor math operations into individual files
- Added implementations for activation functions:
- ReLU, Leaky ReLU, Sigmoid, Softmax, Tanh
- Added element-wise operations:
- Add, Subtract, Multiply, Divide, Ceil
- Added shape operations:
- Reshape, Resize, Transpose, Concat, Split, Slice, Unsqueeze, Identity, Neg
- Added convolution and matrix operations:
- Convolution, MatMul, Gemm
- Added reduction operations:
- ReduceMean
- Added padding and pooling operations
ONNX Support
- Added comprehensive ONNX model parsing capabilities
- Added structs for ONNX components:
- ModelProto, GraphProto, NodeProto, TensorProto, AttributeProto
- TensorShapeProto, ValueInfoProto, TypeProto, StringStringEntryProto
- TensorAnnotation, SparseTensorProto, Segment, DataLocation
- Added shape inference for ONNX operators
Testing
- Added user tests for MNIST and other models
- Added benchmarking for tensor operations
- Added Python scripts for generating test ONNX models
- Added tests for tensor math operations
- Added random data prediction tests
- Removed Components
- Removed data loading and processing functionality
- Removed neural network layer implementations (Dense, Convolutional, etc.)
- Removed model training functionality
- Removed model import/export functionality
- Removed optimizer implementations
- Removed loss function implementations
- Removed tests for removed components
Other Changes
- Updated GitHub issue templates with new contact links
- Added tensor math issue template with rules for writing methods
- Updated GitHub workflows to run on "main", "feature", and "codegen" branches
- Updated .gitignore rules for callgrind files and results.json