本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon CloudWatch Events 在 Amazon Agumented AI 中使用
当人工审核循环状态更改为Completed
、Failed
或时,Amazon Agumented AI 使用亚马逊 CloudWatch 事件提醒您Stopped
。此事件至少保证传送一次,这意味着在人工循环完成时创建的所有事件都将成功传递到 CloudWatch 事件 (Amazon EventBridge)。当审阅循环变为其中一种状态时,Augmented AI 会向 CloudWatch 事件发送一个类似于以下内容的事件。
{ "version":"0", "id":"12345678-1111-2222-3333-12345EXAMPLE", "detail-type":"SageMaker A2I HumanLoop Status Change", "source":"aws.sagemaker", "account":"1111111111111", "time":"2019-11-14T17:49:25Z", "region":"us-east-1", "resources":["arn:aws:sagemaker:us-east-1:111111111111:human-loop/humanloop-nov-14-1"], "detail":{ "creationTime":"2019-11-14T17:37:36.740Z", "failureCode":null, "failureReason":null, "flowDefinitionArn":"arn:aws:sagemaker:us-east-1:111111111111:flow-definition/flowdef-nov-12", "humanLoopArn":"arn:aws:sagemaker:us-east-1:111111111111:human-loop/humanloop-nov-14-1", "humanLoopName":"humanloop-nov-14-1", "humanLoopOutput":{ "outputS3Uri":"s3://customer-output-bucket-specified-in-flow-definition/flowdef-nov-12/2019/11/14/17/37/36/humanloop-nov-14-1/output.json" }, "humanLoopStatus":"Completed" } }
JSON 输出中的详细信息包括以下内容:
creationTime
-
Augmented AI 创建人工循环时的时间戳。
failureCode
-
表示特定失败类型的失败代码。
failureReason
-
人工循环失败的原因。仅当人工审核循环状态为
failed
时,才会返回失败原因。 flowDefinitionArn
-
流定义的 Amazon 资源名称 (ARN) 或人工审核工作流。
humanLoopArn
-
人工循环的 Amazon 资源名称 (ARN)。
humanLoopName
-
人工循环的名称。
humanLoopOutput
-
包含人工循环输出相关信息的对象。
outputS3Uri
-
Augmented AI 存储人工循环输出的 Amazon S3 对象的位置。
humanLoopStatus
-
人工循环的状态。
将事件从你的人类循环发送到 CloudWatch 事件
要配置 CloudWatch 事件规则以获取您的 Amazon A2I 人工循环的状态更新或事件,请使用 AWS Command Line Interface (AWS CLI) put-rule
命令。在使用 put-rule
命令时,请指定以下内容来接收人工循环状态:
-
\"source\":[\"aws.sagemaker\"]
-
\"detail-type\":[\"SageMaker A2I HumanLoop Status Change\"]
要配置 CloudWatch 事件规则以监视所有状态变化,请使用以下命令并替换占位符文本。例如,替换
为唯一 CloudWatch 的事件规则名称,替换为"A2IHumanLoopStatusChanges"
附有 events.amazonaws.com 信任策略的 IAM 角色的亚马逊资源编号 (ARN)。将"arn:aws:iam::111122223333:role/MyRoleForThisRule"
区域
替换为要在其中创建规则的 AWS 区域。
aws events put-rule --name
"A2IHumanLoopStatusChanges"
--event-pattern "{\"source\":[\"aws.sagemaker\"],\"detail-type\":[\"SageMaker A2I HumanLoop Status Change\"]}" --role-arn"arn:aws:iam::111122223333:role/MyRoleForThisRule"
--region"region"
要了解有关put-rule
请求的更多信息,请参阅 Amazon Events 用户指南中的 CloudWatch CloudWatch 事件模式。
设置目标以处理事件
要处理事件,您需要设置目标。例如,如果您想在人为回路状态更改时收到一封电子邮件,请使用亚马逊 CloudWatch 用户指南中设置亚马逊 SNS 通知中的步骤来设置 A mazon SNS 主题并订阅您的电子邮件。创建主题后,可以使用该主题创建目标。
向 “ CloudWatch 事件” 规则添加目标
-
打开控制 CloudWatch 台:https://console.aws.amazon.com/cloudwatch/home
-
在导航窗格中,选择规则。
-
选择要将目标添加到的规则。
-
选择操作,然后选择编辑。
-
在 “目标” 下,选择 “添加目标”,然后选择检测到人为循环状态更改事件时要执行的 AWS 服务。
-
配置您的目标。有关说明,请参阅该服务的AWS 文档中有关配置目标的主题。
-
选择配置详细信息。
-
对于名称,输入一个名称并(可选)在描述中提供有关规则用途的详细信息。
-
请确保选中状态旁边的复选框,以便您的规则以已启用状态列出。
-
选择更新规则。
使用人工审核输出
收到人工审核结果后,您可以分析结果并将其与机器学习预测进行比较。存储在 Amazon S3 存储桶中的 JSON 包含机器学习预测和人工审核结果。
更多信息
亚马逊 SageMaker 发送给亚马逊的事件 EventBridge