TensorRT、PyTorch、ONNX、OpenVINOなどのAIモデルをHTTP/RESTとgRPCでデプロイできるオープンソース推論サーバー。
deepjavalibrary/djl-serving
PyTorch、TensorFlow、ONNXなどの深層学習モデルをHTTPエンドポイント経由で提供する、Javaベースのスタンドアロンモデルサービングソリューション。
- スター
- 256
- フォーク
- 100
- 未解決の Issue
- 16
- 最終コミット
- 5 日前
これは何?
DJL Servingは、Java向け深層学習ライブラリDJLを基盤とするスタンドアロンのモデルサービングシステムです。単一または複数のモデル、あるいはワークフローを受け取り、HTTPエンドポイント経由で呼び出せるようにします。標準でPyTorch TorchScriptモデル、TensorFlow SavedModelバンドル、CPUベースのONNXモデル、Pythonスクリプトモデルを提供でき、XGBoost、LightGBM、Sentencepiece、fastText/BlazingText向けの拡張機能も利用できます。
サーバーは単一のJVM内でマルチスレッド推論を実行し、負荷に応じてワーカースレッド数を増減できます。また、動的バッチ処理、1つのエンドポイントでの複数バージョンのモデル読み込み、異なるエンジンのモデルの同時提供にも対応しています。実行中のモデルを扱う推論用REST APIと、モデルの追加・削除・スケーリングを実行時に行う管理用REST APIが分かれています。
DJL ServingはHomebrew、Debianパッケージ、Windows向けzipアーカイブからインストールできるほか、Dockerコンテナとして実行できます。プラグインを使って独自の拡張機能を追加できます。
主な機能
- 01PyTorch、TensorFlow、ONNX、Pythonスクリプトのモデルを標準で提供します。
- 02単一のJVM内でマルチスレッド推論を実行し、ワーカースレッド数を自動でスケーリングします。
- 03スループットを向上させる動的バッチ処理に対応しています。
- 041つのエンドポイントで複数バージョンのモデルを扱えるほか、異なるエンジンのモデルを同時に提供できます。
- 05推論用とモデル管理用に分かれたREST APIを提供します。
- 06プラグインシステムで機能を拡張できます。
ユースケース
- Javaスタックから、学習済み深層学習モデルをHTTP推論サービスとしてデプロイする。
- 実行時のスケーリングに対応しながら、複数のモデルやバージョンを1つのエンドポイントで提供する。
- 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推論サービスとしてデプロイする。 実行時のスケーリングに対応しながら、複数のモデルやバージョンを1つのエンドポイントで提供する。 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フレームワーク。