2022 年 10 月末にリリースされた Triton Inference Server の各機能などについて、概要をお届けします。「Triton Inference Server って何?」という方は、以下の記事などをご確認ください。
What’s New in 2.27.0 (NGC 22.10)
リリース ノート本体は https://github.com/triton-inference-server/server/releases/tag/v2.27.0 です。このリリースには以下の機能や改善などが含まれています。
- JAX を Python バックエンド内で使うサンプルが追加されました
- Server Wrapper API が機能強化され、 decoupled models などの未サポートだった機能が追加されました
- Model Analyzer で、複数のモデルを同時にプロファイリングしたり解析したりできるようになりました
ご覧いただくとわかる通り、今回は (おそらく過去最大に) 更新が少なくなっております。一方、Server Wrapper API や Model Analyzer の改善のように、使い勝手を向上させる取り組みは引き続き行われています。
Server Wrapper API は、先月から登場した Developer Tools のことで、Triton のコア機能を任意のアプリケーションへ組み込むための In-Process API のラッパーです。ベータ版ということもあって未サポートの機能等はありそうなのですが、今月のリリースのように、順次対応が進められていくものと思われます。
Model Analyzer 関連の更新については、これまであった「一度に負荷をかけることのできるモデルは一つだけ」という制限が緩和されるものとなっています。すなわち、同時に複数のモデルに対してリクエストを投げて性能を評価することが可能となっています。この機能を利用する場合、Model Analyzer のオプションとして --run-config-profile-models-concurrently-enable
を追加していただければ OK となります。ただし、いくつかの制限事項 (例: quick
サーチ モードでしか動かない、最大バッチ サイズ等への制限がつけられないことがある、など) があるため、利用に際してはドキュメントを参照いただくようお願いします。
What’s New 以外のアップデート
今月の、What’s New で言及されていない更新点は以下の通りです。
- StableDiffusion を利用したサンプルが追加されました (PR#4939)
- フロントエンドとして Gradio を利用したサンプルとなっています
- ONNXRuntime のバージョンが更新されました (PR#5004)
- 1.13.0 から 1.13.1 に更新されているようです
- 推論系ライブラリのニュースレターができたようです (PR#4905)
What’s New 以外の更新も、今月は少なめでした。少し興味深い内容としては、StableDiffusion を利用したサンプルが追加されている点でしょうか。これまで、あまり Triton のリポジトリにはサンプルらしいサンプルが存在しなかったのですが、今回の更新でフロントエンド付きのサンプルが追加されることになります。もしデモ環境のバックエンドとして Triton を考慮される場合は、参考になるかもしれません。
まとめ
今月も細かい改善がいくつかという感じで、基本的には使い勝手の向上や、新しくトライされる方たち向けのサンプル追加といった内容でした。今後も継続的に改善が続けられると思いますので、定期的に更新内容をご確認いただければ幸いです。また機能要望などあれば、公式リポジトリに issue を上げていただけるとありがたいです。