2.3. CLI を使用して OCI イメージに保存されたモデルをデプロイする
OCI イメージに保存されているモデルをコマンドラインインターフェイスからデプロイできます。
次の手順では、OpenVINO モデルサーバー上の OCI イメージに保存されている ONNX 形式の MobileNet v2-7 モデルをデプロイする例を使用します。
KServe では、デフォルトでモデルはクラスター外部に公開され、認証によって保護されません。
前提条件
- OCI イメージへのモデルの保存 の説明に従って、モデルを OCI イメージに保存した。
- プライベート OCI リポジトリーに保存されているモデルをデプロイする場合は、イメージプルシークレットを設定した。イメージプルシークレットの作成の詳細は、イメージプルシークレットの使用 を参照してください。
- OpenShift クラスターにログインしている。
手順
モデルをデプロイするためのプロジェクトを作成します。
oc new-project oci-model-example
oc new-project oci-model-exampleCopy to Clipboard Copied! Toggle word wrap Toggle overflow OpenShift AI アプリケーションプロジェクトの
kserve-ovmsテンプレートを使用してServingRuntimeリソースを作成し、新しいプロジェクトで OpenVINO モデルサーバーを設定します。oc process -n redhat-ods-applications -o yaml kserve-ovms | oc apply -f -
oc process -n redhat-ods-applications -o yaml kserve-ovms | oc apply -f -Copy to Clipboard Copied! Toggle word wrap Toggle overflow kserve-ovmsという名前のServingRuntimeが作成されていることを確認します。oc get servingruntimes
oc get servingruntimesCopy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは、次のような出力を返すはずです。
NAME DISABLED MODELTYPE CONTAINERS AGE kserve-ovms openvino_ir kserve-container 1m
NAME DISABLED MODELTYPE CONTAINERS AGE kserve-ovms openvino_ir kserve-container 1mCopy to Clipboard Copied! Toggle word wrap Toggle overflow モデルがプライベート OCI リポジトリーに保存されているか、パブリック OCI リポジトリーに保存されているかに応じて、
InferenceServiceYAML リソースを作成します。パブリック OCI リポジトリーに保存されているモデルの場合は、次の値を含む
InferenceServiceYAML ファイルを作成し、<user_name>、<repository_name>、<tag_name>をお客様の環境固有の値に置き換えます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow プライベート OCI リポジトリーに保存されているモデルの場合は、次の例に示すように、
spec.predictor.imagePullSecretsフィールドにプルシークレットを指定したInferenceServiceYAML ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow InferenceServiceリソースを作成すると、KServe はstorageUriフィールドによって参照される OCI イメージに保存されているモデルをデプロイします。
検証
デプロイメントのステータスを確認します。
oc get inferenceservice
oc get inferenceservice
このコマンドで、デプロイしたモデルの URL やその準備状態などの情報を含む出力が返されるはずです。