https://github.com/milesonerd/neurenix
Empowering Intelligent Futures, One Edge at a Time.
https://github.com/milesonerd/neurenix
ai ai-agents-framework artificial-intelligence deep-learning deep-neural-networks framework machine-learning ml neural-network neurenix phynexus python
Last synced: 12 months ago
JSON representation
Empowering Intelligent Futures, One Edge at a Time.
- Host: GitHub
- URL: https://github.com/milesonerd/neurenix
- Owner: MilesONerd
- License: apache-2.0
- Created: 2025-03-07T19:37:16.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-04-13T13:58:12.000Z (12 months ago)
- Last Synced: 2025-04-13T14:41:08.906Z (12 months ago)
- Topics: ai, ai-agents-framework, artificial-intelligence, deep-learning, deep-neural-networks, framework, machine-learning, ml, neural-network, neurenix, phynexus, python
- Language: Python
- Homepage: https://neurenix.github.io
- Size: 1.06 MB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# Neurenix
Neurenix is ββan AI framework optimized for embedded devices (Edge AI), with support for multiple GPUs and distributed clusters. The framework specializes in AI agents, with native support for multi-agent, reinforcement learning, and autonomous AI.
## Social
[](https://bsky.app/profile/neurenix.bsky.social)
[](https://discord.gg/Eqnhr8tK2G)
[](https://github.com/neurenix)
[](https://fosstodon.org/@neurenix)
[](https://x.com/neurenix)
## Main Features
- **Hot-swappable backend functionality**:
- Added DeviceManager class for runtime device switching
- Created Genesis system for automatic hardware detection and selection
- Modified Tensor class to support hot-swapping between devices
- **ONNX support**:
- Implemented ONNXConverter for model import/export
- Added convenience functions for easy ONNX integration
- Support for converting between Neurenix and other ML frameworks
- **API support**:
- Added RESTful, WebSocket, and gRPC server implementations
- Created APIManager for centralized server management
- Provided convenience functions for serving models
- **Dynamic imports from neurenix.binding with NumPy fallbacks for activation functions**:
- relu, sigmoid, tanh, softmax, log_softmax, leaky_relu, elu, selu, gelu
- **CPU implementations for BLAS operations**:
- GEMM, dot product, GEMV
- **CPU implementations for convolution operations**:
- conv2d, conv_transpose2d
- **Conditional compilation for hardware-specific operations**:
- CUDA, ROCm, and WebGPU support for BLAS and convolution operations
- Proper error handling for unsupported hardware configurations
- **Binding functions for tensor operations**:
- backward, no_grad, zero_grad, weight_decay
- **WebAssembly SIMD and WASI-NN support for browser-based tensor operations**
- **Hardware acceleration backends**:
- Vulkan for cross-platform GPU acceleration
- OpenCL for heterogeneous computing
- oneAPI for Intel hardware acceleration
- DirectML for Windows DirectX 12 acceleration
- oneDNN for optimized deep learning primitives
- MKL-DNN for Intel CPU optimization
- TensorRT for NVIDIA GPU optimization
- **Automatic quantization support**:
- INT8, FP16, and FP8 precision
- Model pruning capabilities
- Quantization-aware training
- Post-training quantization with calibration
- **Graph Neural Networks (GNNs)**:
- Implemented various GNN layers (GCN, GAT, GraphSAGE, etc.)
- Added pooling operations for graph data
- Provided graph data structures and utilities
- Implemented common GNN models
- **Fuzzy Logic**:
- Added fuzzy sets with various membership functions
- Implemented fuzzy variables and linguistic variables
- Created fuzzy rule systems with different operators
- Implemented Mamdani, Sugeno, and Tsukamoto inference systems
- Added multiple defuzzification methods
- **Federated Learning**:
- Implemented client-server architecture for federated learning
- Added various aggregation strategies (FedAvg, FedProx, FedNova, etc.)
- Implemented security mechanisms (secure aggregation, differential privacy)
- Added utilities for client selection and model compression
- **AutoML & Meta-learning**:
- Implemented hyperparameter search strategies (Grid, Random, Bayesian, Evolutionary)
- Added neural architecture search capabilities
- Implemented model selection and evaluation utilities
- Created pipeline optimization tools
- Added meta-learning algorithms for few-shot learning
- **Distributed training technologies**:
- MPI for high-performance computing clusters
- Horovod for distributed deep learning
- DeepSpeed for large-scale model training
- **Memory management technologies**:
- Unified Memory (UM) for seamless CPU-GPU memory sharing
- Heterogeneous Memory Management (HMM) for advanced memory optimization
- **Specialized hardware acceleration**:
- GraphCore IPU support for intelligence processing
- FPGA support via multiple frameworks:
- OpenCL for cross-vendor FPGA programming
- Xilinx Vitis for Xilinx FPGAs
- Intel OpenVINO for Intel FPGAs
- **DatasetHub**: mechanism that allows users to easily load datasets by providing a URL or file path
- **CLI**
- **Continual Learning Module**: Allows models to be retrained and updated with new data without forgetting previously learned information. Implements several techniques:
- Elastic Weight Consolidation (EWC)
- Experience Replay
- L2 Regularization
- Knowledge Distillation
- Synaptic Intelligence
- **Asynchronous and Interruptible Training Module**: Provides functionality for asynchronous training with continuous checkpointing and automatic resume, even in unstable environments. Features include:
- Continuous checkpointing with atomic writes
- Automatic resume after interruptions
- Resource monitoring and proactive checkpointing
- Signal handling for graceful interruptions
- Distributed checkpointing for multi-node training
- **Docker Support**:
- Container management
- Image building and management
- Volume management
- Network configuration
- Registry integration
- **Kubernetes Support**:
- Deployment management
- Service configuration
- Pod management
- ConfigMap handling
- Secret management
- Job scheduling
- Cluster management
- **Apache Arrow Support**:
- Efficient in-memory columnar data format
- Seamless conversion between Arrow tables and Neurenix tensors
- Support for various data types and operations
- **Parquet Support**:
- High-performance columnar storage format
- Reading and writing Parquet files
- Dataset management with partitioning support
- Integration with Arrow for efficient data processing
- **SHAP (SHapley Additive exPlanations)**:
- KernelSHAP for model-agnostic explanations
- TreeSHAP for tree-based models
- DeepSHAP for deep learning models
- **LIME (Local Interpretable Model-agnostic Explanations)**:
- Support for tabular, text, and image data
- Customizable sampling and kernel functions
- **Additional Explanation Techniques**
- Feature importance analysis
- Partial dependence plots
- Counterfactual explanations
- Activation visualization
- **Multi-Scale Model Architectures**:
- MultiScaleModel: Base class for multi-scale architectures
- PyramidNetwork: Feature pyramid network implementation
- UNet: U-Net architecture with skip connections
- **Multi-Scale Pooling Operations**:
- MultiScalePooling: Base class for multi-scale pooling
- PyramidPooling: Pyramid pooling module (PPM)
- SpatialPyramidPooling: Spatial pyramid pooling (SPP)
- **Feature Fusion Mechanisms**:
- FeatureFusion: Base class for feature fusion
- ScaleFusion: Fusion of features from different scales
- AttentionFusion: Attention-based fusion of multi-scale features
- **Multi-Scale Transformations**:
- MultiScaleTransform: Base class for multi-scale transforms
- Rescale: Rescaling to multiple scales
- PyramidDownsample: Pyramid downsampling for multi-scale representations
- GaussianPyramid: Gaussian pyramid implementation
- LaplacianPyramid: Laplacian pyramid implementation
- **Zero-shot Learning**
- **NVIDIA Tensor Cores support**
- **WebAssembly multithreaded support**
- **gRPC-Streaming support**
- **Neuroevolution + Evolutionary Algorithms Support**:
- Genetic Algorithms: Implementation of population-based optimization with selection, crossover, and mutation operators
- NEAT (NeuroEvolution of Augmenting Topologies): Algorithm for evolving both neural network topologies and weights
- HyperNEAT: Extension of NEAT that uses CPPNs to generate large-scale neural networks with geometric regularities
- CMA-ES (Covariance Matrix Adaptation Evolution Strategy): State-of-the-art evolutionary algorithm for continuous optimization
- Evolution Strategies: Implementation of various ES variants with adaptive learning rates and population-based optimization
- **Hybrid Neuro-Symbolic Models Support**:
- Symbolic reasoning components with rule-based inference
- Neural-symbolic integration with multiple interaction modes
- Differentiable logic with support for fuzzy and probabilistic logic
- Knowledge distillation between symbolic and neural systems
- Advanced reasoning paradigms (constraint satisfaction, logical inference, abductive/deductive/inductive reasoning)
- **Multi-Agent Systems (MAS) Support**:
- Agent framework with reactive, deliberative, and hybrid agent types
- Communication protocols and message passing infrastructure
- Coordination mechanisms (task allocation, auctions, contract nets, voting)
- Multi-agent learning algorithms (independent learners, joint action learners, team learning)
- Environment abstractions for agent interaction
## Documentation
[Neurenix Documentation](https://neurenix.readthedocs.io/en/latest/)
## License
This project is licensed under the [Apache License 2.0](LICENSE).