Amazon Lookout for Vision モデルの停止 - Amazon Lookout for Vision

Amazon Lookout for Vision モデルの停止

実行中のモデルを停止するには、StopModel オペレーションを呼び出し、以下を渡します:

  • プロジェクト — 停止するモデルを含むプロジェクトの名前。

  • ModelVersion — 停止するモデルのバージョン。

Amazon Lookout for Vision コンソールには、モデルの停止に使用できるサンプルコードが用意されています。

注記

モデルの稼働時間に応じて課金されます。

モデルの停止 (コンソール)

次の手順のステップを実行し、コンソールを使用してモデルを停止します。

モデルを停止するには (コンソール)
  1. まだ行っていない場合は、AWS CLI とAWS SDK をインストールして構成します。詳細については、「ステップ 4: AWS CLI と AWS SDK をセットアップする」を参照してください。

  2. https://console.aws.amazon.com/lookoutvision/ で Amazon Lookout for Vision コンソールを開きます。

  3. [開始する] を選択します。

  4. 左側のナビゲーションペインで、[プロジェクト] を選択します。

  5. [プロジェクト] リソースページで、停止したいモデルを含むプロジェクトを選択します。

  6. [モデル] セクションで、停止するモデルを選択します。

  7. モデルの詳細ページで [モデルを使用] を選択し、[API をクラウドに統合] を選択します。

  8. [AWS CLI コマンド] で、stop-model を呼び出す AWS CLI コマンドをコピーします。

  9. コマンドプロンプトで、前のステップでコピーした stop-model コマンドを入力します。lookoutvision プロファイルを使用して認証情報を取得する場合は、--profile lookoutvision-access パラメータを追加します。

  10. コンソールで、左のナビゲーションページから[モデル] を選択します。

  11. モデルの現在のステータスは、[ステータス] 欄をチェックします。[ステータス] 欄の値が [トレーニング完了] の場合、このモデルは停止しています。

Amazon Lookout for Vision モデル (SDK) を停止する

StopModel オペレーションを呼び出してモデルを停止します。

モデルの停止までに時間がかかる場合があります。現在のステータスを確認するには、DescribeModel を使用します。

モデルを停止するには (SDK)
  1. まだの場合は、AWS CLI と AWS SDK をインストールして構成します。詳細については、「ステップ 4: AWS CLI と AWS SDK をセットアップする」を参照してください。

  2. 次のサンプルコードを使用して、実行中のモデルを停止します。

    CLI

    以下の値を変更します。

    • project-name に停止するモデルが含まれているプロジェクトの名前を入力します。

    • model-version に停止するモデルのバージョンを入力します。

    aws lookoutvision stop-model --project-name "project name"\ --model-version model version \ --profile lookoutvision-access
    Python

    このコードは、AWS ドキュメンテーション SDK サンプル GitHub リポジトリから引用されたものです。詳しい事例はこちらです。

    @staticmethod def stop_model(lookoutvision_client, project_name, model_version): """ Stops a running Lookout for Vision Model. :param lookoutvision_client: A Boto3 Lookout for Vision client. :param project_name: The name of the project that contains the version of the model that you want to stop hosting. :param model_version: The version of the model that you want to stop hosting. """ try: logger.info("Stopping model version %s for %s", model_version, project_name) response = lookoutvision_client.stop_model( ProjectName=project_name, ModelVersion=model_version ) logger.info("Stopping hosting...") status = response["Status"] finished = False # Wait until stopped or failed. while finished is False: model_description = lookoutvision_client.describe_model( ProjectName=project_name, ModelVersion=model_version ) status = model_description["ModelDescription"]["Status"] if status == "STOPPING_HOSTING": logger.info("Host stopping in progress...") time.sleep(10) continue if status == "TRAINED": logger.info("Model is no longer hosted.") finished = True continue logger.info("Failed to stop model: %s ", status) finished = True if status != "TRAINED": logger.error("Error stopping model: %s", status) raise Exception(f"Error stopping model: {status}") except ClientError: logger.exception("Couldn't stop hosting model.") raise
    Java V2

    このコードは、AWS ドキュメンテーション SDK サンプル GitHub リポジトリから引用されたものです。詳しい事例はこちらです。

    /** * Stops the hosting an Amazon Lookout for Vision model. Returns when model has * stopped or if hosting fails. * * @param lfvClient An Amazon Lookout for Vision client. * @param projectName The name of the project that contains the model that you * want to stop hosting. * @modelVersion The version of the model that you want to stop hosting. * @return ModelDescription The description of the model, which includes the * model hosting status. */ public static ModelDescription stopModel(LookoutVisionClient lfvClient, String projectName, String modelVersion) throws LookoutVisionException, InterruptedException { logger.log(Level.INFO, "Stopping Model version {0} for project {1}.", new Object[] { modelVersion, projectName }); StopModelRequest stopModelRequest = StopModelRequest.builder() .projectName(projectName) .modelVersion(modelVersion) .build(); // Stop hosting the model. lfvClient.stopModel(stopModelRequest); DescribeModelRequest describeModelRequest = DescribeModelRequest.builder() .projectName(projectName) .modelVersion(modelVersion) .build(); ModelDescription modelDescription = null; boolean finished = false; // Wait until model is stopped or failure occurs. do { modelDescription = lfvClient.describeModel(describeModelRequest).modelDescription(); switch (modelDescription.status()) { case TRAINED: logger.log(Level.INFO, "Model version {0} for project {1} has stopped.", new Object[] { modelVersion, projectName }); finished = true; break; case STOPPING_HOSTING: logger.log(Level.INFO, "Model version {0} for project {1} is stopping.", new Object[] { modelVersion, projectName }); TimeUnit.SECONDS.sleep(60); break; default: logger.log(Level.SEVERE, "Unexpected error when stopping model version {0} for project {1}: {2}.", new Object[] { projectName, modelVersion, modelDescription.status() }); finished = true; break; } } while (!finished); logger.log(Level.INFO, "Finished stopping model version {0} for project {1} status: {2}", new Object[] { modelVersion, projectName, modelDescription.statusMessage() }); return modelDescription; }