728x90
웹 서버
- HTTP를 통해 웹 브라우저에서 요청하는 HTML 문서나 오브젝트를 전송해주는 서비스 프로그램
- 요청(request)을 받으면 요청한 내용을 보내주는(Response) 프로그램
머신러닝 모델 서버
어떤 데이터(Input)를 제공하며 예측해달라고 요청(Request)하면 모델을 사용해 예측 값을 반환(Response)하는 서버
API(Application Programming Interface)
운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스
Online Serving
- 요청(Request)이 올 때마다 실시간으로 예측
- 클라이언트(application)에서 ML 모델 서버에 HTTP 요청(Request)하고 머신러닝 모델 서버에서 예측한 후 예측 값을 반환(Response)
단일 데이터를 받아 실시간으로 예측하는 예제
- 기계 고장 예측 모델 : 센서의 실시간 데이터가 제공되면 특정 기계 부품이 앞으로 N분 안에 고장날지 아닐지를 예측
- 음식 배달 소요 시간 예측 : 해당 지경의 과거 평균 배달 시간, 실시간 교통 정보, 음식 데이터 등을 기반으로 음식 배달 소요 시간 예측
Online Serving을 구현하는 방식
- 직업 API 웹 서버 개발 : Flask, FastAPI 등을 사용해 서버 구축
- 클라우드 서비스 활용 : AWS의 SageMaker, GCP의 Vertex AI 등 -> 비용 문제가 발생할 수 있음
- Serving 라이브러리 활용 : Tensorflow Serving, Torch Serve, MLFLow, BentoML 등
Batch Serving
- 주기적으로 학습을 하거나 예측을 하는 경우 사용
- 특정 시간에 반복해서 실행
- Batch는 데이터 엔지니어링에서 자주 활용되는 용어
728x90
'Boostcamp AI Tech' 카테고리의 다른 글
[Boostcamp Day-87] 머신러닝 프로젝트 라이프 사이클 (0) | 2021.12.08 |
---|---|
[Boostcamp Day-85] MLOps 개론 (0) | 2021.12.07 |
[실험 일지 Day-82] P Stage - 모델 최적화(경량화) (0) | 2021.12.06 |
[실험 일지 Day-81] P Stage - 모델 최적화(경량화) (0) | 2021.12.06 |
[실험 일지 Day-80] P Stage - 모델 최적화(경량화) (0) | 2021.12.06 |