Skip to main content

HwPilot — Hardware-aware ML Environment Setup & Compatibility Manager

PyPI version Python Version License: MIT Author: Rudraksh Rakesh Zodage LinkedIn HuggingFace

HwPilot — Hardware-aware ML environment setup and compatibility manager.

Detect my hardware. Resolve the correct ML environment. Ask me once. Install it safely. Verify that it actually works.


👨‍💻 Created & Maintained By

Rudraksh Rakesh Zodage
AI / Machine Learning Engineer & Developer


💡 What is HwPilot?

HwPilot is a hardware-aware machine learning environment setup and compatibility manager created by Rudraksh Rakesh Zodage. It automatically inspects a computer's CPU, GPU, NVIDIA driver, operating system, and Python runtime to dynamically resolve, install, and verify a fully compatible PyTorch/CUDA ML software stack inside an isolated virtual environment.

Why HwPilot?

Running the same ML codebase across different machines (laptops, workstation rigs, cloud nodes) often leads to broken CUDA drivers, incompatible PyTorch wheels, or runtime kernel crashes. Manually matching NVIDIA driver minimum version matrices with PyTorch CUDA runtime builds is complex and error-prone.

HwPilot replaces manual trial-and-error with an automated, hardware-aware compatibility resolver:

  • Zero Hardcoded Hardware Strings: Dynamically matches driver compute capabilities.
  • Isolated Environments: Installs packages in dedicated virtual environments (./hwpilot-env).
  • Safety Guarantee: Never modifies system drivers or global packages silently.
  • Real GPU Verification: Performs real tensor operations on GPU to verify compute capability before declaring success.

⚡ Quick Start

Installation

pip install hwpilot

Basic Workflow

# 1. Inspect hardware and system specs
hwpilot detect

# 2. Check if current machine is suitable for ML workloads
hwpilot check

# 3. Preview resolved compatibility & installation plan
hwpilot plan

# 4. Execute setup (detect, resolve, confirm, install & verify)
hwpilot setup

# 5. Verify runtime environment capability
hwpilot verify

Automation / CI Mode

hwpilot setup --yes --path ./my-ml-env

🚀 Key Commands & CLI Reference

Command Description
hwpilot detect Inspect hardware (CPU, GPU, VRAM, Compute Capability, Driver, OS, Python).
hwpilot check Evaluate whether the machine meets requirements for ML workloads.
hwpilot plan Preview compatibility resolution and package specs without modifying system.
hwpilot setup Complete end-to-end setup workflow (detect → resolve → confirm → venv → install → verify → manifest).
hwpilot verify Perform real GPU matrix multiplication tensor test in an existing environment.
hwpilot doctor Generate a comprehensive diagnostic and troubleshooting report.
hwpilot update Refresh cached compatibility metadata from remote index.
hwpilot info Display HwPilot version, author profiles, and metadata information.

Command Flags

  • --pytorch <VER> / --torch <VER>: Suggest specific PyTorch framework version (e.g. 2.4.1, 2.3.1).
  • --cuda <VER>: Suggest specific CUDA runtime build version (e.g. 12.4, 12.1, 11.8, cpu).
  • --json: Output machine-readable JSON format for programmatic use.
  • -y, --yes: Bypass interactive confirmation prompt.
  • -p, --path <DIR>: Custom target environment path (default: ./hwpilot-env).
  • --global: Install directly into current Python environment (requires explicit opt-in).
  • -v, --verbose: Enable debug logging.

🛡️ Safety & Security Principles

  1. Driver Integrity: HwPilot never modifies or replaces system graphics drivers.
  2. Environment Isolation: Prefers isolated project environments (./hwpilot-env).
  3. No Guessing: Uses strict declarative compatibility matrices.
  4. Empirical Verification: Verifies GPU runtime with actual tensor operations.

📁 Environment Manifest Structure

Upon successful setup, HwPilot generates an environment audit manifest:

hwpilot-env/
├── config/
│   ├── hardware.json      # Hardware specs (CPU, GPU, Driver)
│   └── environment.json   # Resolved backend, CUDA runtime, framework versions
├── logs/
│   └── install.log        # Package installation transcript
└── manifest.json          # Environment state & verification results

🧪 Testing & Development

git clone https://github.com/RudrakshRakeshZodage/hwpilot.git
cd hwpilot
pip install -e .[dev]
pytest

📦 PyPI Publishing

pip install build twine
python -m build
twine check dist/*
twine upload dist/*

🤝 Contributing

Contributions to HwPilot are welcome! Whether you are reporting a bug, adding hardware compatibility rules, or improving documentation, please read our CONTRIBUTING.md guide.

Quick Workflow for Contributors

  1. Fork and clone the repository: git clone https://github.com/RudrakshRakeshZodage/hwpilot.git
  2. Create your feature branch: git checkout -b feature/amazing-feature
  3. Install development dependencies: pip install -e .[dev]
  4. Ensure test suite passes: pytest
  5. Open a Pull Request on GitHub.

👤 Author & Maintainer Profile

Created, architected, and maintained by Rudraksh Rakesh Zodage.


📜 License & Copyright

This project is licensed under the terms of the MIT License.

Copyright (c) 2026 Rudraksh Rakesh Zodage

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

For full license details, see the LICENSE file.

Metadata

Release files for hwpilot 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for hwpilot 0.1.0
File Size Uploaded
hwpilot-0.1.0.tar.gz 29.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for hwpilot 0.1.0
File Interpreter ABI Platform
hwpilot-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 59.8 kB

Release files / hwpilot-0.1.0.tar.gz

Download URL hwpilot-0.1.0.tar.gz
Size 29.4 kB
Tags Source
SHA-256 checksum
How to use checksums
7bd5b505656918385c8931b7ed755e6e9d23928699660bd345fab1f3405c4c90
BLAKE2b-256 checksum
How to use checksums
f118837a4ecec953caa359fb7dc158e6dfa8bf617d35bd9ea97804c489154ae9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.3

Release files / hwpilot-0.1.0-py3-none-any.whl

Download URL hwpilot-0.1.0-py3-none-any.whl
Size 30.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8c6a40b10b8d89fbb8547d2110cf90a97884214a85de65aa85a3300061db6e26
BLAKE2b-256 checksum
How to use checksums
2209d8fe79b6644f673d6339f09fe16a1a444afe9fbcafa341a1f1ee4321955d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.3

Release history Release notifications | RSS feed

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page