
299
7
장
AWS를 이용한 MLOps
7.2.2 7.2.2
플라스크 마이크로서비스플라스크 마이크로서비스
필자는
MLOps
워크플로에서 마이크로서비스가 다양한 방식으로 동작하도록 만드는 것은 중
요하다고 했다. 또한 앞서 컨테이너 기술을 이용하면 서비스가 어렵지 않게 다양한 타깃에 배
포될 수 있는 장점이 있다고 했다. 이번 절에서는 머신러닝 모델을 사용하는 플라스크 마이크
로서비스가 다양한 타깃으로 배포되어 동작하는 모습을 살펴본다.
우선 플라스크 머신러닝 마이크로서비스 애플리케이션의 소스 코드를 살펴보자. 머신러닝과
관련된 복잡하고 무거운 대부분 작업은
myopslib
.
py
에 작성되어 있다.
app
.
py
파일은 단지
@
app
.
route
을 이용해 각
URL
과
HTTP
메서드에 해당하는 함수가 실행되도록 만든다.
from flask import Flask, request, jsonify
# 프로젝트
import myopslib
app = Flask(__name__)
@app.route("/")
def home():
return "<h3>텐서플로 자동차 연비 예측 플라스크 서비스 컨테이너</h3>"
@app.route("/hello")
def hello():
return "hello ml"
@app.route("/predict", methods=["POST"])
def predict(): ...