tensorflow/serving
A flexible, high-performance serving system for machine learning models
What it solves
머신러닝 모델을 프로덕션 환경에 배포하는 데 따르는 문제를 해결합니다. 구체적으로, 추론 단계(학습된 모델을 클라이언트가 신뢰성 있게 효율적으로 사용할 수 있도록 하며, 모델이 업데이트될 때 클라이언트 코드를 변경할 필요가 없게 함)를 담당합니다.
How it works
TensorFlow Serving은 고성능이며 레퍼런스 카운트가 적용된 조회 테이블을 사용해 모델의 수명 주기를 관리합니다. 버전화된 모델 접근을 제공하고 gRPC와 HTTP를 통해 추론 엔드포인트를 노출합니다. 성능 최적화를 위해 개별 요청을 배치화하여 GPU에서 공동 실행할 수 있는 스케줄러를 포함하고 있으며, TensorFlow 모델, 임베딩, 어휘 등 다양한 "servables"를 지원합니다.
Who it’s for
고성능, 저지연, 다중 모델 버전 관리(A/B 테스트 및 카나리 배포 포함)가 필요한 프로덕션 환경에 머신러닝 모델을 배포해야 하는 개발자와 ML 엔지니어를 위해 설계되었습니다.
Highlights
- 여러 모델 또는 동일 모델의 여러 버전을 동시에 서빙 가능.
- gRPC와 HTTP 추론 엔드포인트 모두 제공.
- 클라이언트 코드를 업데이트하지 않고 새로운 모델 버전 배포 가능.
- 실험 모델을 위한 카나리 배포 및 A/B 테스트 지원.
- 구성 가능한 지연 제어를 갖춘 GPU 배치 요청 스케줄러 포함.
- TensorFlow 기반이 아닌 모델 및 데이터도 서빙할 수 있는 확장 가능한 아키텍처.