KServe 互換 gRPC API

はじめに

ここでは、KServe と互換性のある OpenVINO™ モデルサーバー gRPC API に関する情報を提供します。これは KServe リポジトリーで文書化されています。入力データの逆シリアル化が高速に実装されるため、最適なパフォーマンスを得るには、gRPC インターフェイスを使用することを推奨します。gRPC は、特に画像などの大きな入力メッセージの場合、待ち時間の短縮を実現します。

API には次のエンドポイントが含まれています。

注: 上記の各エンドポイントの使用例は、KServe サンプルにあります。

サーバーライブ API

サーバーの稼働状況に関する情報を取得します。通信チャネルが正常に確立できる場合、サーバーは稼働しています。

詳細については、KServe のドキュメントを確認してください。

サーバーレディー API

サーバーの準備状況に関する情報を取得します。初期構成がロードされると、サーバーの準備が整います。サーバーは一度だけ準備完了状態になり、最初の読み込みフェーズの結果に関係なく、残りの存続期間中はその状態を維持します。一部のモデルが正常にロードされていなくても、ロード手順が完了するとサーバーは準備完了になります。

詳細については、KServe のドキュメントを確認してください。

サーバーメタデータ API

サーバー自体の情報を取得します。

詳細については、KServe のドキュメントを確認してください。

モデルレディー API

特定のモデルの準備状況に関する情報を取得します。モデルが推論を実行できるようになると、モデルの準備が整います。

詳細については、KServe のドキュメントを確認してください。

モデルメタデータ API

特定のモデルの情報を取得します。

詳細については、KServe のドキュメントを確認してください。

推論 API

要求されたモデル、DAG、または MediaPipe グラフを使用して推論を実行します。

詳細については、KServe のドキュメントを確認してください。

注: 推論は、ModelInferRequestInferTensorContents および raw_input_contents のいずれかにテンソルバッファーを配置することをサポートしています。BF16 データタイプはサポートされておらず、InferTensorContents での FP16 もサポートされていません。画像ファイルまたは文字列を送信する場合は、BYTES データタイプを使用し、データを InferTensorContentsbytes_contents または raw_input_contents に入れる必要があります。

また、BYTES データタイプを使用すると、4 (demultiplexing の場合は 5) の形状次元を持つモデルまたはパイプラインに、OpenCV を使用して OVMS によって前処理され、OpenVINO に適した形式に変換されるバイナリーエンコードされたイメージを送信することができます。詳細については、OpenVINO モデルサーバーでのバイナリーデータの処理方法を確認してください。

ストリーミング推論 API (拡張)

MediaPipe グラフを使用してストリーミング推論を実行します。

詳細については、ドキュメントを確認してください。

関連情報