部署流程與測試

MLOps 部署與生命週期

Nemanja Radojkovic

Senior Machine Learning Engineer

先別急!

 

speed limit

 

 

 

  • 沒有完整測試前,別急著部署!
MLOps 部署與生命週期

議程

測試類型

  • 單元測試
  • 整合測試
  • 冒煙測試
  • 負載測試
  • 驗收測試

開發、部署、測試環境

  • Development
  • Test
  • Staging
  • Production

 

不在範圍:預測模型效能

在範圍:整體 ML 應用程式測試

MLOps 部署與生命週期

env def

MLOps 部署與生命週期

單元測試

檢查獨立程式碼單元是否如預期運作

範例

待測函式:

def add_two_numbers(x, y):
    return x + y

單元測試:

add_two_numbers(1, 1) == 2
add_two_numbers(2, 3) == 5
MLOps 部署與生命週期

dev changing

MLOps 部署與生命週期

constantly changing

MLOps 部署與生命週期

MLOps 部署與生命週期

MLOps 部署與生命週期

test env 1

MLOps 部署與生命週期

free resources

MLOps 部署與生命週期

integration tests 1

MLOps 部署與生命週期

api testing

MLOps 部署與生命週期

integration testing

MLOps 部署與生命週期

staging env

MLOps 部署與生命週期

copy of prod

MLOps 部署與生命週期

copy of prod 2

MLOps 部署與生命週期

exact versions

MLOps 部署與生命週期

prod copy data

MLOps 部署與生命週期

smoke tests

MLOps 部署與生命週期

load tests

MLOps 部署與生命週期

stress tests

MLOps 部署與生命週期

uat

MLOps 部署與生命週期

一環失守,全盤皆失

在 Production 引入任何變更都要審慎。

oring

 

 

 

1986 年「挑戰者號」太空梭災難肇因於橡膠密封環失效

MLOps 部署與生命週期

priorities

MLOps 部署與生命週期

一起來練習吧!

MLOps 部署與生命週期

Preparing Video For Download...