logo
logo
모델 서빙 최적화를 위한 프레임워크 선정과 서빙 성능 극대화하기
코드너리  |  2022. 08. 12
머신러닝
ML 파이프라인
사용된 기술:
fastapi-image
tensorflow-image
python-image
kotlin-image
content

기존 시스템의 한계:

  1. 파이썬 기반의 모델 전/후처리 코드를 코틀린으로 변환하는 과정에서 추가적인 개발이 필요했고, 종종 변환 과정에서 결과의 정합성 이슈가 발생했습니다.
  2. 다양한 딥러닝 프레임워크(Tensorflow, PyTorch 등)로 개발된 모델은 정합성의 차이가 허용 가능한 선에서 인퍼런스 최적화를 위해 모델이 변환(ONNX, TensorRT 등) 될 수 있고, 최종적으로 모델별 최종 서빙 포맷이 다를 수 있었습니다. 하지만 다양한 포맷의 모델을 서빙하는 것은 개발 생산성, 운영 안정성 측면에서 문제가 있어, 최선의 선택은 아니지만 하나의 포맷으로 통일해서 서빙을 수행해야 했습니다.
  3. 직접 모델 서빙 서버를 개발할 경우, 서비스 요구사항을 만족시키기 위한 성능 개선과 튜닝 작업에 많은 시간과 비용이 소요되었습니다.

고려 사항:

  • 직접 모델 서빙 서버를 개발하는 것 대비 높은 처리량과 낮은 지연시간
  • 모델 서빙 서버의 성능 개선을 위한 최적화 및 튜닝 비용 (시간과 노력)
  • 실제 운영할 수 있을 정도의 안정성

프레임워크 선정:

  • 모델 서빙 프레임워크에서 제공하는 기능과 성능, 안정성 결과를 종합해 보았을 때, Triton이 가장 적합하다고 판단을 내렸습니다. 성능과 안정성도 우수하지만 다양한 모델의 포맷을 지원한다는 점이 큰 장점이라 판단했습니다.
Copyright © 2024. Codenary All Rights Reserved.