本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
更新解決方案以變更其自動訓練組態
建立解決方案之後,您可以變更其自動訓練組態。您可以開啟或關閉自動訓練,也可以變更訓練頻率。
-
如果您開啟自動訓練,第一個自動訓練會在解決方案更新完成後一小時內開始。如果您在小時內手動建立解決方案版本,解決方案會略過第一個自動訓練。
-
如果您修改解決方案的訓練頻率,訓練排程會重設,且新的解決方案版本會在一小時內開始訓練。解決方案版本建立會以新的頻率繼續,其中第 1 天是您更新解決方案的日期。
您可以使用 Amazon Personalize 主控台 AWS Command Line Interface或 AWS SDKs更新解決方案。解決方案更新可能需要幾分鐘的時間。更新進行時,您可以為解決方案建立解決方案版本,但無法刪除解決方案。在更新完成之前,解決方案會使用先前的組態。如需自動訓練的詳細資訊,請參閱 設定自動訓練。
更新解決方案 (主控台)
若要在 主控台中更新解決方案,請導覽至解決方案、選擇更新,並指定要使用的新組態。
設定解決方案
-
在 https://console.aws.amazon.com/personalize/home
:// 開啟 Amazon Personalize 主控台,並登入您的帳戶。 -
在資料集群組頁面上,選擇您的資料集群組。
-
在導覽窗格中,選擇自訂資源,然後選擇解決方案和配方。
-
選擇您的解決方案,然後選擇右上角的更新。
-
在自動訓練中,修改解決方案是否使用自動訓練。如果自動訓練已開啟,您可以變更
Automatic training frequency
。預設訓練頻率為每 7 天一次。 -
選擇更新解決方案。您可以在解決方案的詳細資訊頁面上找到解決方案更新的狀態。
更新解決方案 (AWS CLI)
若要使用 更新解決方案 AWS Command Line Interface,請使用 update-solution
命令。此命令使用 UpdateSolution 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 操作),然後在 中尋找更新狀態latestSolutionUpdate
。
更新解決方案AWS SDKs)
若要使用 AWS SDKs 更新解決方案,請使用 UpdateSolution API 操作。下列程式碼說明如何使用適用於 Python 的 SDK (Boto3) 來更新解決方案,以使用訓練頻率為 5 天的自動訓練。程式碼會取得 DescribeSolution 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}")