개요
NVIDIA Triton Server는 NVIDIA가 제공하는 오픈 소스 AI 추론 서버로, 딥러닝 모델의 효율적인 배포와 실행을 지원합니다. 다양한 AI 모델을 손쉽게 관리하고 추론 속도를 개선하며 GPU 및 CPU 자원을 최적화하는 데 도움을 줍니다.
특징
NVIDIA Triton Server는 다양한 이점을 제공합니다.
- 프레임워크: Triton은 TensorFlow, PyTorch, ONNX, TensorRT, Python 등 다양한 프레임워크를 지원
- 고성능 추론: C++ 기반으로 설계되어 Python보다 빠른 추론이 가능하며, GPU와 CPU 자원을 효율적으로 활용
- 모델 앙상블: 여러 모델을 조합하여 하나의 파이프라인으로 실행할 수 있는 모델 앙상블 기능을 제공
- 버전 관리: 실시간으로 모델 업데이트 및 버전 관리를 지원하여 프로덕션 환경에서 유연한 운영 가능
- 확장 및 모니터링: K8s와 통합되어 오케스트레이션과 메트릭 및 오토 스케일링을 지원
- 워크플로우: Kubeflow 및 KServe와 통합되어 총체적인 AI 워크플로우를 지원
설치
NVIDIA Triton은 Docker 이미지를 통해 Triton Server를 간편하게 설치할 수 있도록 지원합니다. Docker 이미지는 NVIDIA NGC 또는 GitHub에서 다운로드 가능합니다. ( https://github.com/triton-inference-server/server )
H100 베어메탈 서버에서 아래와 같이 설치를 진행할 수 있습니다.
1. Docker 설치 및 NVIDIA 컨테이너 툴킷 준비
sudo apt-get update
sudo apt-get install -y docker.io
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit
sudo systemctl restart docker
2. Triton Docker 이미지 다운로드
docker pull nvcr.io/nvidia/tritonserver:24.04-py3
3. 모델 리포지토리 생성
mkdir model_repository
# 모델 파일을 model_repository 폴더에 저장
4. Triton Server 실행
docker run --gpus=all -it --shm-size=256m --rm \
-p8000:8000 -p8001:8001 -p8002:8002 \
-v $(pwd)/model_repository:/models \
nvcr.io/nvidia/tritonserver:24.04-py3 tritonserver --model-repository=/models
5. 서버 상태 확인
curl -v localhost:8000/v2/health/ready
6. 추가 의존성 설치 (선택 사항)
docker run -it --rm nvcr.io/nvidia/tritonserver:24.04-py3 bash
pip install tritonclient[http] sentencepiece protobuf
구성 예시
GCP Vertex AI는 NVIDIA Triton Server를 커스텀 컨테이너로 실행하여 모델을 배포하고 추론 작업을 수행할 수 있도록 지원합니다.
이 경우 진행은 Docker 이미지 준비, 모델 레지스트리 등록, 엔드포인트 생성 및 배포 순으로 합니다.
- Docker 이미지 준비: NVIDIA NGC에서 적합한 Triton Docker 이미지를 다운로드 후, Vertex AI의 Artifact Registry에 업로드
- 모델 레지스트리 등록: ML 모델을 Vertex AI Model Registry에 등록 후 모델 아티팩트를 Google Cloud Storage에 저장
- 엔드포인트 생성 및 배포: 모델을 Vertex AI Prediction 엔드포인트에 배포하여 추론 요청을 처리
참고사항
C API는 Triton Inference Server의 기능을 C/C++ 애플리케이션에 직접 통합할 수 있도록 제공되는 API입니다. 별도 HTTP/REST 또는 gRPC 프로토콜을 사용하지 않고, 애플리케이션 내부에서 Triton의 코어 로직과 직접 상호작용할 수 있습니다.
'AI & GPU' 카테고리의 다른 글
MCP (0) | 2025.04.20 |
---|---|
AI 학습에서의 분산 학습 (0) | 2025.04.13 |
자연어처리 - 인코딩 (0) | 2025.04.04 |
FLOPS (0) | 2025.04.04 |
NCCL (0) | 2025.04.02 |