Machine Learning Platform (MLP) is a unified set of products for developing and operating the machine learning systems at the various stages of machine learning life cycle. The typical ML life cycle can be viewed through the following nine stages:
MLP Products are systems and services that are specifically built to solve one or multiple stages of the machine learning life cycle's problems. Currently, we have published the following MLP products:
- Feast - For managing and serving machine learning features.
- Merlin - For deploying, serving, and monitoring machine learning models.
- Turing - For designing, deploying, and evaluating machine learning experiments.
Architecture overview
The MLP Server provides REST API used across MLP Products. It exposes a shared concepts such as ML Project. This repository also hosts Go and React (@caraml-dev/ui-lib) libraries used to build a common MLP functionailty.
Getting started
Prerequisites
-
Google Oauth credential
MLP uses Google Sign-in to authenticate the user to access the API and UI. After you get the client ID, specify it into REACT_APP_OAUTH_CLIENT_ID
in .env.development
file.
From Docker Compose
If you already have Docker installed, you can spin up MLP and its dependencies by running:
docker-compose up
MLP will now be reachable at http://localhost:8080.
From source
To build and run MLP from the source code, you need to have Go, Node.js, and Yarn installed.
You will also need a running Postgresql database, Keto, and Vault servers.
MLP uses Docker to make the task of setting up the dependencies a little easier. You can run make local-env
to starting up all those dependencies.
make local-env
make run
OR
# `make` will execute `make local-env` and `make run`
make
Documentation
Go to the docs folder for the full documentation and guides.
React UI development
For more information on building, running, and developing the UI app and library, see the UI's README.md.