-
Notifications
You must be signed in to change notification settings - Fork 0
Neurovortex Wiki

Welcome to the NeuroVortex Github Wiki! NeuroVortex is an AI Optimizer module designed to enhance the performance of AI models and workloads. It provides tools for model optimization, resource monitoring, and efficient workload management.
Explore the documentation to learn how to get started, use the features, and contribute to the project.
To install NeuroVortex, use the following command:
pip install neurovortex- Python 3.8 or higher
- Dependencies:
torchonnxtensorflowpsutilgputil
Clone the repo:
git clone https://github.com/Boring-Dude/neurovortex.git
cd neurovortexinstall dependencies:
pip install -r requirements.txt-
Model Optimization
- Dynamic Quantization
- Pruning
- Knowledge Distillation
- Mixed-Precision Training
-
Resource Monitoring
- CPU, GPU, Memory, Disk usage tracking.
-
Workload Optimization
- Efficient batching and workload management
-
Model Loading and saving
- Supports Pytorch, Tensorflow, ONNX, and Tensorflow Lite formats (for now)
- Pytorch (
.pth,.pt) - TensorFlow (
.pb,.ckpt,.h5 - ONNX (
.onnx) - TensorFlow Lite (
.tflite)
from neurovortex import AIOptimizer, load_model, RescourceManager
# Load a Model
model = load_model("model.pth")
# Initialize optimizer
optimizer = AIOptimizer(model)
# Optimize the model
optimized_model = optimizer.optimize_model()
# Monitor Resources
cpu_usage = ResourceManager.get_cpu_usage()
print(f"CPU Usage: {cpu_usage:.2f}%")from neurovortex import AIOptimizer, ResourceManager
# Example model and data
import torch
from torch import nn
model = nn.Sequential(nn.Linear(128, 64), nn.ReLU(), nn.Linear(64, 10)
data = torch.randn(1000, 128)
# Initialize optimizer
optimizer = AIOptimizer(model)
# Optimize Workload
batched_data = optimizer.optimize_workload(data, batch_size=64)
# Apply mixed-precision training
criterion = nn.CrossEntropyLoss()
optimizer_instance = torch.optim.Adam(model.parameters(), lr=0.001)
trained_model = optimizer.apply_mixed_precision_training(
model, batched_data, optimizer_instantce, criterion
)
print(f"CPU Usage: {cpu_usage:.2f}%")I Welcome contributions! Follow these steps to contribute:
- Fork the repository.
- Create a new branch:
git checkout -b feature-name- Make Your Changes and commit them:
git commit -m "Add feature-name"- Push to your fork:
git push origin feature-name- Open a pull request.
- Follow PEP 8 for Python code.
- Use
flake8to lint your code:
flask8 neurovortexRun tests using pytest:
pytestNeurovortex is a Python moduke for optimizing ai models and managing system resources.
for now, it supports tensorflow lite, tensorflow, Pytorch and ONNX
Open an issue on the Github issues page
Neurovortex is licensed under the MIT License. See the License file for more details.