Triton Inference Server
NVIDIA에서 개발한 멀티 프레임워크 모델 추론 서버입니다. PyTorch, TensorFlow, ONNX, TensorRT 등 다양한 프레임워크의 모델을 하나의 서버에서 동시에 서빙합니다.
어디에 쓰이나요?
- 멀티 모델 서빙: 여러 ML/DL 모델을 하나의 서버에서 동시 운영 (분류 모델, 검출 모델, 임베딩 모델 등)
- GPU 최적화: Dynamic Batching, Concurrent Model Execution으로 GPU 활용률 극대화
- 모델 앙상블: 여러 모델을 파이프라인으로 연결 (전처리 → 추론 → 후처리)
- 프로덕션 배포: 높은 처리량과 낮은 지연 시간이 필요한 실서비스 환경
vLLM이 LLM 텍스트 생성에 특화되어 있다면, Triton은 비전, NLP, 추천 등 모든 종류의 ML 모델을 서빙하는 범용 추론 서버입니다.
NVIDIA GPU가 필수입니다. GPU가 없는 환경에서는 실행되지 않습니다.
Docker Compose
services:
triton:
image: nvcr.io/nvidia/tritonserver:24.01-py3
container_name: triton
restart: unless-stopped
ports:
- "8000:8000"
- "8001:8001"
- "8002:8002"
volumes:
- ./model_repository:/models
command: tritonserver --model-repository=/models
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: [gpu]
model_repository 디렉토리에 모델 파일을 배치해야 합니다. 디렉토리 구조는 모델명/버전/model.onnx 형식입니다.
# 모델 저장소 디렉토리 생성
mkdir -p model_repository
docker compose up -d
접속 확인
# 헬스 체크
curl http://localhost:8000/v2/health/ready
# 로드된 모델 목록
curl http://localhost:8000/v2/models
기본 정보
| 항목 | 값 |
|---|
| HTTP 포트 | 8000 |
| gRPC 포트 | 8001 |
| 메트릭 포트 | 8002 (Prometheus) |
| GPU | NVIDIA GPU 필수 |
라이선스
| 구분 | 내용 |
|---|
| 라이선스 | BSD 3-Clause |
| 개인 사용 | 자유롭게 사용 가능 |
| 상업적 사용 | 자유롭게 사용 가능, 수정/재배포 제한 없음 |