TensorRT, PyTorch, ONNX, OpenVINO 등 다양한 프레임워크의 AI 모델을 HTTP/REST와 gRPC로 배포하는 오픈소스 추론 서버입니다.
deepjavalibrary/djl-serving
PyTorch, TensorFlow, ONNX 등 딥러닝 모델을 HTTP 엔드포인트로 제공하는 Java 기반 독립형 모델 서빙 솔루션입니다.
- 스타
- 256
- 포크
- 100
- 열린 이슈
- 16
- 마지막 커밋
- 5일 전
어떤 프로젝트인가요?
DJL Serving은 Java용 딥러닝 라이브러리인 DJL을 기반으로 구축된 독립형 모델 서빙 시스템입니다. 단일 모델이나 여러 모델, 또는 워크플로를 HTTP 엔드포인트를 통해 호출할 수 있도록 제공합니다. 기본적으로 PyTorch TorchScript 모델, TensorFlow SavedModel 번들, CPU 기반 ONNX 모델, Python 스크립트 모델을 서빙하며, XGBoost, LightGBM, Sentencepiece, fastText/BlazingText용 확장 기능도 사용할 수 있습니다.
서버는 단일 JVM 안에서 멀티스레드 추론을 실행하며, 부하에 따라 워커 스레드 수를 늘리거나 줄일 수 있습니다. 동적 배칭, 하나의 엔드포인트에서 여러 모델 버전 로드, 서로 다른 엔진의 모델 동시 서빙도 지원합니다. 별도의 추론 및 관리 REST API를 통해 실행 중인 모델을 처리하고, 런타임에 모델을 추가·제거하거나 규모를 조정할 수 있습니다.
DJL Serving은 Homebrew, Debian 패키지, Windows용 zip 아카이브로 설치하거나 Docker 컨테이너로 실행할 수 있습니다. 플러그인을 사용해 사용자 지정 확장 기능을 추가할 수도 있습니다.
핵심 기능
- 01PyTorch, TensorFlow, ONNX 및 Python 스크립트 모델을 기본적으로 서빙합니다.
- 02단일 JVM에서 멀티스레드 추론을 실행하고 워커 스레드를 자동으로 확장·축소합니다.
- 03처리량을 높이는 동적 배칭을 지원합니다.
- 04하나의 엔드포인트에서 여러 모델 버전을 제공하고, 서로 다른 엔진의 모델을 함께 서빙할 수 있습니다.
- 05추론 및 모델 관리를 위한 별도의 REST API를 제공합니다.
- 06플러그인 시스템을 통해 확장할 수 있습니다.
활용 사례
- Java 스택에서 학습된 딥러닝 모델을 HTTP 추론 서비스로 배포합니다.
- 런타임에 규모를 조정하면서 여러 모델이나 버전을 하나의 엔드포인트에서 서빙합니다.
- TorchScript 또는 ONNX 모델과 함께 Python 기반 모델 스크립트를 호스팅합니다.
빠른 시작
- 1
Homebrew로 macOS에 설치하기
brew install djl-serving - 2
또는 Docker에서 실행하고 포트 8080으로 제공하기
docker run -itd -p 8080:8080 deepjavalibrary/djl-serving
사용 전 알아둘 점
- ONNX 모델은 CPU에서만 지원됩니다.
- XGBoost, LightGBM, Sentencepiece, fastText 모델을 사용하려면 추가 확장 기능을 설치해야 합니다.
- 기본적으로 서버는 localhost에서의 연결만 허용하며, 원격 액세스를 사용하려면 설정이 필요합니다.
토픽
자주 묻는 질문
- djl-serving은(는) 무엇인가요?
- PyTorch, TensorFlow, ONNX 등 딥러닝 모델을 HTTP 엔드포인트로 제공하는 Java 기반 독립형 모델 서빙 솔루션입니다. DJL Serving은 Java용 딥러닝 라이브러리인 DJL을 기반으로 구축된 독립형 모델 서빙 시스템입니다. 단일 모델이나 여러 모델, 또는 워크플로를 HTTP 엔드포인트를 통해 호출할 수 있도록 제공합니다. 기본적으로 PyTorch TorchScript 모델, TensorFlow SavedModel 번들, CPU 기반 ONNX 모델, Python 스크립트 모델을 서빙하며, XGBoost, LightGBM, Sentencepiece, fastText/BlazingText용 확장 기능도 사용할 수 있습니다.
- djl-serving은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- djl-serving은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- djl-serving은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. djl-serving의 마지막 커밋은 2026년 11월 2일입니다.
- djl-serving은(는) 어디에 사용할 수 있나요?
- Java 스택에서 학습된 딥러닝 모델을 HTTP 추론 서비스로 배포합니다. 런타임에 규모를 조정하면서 여러 모델이나 버전을 하나의 엔드포인트에서 서빙합니다. TorchScript 또는 ONNX 모델과 함께 Python 기반 모델 스크립트를 호스팅합니다.
- djl-serving는 어떻게 설치하나요?
- Homebrew로 macOS에 설치하기: brew install djl-serving 또는 Docker에서 실행하고 포트 8080으로 제공하기: docker run -itd -p 8080:8080 deepjavalibrary/djl-serving
- djl-serving은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/deepjavalibrary/djl-serving
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
네이티브 Java API로 모델을 만들고 학습하고 실행할 수 있는 엔진 독립적인 Java 딥러닝 프레임워크입니다.
Ultralytics YOLOv5는 객체 탐지, 인스턴스 분할, 이미지 분류를 지원하며 학습과 내보내기를 제공하는 PyTorch 기반 컴퓨터 비전 툴킷입니다.
모바일, 임베디드 및 데스크톱 기기에서 딥러닝 모델을 실행하기 위한 고성능 C++ 신경망 추론 프레임워크입니다.
ONNX 형식으로 내보낸 ML 모델 실행을 위한 크로스 플랫폼 가속기이며, PyTorch 스크립트 학습도 지원합니다.
OpenVINO, PyTorch, ONNX에서 추론 속도를 높이기 위해 양자화, 프루닝, 희소화를 지원하는 신경망 압축용 Python 프레임워크입니다.