Learning Objectives

  • How to structure and serialize sklearn code for model deployment

  • How to create API endpoints for machine learning code

  • How to continuously deploy changes to modeling code

Course Outline

Introduction ( 10 | 10 minutes )

  • Who am I, and who are you?

  • The problem with Jupyter

  • The Data Hierarchy of Needs

  • Model deployment overview


Model Preparation ( 20 | 30 minutes )

  • Model Scaffolding

  • ML and pipeline objects

  • Model serialization options

  • Exercise: Serialize a machine learning model


API Development ( 30 | 70 minutes )

  • FastAPI Overview

  • FastAPI for Flask Users

  • FastAPI and ML models

  • Exercise: Connect a machine learning model to an API endpoint


Deploying to Heroku ( 20 | 95 minutes )

  • Setup and configure Heroku

  • Connect a repo to Heroku

  • Deploy changes to Heroku

  • Exercise: Deploy a API endpoint to Heroku


Deploying to Dokku ( 25 | 110 Minutes )

  • Benefits of Dokku

  • Server setup and configuration

  • Dokku configuration and deployment

  • Connect a custom domain to Dokku

  • Exercise: Deploy an ML-enabled endpoint to Dokku


Conclusion ( 5 | 115 minutes )

Instructor's Bio: Max Humber

Max Humber is the creator of gazpacho, the author of Personal Finance with Python, and a Distinguished Faculty Member at General Assembly.

Who will be interested in this course?

  • Data Scientists/Engineers who work with Jupyter notebooks

  • Engineers that deploy machine learning APIs

  • Experience with Python, pandas and scikit-learn

  • Experience with Flask will be helpful, but is not required