

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# ソリューションを更新して自動トレーニング設定を変更する
<a name="updating-solution"></a>

ソリューションを作成したら、その自動トレーニング設定とイベント設定を変更できます。
+ 自動トレーニングをオンまたはオフにしたり、トレーニング頻度を変更したりできます。
  + 自動トレーニングを有効にすると、ソリューションの更新が完了してから 1 時間以内に最初の自動トレーニングが開始されます。1 時間以内にソリューションバージョンを手動で作成した場合、ソリューションは最初の自動トレーニングをスキップします。
  + ソリューションのトレーニング頻度を変更すると、トレーニングスケジュールがリセットされ、新しいソリューションバージョンが 1 時間以内にトレーニングを開始します。ソリューションバージョンの作成は新しい頻度で継続されます。1 日目はソリューションの更新日です。
+ ソリューションイベント設定を更新できます。ソリューションに既にイベント設定が指定されている場合、新しいイベント設定は元の設定を置き換えます。イベント設定のソリューション最適化の詳細については、「[イベント設定によるソリューションの最適化](optimizing-solution-events-config.md)」を参照してください。

Amazon Personalize コンソール、AWS Command Line Interface または AWS SDK を使用して、ソリューションを更新できます。ソリューションの更新には数分かかる場合があります。更新中は、ソリューションのバージョンを作成できますが、ソリューションを削除することはできません。ソリューションは、更新が完了するまで以前の設定を使用します。自動トレーニングの詳細については、「[自動トレーニングの設定](solution-config-auto-training.md)」を参照してください。

**Topics**
+ [ソリューションの更新 (コンソール)](#update-solution-console)
+ [ソリューションの更新 (AWS CLI)](#update-solution-cli)
+ [ソリューションの更新 (AWS SDK)](#update-solution-sdk)

## ソリューションの更新 (コンソール)
<a name="update-solution-console"></a>

 コンソールでソリューションを更新するには、ソリューションに移動し、更新を選択し、使用する新しい設定を指定します。

**ソリューションを設定するには**

1. [https://console.aws.amazon.com/personalize/home](https://console.aws.amazon.com/personalize/home) で Amazon Personalize コンソールを開き、アカウントにサインインします。

1. [**データセットグループ**] ページで、データセットグループを選択します。

1. ナビゲーションペインで、**[カスタムリソース]** を選択し、**[ソリューションとレシピ]** を選択します。

1. ソリューションを選択し、右上の **[更新]** を選択します。

1. **[自動トレーニング]** で、ソリューションが自動トレーニングを使用するかどうかを変更します。自動トレーニングが有効になっている場合は、`Automatic training frequency` を変更できます。デフォルトのトレーニング頻度は 7 日ごとです。

1. **[ソリューションの更新]** を選択します。ソリューションの更新のステータスは、ソリューションの詳細ページで確認できます。

## ソリューションの更新 (AWS CLI)
<a name="update-solution-cli"></a>

AWS Command Line Interface を使用してソリューションを更新するには、`update-solution` コマンドを使用します。このコマンドは、[UpdateSolution](API_UpdateSolution.md) API オペレーションを使用します。次のコードは、5 日間のトレーニング頻度で自動トレーニングを使用するようにソリューションを更新する方法を示しています。自動トレーニングを無効にするには、`--no-perform-auto-training` を指定して `solution-update-config` を省略します。

デフォルトのトレーニング頻度は 7 日ごとです。式は `rate(value unit)` 形式である必要があります。値には、1～30 の数値を指定します。単位には、`day` または `days` を指定します。

```
aws personalize update-solution \
--solution-arn {{solution ARN}} \
--perform-auto-training \
--solution-update-config "{\"autoTrainingConfig\": {\"schedulingExpression\": \"rate(5 days)\"}}"
```

更新のステータスを取得するには、`describe-solution` コマンド ([DescribeSolution](API_DescribeSolution.md) API オペレーションを使用する) を使用して、`latestSolutionUpdate` で更新ステータスを見つけます。

## ソリューションの更新 (AWS SDK)
<a name="update-solution-sdk"></a>

AWS SDK を使用してソリューションを更新するには、[UpdateSolution](API_UpdateSolution.md) API オペレーションを使用します。次のコードは、SDK for Python (Boto3) を使用して 5 日間のトレーニング頻度で自動トレーニングを使用するようにソリューションを更新する方法を示しています。コードは [DescribeSolution](API_DescribeSolution.md) API オペレーションを使用して更新のステータスを取得します。

デフォルトのトレーニング頻度は 7 日ごとです。式は `rate(value unit)` 形式である必要があります。値には、1～30 の数値を指定します。単位には、`day` または `days` を指定します。

```
import boto3

personalize = boto3.client('personalize')

update_solution_response = personalize.update_solution(
    solutionArn='{{SOLUTION ARN}}',
    performAutoTraining=True,
    solutionUpdateConfig={
        "autoTrainingConfig": {
            "schedulingExpression": "rate(5 days)"
        }
    }
)
describe_solution_response = personalize.describe_solution(
    solutionArn='{{SOLUTION ARN}}'
)
update_status = describe_solution_response["solution"]["latestSolutionUpdate"]["status"]
print(f"Update status: {update_status}")
```