A production-grade AutoML engine with a conversational Assistant interface.
Project description
SmartML
SmartML is a production-grade, enterprise-level Machine Learning Automation Library for Python. It combines data preprocessing, feature engineering, feature selection, AutoML model training, explainable AI, visualization, and a conversational Assistant interface into a single unified framework.
Installation
pip install smartml-assistant
To install with optional boosting algorithms (XGBoost, LightGBM, CatBoost) and visualization libraries (Plotly, Seaborn):
pip install "smartml-assistant[all]"
Quick Start
The One-Line Auto-Pilot
Provide your DataFrame and the target column, and SmartML will do the rest: profiling, cleaning, feature engineering, model comparison, training, and evaluation.
import smartml as sml
# Load data (auto-detects CSV, Parquet, JSON, Excel, etc.)
df = sml.load("data/house_prices.csv")
# Run the complete AutoML pipeline
result = sml.auto(df, target="SalePrice", output_dir="my_project")
# Explain the best model
print(result.explain())
# Make predictions on new data
preds = result.predict(new_df)
# Save the model
result.save("my_model")
# Generate an HTML report
result.report(fmt="html")
Unsupervised Clustering
df = sml.load("data/customer_segments.csv")
result = sml.clustering_pipeline(df, algorithm="auto")
print(f"Found {result.clustering_result.n_clusters} clusters!")
Conversational Assistant
Interact with your data using natural language:
import smartml as sml
assistant = sml.Assistant(df, target="SalePrice")
assistant.ask("Clean my dataset")
assistant.ask("Engineer some new features")
assistant.ask("Train the best regression model")
assistant.ask("Why did you choose this algorithm?")
assistant.ask("Show feature importance")
assistant.ask("Generate a report")
Features
- Automated Data Cleaning: Imputation, deduplication, low-cardinality one-hot encoding, and scaling.
- Advanced Feature Engineering: Polynomial interactions, date decomposition, frequency encoding, and pairwise ratios.
- Smart Feature Selection: Variance thresholding, correlation filtering, univariate selection, and model-based feature importance thresholding.
- Multi-Model Leaderboard: Automatically cross-validates Logistic/Linear Regression, Random Forest, Gradient Boosting, SVM, XGBoost, LightGBM, CatBoost, and more.
- Unsupervised Learning: Full clustering (KMeans, DBSCAN, GMM, Agglomerative) and Anomaly Detection (IsolationForest, LOF, OneClassSVM).
- Explainable AI: Natural-language justifications for algorithm selection and feature importance.
- Safe & Headless: Safe for interactive environments. No global state side-effects.
License
MIT License. See LICENSE for more information.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file smartml_assistant-0.2.0.tar.gz.
File metadata
- Download URL: smartml_assistant-0.2.0.tar.gz
- Upload date:
- Size: 50.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0fa82463cdb209ba1f5f756adf90c909211a07a88d6c8cc81faf3ef72669e360
|
|
| MD5 |
93658ce768a48b766b1a548899086899
|
|
| BLAKE2b-256 |
3b7010c5055ac563e824edf66c9880f527034772054403de9c81b6cedd9e5ded
|