Serverless MLOps with GitHub Actions on Google Cloud

Xin Cheng
2 min readDec 7, 2020

--

MLOps is hot these these days. Traditionally it is hard to deploy machine learning model into production. However, with advances of cloud, container, serverless, devops, the barrier has been lowered. With GitHub Actions, it is even easier for developers apply DevOps/CICD principles to machine learning projects.

MLOps has been discussed in lots of articles. Here are some:

In summary, MLOps is a practice of applying DevOps to machine learning projects (whenever there is manual process, automate it with repeatable pipelines).

Traditionally, you would store your source code in git repo, e.g. GitHub, BitBucket, GitLab. Then configure some CICD servers, e.g. listed in following article to automate integration, deployment pipeline.

Jenkins is pretty widely used in Enterprise (cloud native version is Jenkins X). Jenkins is very powerful, but the configuration is quite tedious. Jenkins X is easy to configure, but I have been unsuccessful in going beyond their basic sample.

However, with advent of GitHub Actions, it really removes the burden for setting up a separate CI servers in some scenarios and enable developers to be more agile. Certainly the best part is that it is a very active community and lots of actions are available.

Thanks to Mark Douthwaite’s inspiring article, I successfully implemented a MVP serverless pipeline that trains machine learning model, saves the model and deploys the model as Google Cloud functions. Certainly, MLOps means more, but the easiness and agility is shining.

--

--

Xin Cheng
Xin Cheng

Written by Xin Cheng

Multi/Hybrid-cloud, Kubernetes, cloud-native, big data, machine learning, IoT developer/architect, 3x Azure-certified, 3x AWS-certified, 2x GCP-certified

No responses yet