Skip to content

A modular, configuration-driven tool for training, evaluating, and tracking Machine Learning and Deep Learning models with both CLI and interactive TUI interfaces.

License

Notifications You must be signed in to change notification settings

codeMaestro78/MLcli

███╗   ███╗██╗      ██████╗██╗     ██╗
████╗ ████║██║     ██╔════╝██║     ██║
██╔████╔██║██║     ██║     ██║     ██║
██║╚██╔╝██║██║     ██║     ██║     ██║
██║ ╚═╝ ██║███████╗╚██████╗███████╗██║
╚═╝     ╚═╝╚══════╝ ╚═════╝╚══════╝╚═╝

MLCLI - Machine Learning Command Line Interface

Python PyPI License

A powerful, modular CLI tool for training, evaluating, and tracking ML/DL models

📖 Documentation📦 PyPI📚 Full Docs


✨ Features

  • ML Models: Logistic Regression, SVM, Random Forest, XGBoost
  • DL Models: TensorFlow DNN, CNN, RNN/LSTM/GRU
  • Hyperparameter Tuning: Grid Search, Random Search, Bayesian (Optuna)
  • Model Explainability: SHAP & LIME
  • Preprocessing: Scalers, Normalizers, Encoders, Feature Selection
  • Experiment Tracking: Built-in tracker with JSON storage
  • Interactive TUI: Terminal-based user interface

🚀 Quick Start

Install

pip install mlcli-toolkit

Verify

mlcli --help

Train a Model

mlcli train --config configs/rf_config.json

Launch Interactive UI

mlcli ui

📋 Commands

Command Description
mlcli list-models List available model trainers
mlcli train -c <config> Train a model
mlcli eval -m <model> -d <data> -t <type> Evaluate a model
mlcli tune -c <config> -m <method> Hyperparameter tuning
mlcli explain -m <model> -d <data> -e <method> Model explainability
mlcli preprocess -d <data> -o <output> -m <method> Preprocess data
mlcli list-runs List experiment runs
mlcli ui Launch interactive TUI

📝 Configuration Example

{
  "model": {
    "type": "random_forest",
    "params": {
      "n_estimators": 100,
      "max_depth": null,
      "random_state": 42
    }
  },
  "dataset": {
    "path": "data/train.csv",
    "type": "csv",
    "target_column": "target"
  },
  "training": {
    "test_size": 0.2,
    "random_state": 42
  },
  "output": {
    "model_dir": "artifacts",
    "save_formats": ["pickle", "joblib"]
  }
}

📚 Documentation

For complete documentation including:

  • All configuration options
  • Hyperparameter tuning guides
  • Model explainability (SHAP/LIME)
  • Data preprocessing pipeline
  • Extending MLCLI with custom trainers
  • Troubleshooting

See docs/DOCUMENTATION.md


🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.


📄 License

This project is licensed under the MIT License.

About

A modular, configuration-driven tool for training, evaluating, and tracking Machine Learning and Deep Learning models with both CLI and interactive TUI interfaces.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published