1.8. InferenceService カスタムリソースの作成
InferenceService カスタムリソース (CR) を作成して、AI モデルを提供するためのデプロイメントを作成する方法を KServe に指示します。KServe は、InferenceService CR で指定された modelFormat 値に基づいて ServingRuntime を使用します。
前提条件
-
ServingRuntimesCR を設定している。 - マシンへの root ユーザーアクセス権がある。
-
OpenShift CLI (
oc) がインストールされている。
手順
InferenceServiceCR を作成します。openvino_irモデル形式のInferenceServiceオブジェクトの例apiVersion: serving.kserve.io/v1beta1 kind: InferenceService metadata: name: ovms-resnet50 spec: predictor: model: protocolVersion: v2 modelFormat: name: openvino_ir storageUri: "oci://localhost/ovms-resnet50:test" args: - --layout=NHWC:NCHW1 - 1
- OpenVINO Model Server (OVMS) が、モデルが元々エクスポートされたレイアウトとは異なるレイアウトで、要求入力データを受け入れるようにするための追加の引数。追加の引数は OVMS コンテナーに渡されます。
InferenceServiceの例をファイルに保存してから、次のコマンドを実行してクラスター上に作成します。$ oc create -n <ai_demo> -f ./FILE.yaml1 - 1
- <ai_demo> は、namespace 名に置き換えます。
出力例
inferenceservice.serving.kserve.io/ovms-resnet50 created注記デプロイメントと Pod は、指定された namespace に表示されることが予想されます。
ServingRuntimeCR で指定されたイメージのサイズと ModelCar OCI イメージのサイズによっては、Pod の準備が完了するまでに数分かかる場合があります。
次のステップ
- モデルサービングランタイムの準備ができていることを確認します。
1.8.1. Open Telemetry を使用してモデルサーバーメトリクスをエクスポートする リンクのコピーリンクがクリップボードにコピーされました!
MicroShift 用の microshift-observability RPM をインストールした場合は、Open Telemetry を使用してモデルサーバーメトリクスをエクスポートできます。
または、/metrics エンドポイントでリクエストすることで、モデルサーバーの Prometheus 形式のメトリクスを取得することもできます。詳細は、「モデルサーバーのメトリクスを取得する」を参照してください。
前提条件
-
ServingRuntimesCR を設定している。 - マシンへの root ユーザーアクセス権がある。
-
OpenShift CLI (
oc) がインストールされている。 -
microshift-observabilityRPM をインストールしている。 - MicroShift Open Telemetry 設定には Prometheus Receiver が含まれている。詳細は、Prometheus Receiver を参照してください。
手順
InferenceServiceカスタムリソースに次の Open Telemetry アノテーションを追加します。Open Telemetry を使用した
InferenceServiceオブジェクトの例apiVersion: serving.kserve.io/v1beta1 kind: InferenceService metadata: name: ovms-resnet50 #... annotations: prometheus.io/scrape: "true" #...
1.8.2. その他の InferenceService CR オプション リンクのコピーリンクがクリップボードにコピーされました!
推論サービスの YAML ファイルには、さまざまなオプションを含めることができます。たとえば、最初にデプロイメントに渡され、次に Pod に渡される resources セクションを含めることで、モデルサーバーがデバイスプラグインを通じてハードウェアにアクセスできるようになります。
InferenceService CR 内の NVIDIA デバイス resources スニペットの例
apiVersion: serving.kserve.io/v1beta1
kind: InferenceService
metadata:
name: is-name
spec:
predictor:
model:
resources:
limits:
nvidia.com/gpu: 1
requests:
nvidia.com/gpu: 1
#...
完全な InferenceService 仕様については、Control Plane API Reference (KServe ドキュメント) を参照してください。