End-to-end machine learning workflow automation
From raw dataset to a ranked, exported set of trained models in a single CLI call.
- Published
- PyPI · curdrice-v2
Overview
Supervised learning workflows repeat the same steps every time: load, preprocess, select features, train several models, compare them, export the best one. curdrice collapses that into a single command.
It handles diverse dataset formats, runs preprocessing and feature selection, then trains and compares multiple scikit-learn models — Random Forest, Gradient Boosting, and K-Means among them — surfacing metrics and model selection guidance through the CLI.
Challenges
The design constraint was reproducibility. The same command on the same data has to produce the same comparison, or the tool is just a faster route to an unreliable answer.
Decisions
The calls that shaped this project, the alternatives they beat, and what each one cost.
A single CLI command as the entire interface
over a library API to import and call
WhyA library asks the user to already know the pipeline shape. The people who benefit most from this tool are the ones who don't yet — so the interface had to be one command with sensible defaults.
Trade-offLess flexible than an API for anyone who wants to compose the steps themselves.
Export trained models as joblib artifacts
over print metrics and stop
WhyA comparison you can't deploy is a report, not a tool. Bundling the artifacts is what lets the output of a run become the input to something else.
Trade-offjoblib ties the artifacts to a Python and scikit-learn version.
Publish to PyPI
over leave it as a GitHub repo to clone
WhyClone-and-configure is exactly the friction the tool exists to remove. A pip install is the difference between something people try and something they don't.
Trade-offCommitting to packaging, versioning, and the maintenance that follows.
Outcomes
Trained models export as joblib artifacts, bundled for downstream use and deployment.
Published as an open-source PyPI package (curdrice-v2), installable and runnable end to end with minimal setup, with source and usage examples on GitHub.