Automated machine learning training and serving.
install docker and docker-compose - https://docs.docker.com/compose/install/#prerequisites
run docker-compose -f docker-compose-ab.yaml up
this will download docker images from Dockerhub, and start all services. Then, go to http://localhost:4200/ to access Dashboard.
-
Deploy scikit-learn classifier as a REST api with no coding needed. Just upload pickle file with trained model (http://scikit-learn.org/stable/modules/model_persistence.html) to the dashboard or use one trained with AutoML on top of TPOT framework (https://automl.info/tpot/) and send requests.
-
Run A/B testing of models - split traffic accross models for canary deployment. Send business metric of model performance from your client app (such as successfull clicks on suggestion or false positive, example in https://github.com/deniskovalenko/refreshml-client)
Angular Dashboard - https://github.com/deniskovalenko/datascience-dashboard
(optional) AutoML trainer - https://github.com/deniskovalenko/prophecy-trainer
decision-making service - https://github.com/deniskovalenko/brain-server
Client app exposing REST API for models - https://github.com/deniskovalenko/ml-service-backend
- project workspaces (deploy models for different ML tasks)
- persistance layer
- generation of swagger documentation for each machine learning task project
- API token support
- security issues (run apps in separate network and expose ports only of rest endpoint and dashboard)
- support for Kubernetes deployment
Pull requests are welcome, as well as feature requests and suggestions
Prophecy is dual-licensed under the GNU Affero General Public License (AGPL) version 3.0, and a commercial license.