refrakt_cli
refrakt_cli is a command-line interface for the refrakt_core deep learning and machine learning research framework. It enables rapid, reproducible, and flexible pipeline training by converting CLI arguments into YAML-based experiment configurations, seamlessly integrating with refrakt_core's modular system.
📦 Installation
Install the latest release from PyPI:
pip install refrakt_cli
🚀 What is refrakt_cli?
- A CLI tool to launch, manage, and override ML/DL training pipelines using YAML configs.
- Bridges user-friendly command-line workflows with the powerful abstractions of refrakt_core.
- Supports dynamic hyperparameter overrides, modular experiment configs, and robust logging.
⚙️ Setup
git clone https://github.com/refrakt-hub/refrakt_cli.git
cd refrakt_cli
# (Recommended) Create and activate a virtual environment
python3 -m venv .venv
source .venv/bin/activate
# Install dependencies
pip install .
🧪 Usage: Running Experiments
Run with a config file
refrakt --config path/to/your_config.yaml
Override hyperparameters on-the-fly
refrakt --config path/to/your_config.yaml model.name=ResNet optimizer.lr=0.0005 trainer.epochs=20
Supported CLI Flags
| Flag | Description |
|---|---|
--config |
Path to YAML config file |
--log_type |
Logging backend: tensorboard, wandb, or both |
--debug |
Enable debug mode with extra verbosity |
🧩 Project Structure
src/refrakt_cli/
├── cli.py # Main CLI entry point
├── helpers/ # Argument parsing, config overrides, pipeline orchestration
│ ├── argument_parser.py
│ ├── config_overrides.py
│ └── pipeline_orchestrator.py
├── hooks/ # Custom hooks (e.g., hyperparameter overrides)
│ └── hyperparameter_override.py
├── utils/ # Utility functions for pipeline management
│ └── pipeline_utils.py
└── __init__.py
- cli.py: Main CLI logic and entry point.
- helpers/: Argument parsing, config override logic, and pipeline orchestration.
- hooks/: Custom hooks for advanced config/hyperparameter handling.
- utils/: Utility functions for pipeline and config management.
Test files are located in the tests/ directory, mirroring the main module structure.
🤝 Contributing
Contributions, issues, and feature requests are welcome!
Please read our CONTRIBUTING.md for guidelines on how to get started and best practices for contributing to refrakt_cli.
📄 License
This repository is licensed under the MIT License. See LICENSE for full details.
👤 Credits
Akshath Mangudi
If you find issues, raise them. If you learn from this, share it. Built with love and curiosity :)
Release files for refrakt-cli 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| refrakt_cli-0.2.0.tar.gz | 33.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| refrakt_cli-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 73.8 kB
Release files / refrakt_cli-0.2.0.tar.gz
| Download URL | refrakt_cli-0.2.0.tar.gz |
|---|---|
| Size | 33.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
248fda5342463d8fffeabb5a80730279d4194d01cca7228cb4bde60f0b3d084d
|
|
BLAKE2b-256 checksum How to use checksums |
faca7c51f6a3071a9980363ed3093536949d20a8774fd10700b1a0ad95526126
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.14
|
Release files / refrakt_cli-0.2.0-py3-none-any.whl
| Download URL | refrakt_cli-0.2.0-py3-none-any.whl |
|---|---|
| Size | 40.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a2790c86f1708ae0c618f81e0ec94093b724ff3f53f0745425cf41ee2d52d7db
|
|
BLAKE2b-256 checksum How to use checksums |
e0a0cfcef07bbb6a0515e631ef8e8c2caa79bb38790f9f70f9c4e855ecc7ba8b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.14
|