Skip to main content

🚀 MLPilot

Data In → Insights Out

MLPilot is a production-grade Python AutoML library for tabular datasets that automatically performs EDA, preprocessing, model comparison, hyperparameter tuning, explainability, and exports a deployment-ready inference pipeline.

14+ Models • Auto EDA • Optuna • SHAP • CLI • Python API


✨ Features

  • 📂 Automatic CSV & Parquet loading
  • 🤖 Regression & Classification detection
  • 📊 Statistical EDA & data quality reports
  • 🧹 Missing value, duplicate & outlier handling
  • ⚙️ Feature engineering & preprocessing pipeline
  • 🏆 Compare 14+ ML models with Cross Validation
  • 🎯 Bayesian hyperparameter tuning using Optuna
  • 🔍 SHAP feature importance & explainability
  • 📦 Export complete inference pipeline as .joblib

⚡ Installation

pip install mlpilot

For development:

python -m pip install -e ".[dev]"

🚀 Quick Start

Run the complete pipeline:

mlpilot run --data dataset.csv

Specify the target column:

mlpilot run --data dataset.csv --target price --task regression

Custom output directory:

mlpilot run --data dataset.csv --output outputs/

🔄 Pipeline Workflow

Raw Dataset
     │
     ▼
 Load Data
     │
     ▼
 Statistical EDA
     │
     ▼
 Data Cleaning
     │
     ▼
 Feature Engineering
     │
     ▼
 Train/Test Split
     │
     ▼
 Preprocessing
     │
     ▼
 Compare Models
     │
     ▼
 Optuna Tuning
     │
     ▼
 SHAP Explainability
     │
     ▼
 Model Evaluation
     │
     ▼
 Export Pipeline (.joblib)

🐍 Python API

from ml_pilot import PipelineRunner
from ml_pilot.config import load_config

config = load_config()
runner = PipelineRunner(config)

context = runner.run(
    data_path="dataset.csv",
    target="price"
)

print(context.best_model_name)
print(context.metrics)

📁 Generated Artifacts

outputs/
├── mlpilot_pipeline.joblib
├── leaderboard.csv
├── metrics.json
├── model_comparison.json
├── feature_importances.json
├── run_metadata.json
├── serving_schema.json
├── predict_snippet.py
└── shap/
    ├── shap_summary.png
    ├── shap_dependence.png
    └── shap_waterfall.png

🧠 Supported Models

Category Models
Linear Ridge, Lasso, ElasticNet, Linear Regression
Tree Decision Tree, Random Forest, Extra Trees
Boosting Gradient Boosting, HistGradientBoosting
Instance KNN, SVR
Neural MLP Regressor / Classifier

📂 Project Structure

mlpilot/
├── src/ml_pilot/
│   ├── cli.py
│   ├── config/
│   ├── core/
│   ├── stages/
│   └── utils/
├── tests/
├── examples/
└── pyproject.toml

🛠 Tech Stack

  • Python 3.12+
  • Scikit-learn
  • Pandas & NumPy
  • Optuna
  • SHAP
  • Typer + Rich
  • Joblib
  • Plotly

📄 License

Released under the MIT License.

Built with using Python

If MLPilot helps your workflow, consider giving the repository a ⭐.

#\x00 \x00M\x00L\x00_\x00P\x00i\x00l\x00o\x00t\x00 \x00 \x00

Metadata

Release files for mlpilotx 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 mlpilotx 0.1.0
File Size Uploaded
mlpilotx-0.1.0.tar.gz 30.4 kB Details

Built distribution (wheel)

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

Total release size: 74.1 kB

Release files / mlpilotx-0.1.0.tar.gz

Download URL mlpilotx-0.1.0.tar.gz
Size 30.4 kB
Tags Source
SHA-256 checksum
How to use checksums
89ba2b923548ce583285d0b7b50a3ac2357a0ecc12071e03d299ecbf65c2da10
BLAKE2b-256 checksum
How to use checksums
215c445305e4e3db7cca7296cb5a9f819d4622ebba5b62818dad14511ffe11c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.0

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

Download URL mlpilotx-0.1.0-py3-none-any.whl
Size 43.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b7993d29ee959790d2934ea1ab0e8979d6dc3a7a09731d3a458ab3689d491e4e
BLAKE2b-256 checksum
How to use checksums
f008482a911594566f68681e7cd25788e18d01f33a2acba6214c2c611041e686
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.0

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