Amazon CloudWatch Events 在 Amazon Agumented AI 中使用 - Amazon SageMaker

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon CloudWatch Events 在 Amazon Agumented AI 中使用

当人工审核循环状态更改为CompletedFailed或时,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 事件规则以监视所有状态变化,请使用以下命令并替换占位符文本。例如,替换"A2IHumanLoopStatusChanges"为唯一 CloudWatch 的事件规则名称,替换为"arn:aws:iam::111122223333:role/MyRoleForThisRule"附有 events.amazonaws.com 信任策略的 IAM 角色的亚马逊资源编号 (ARN)。将区域替换为要在其中创建规则的 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 事件” 规则添加目标
  1. 打开控制 CloudWatch 台:https://console.aws.amazon.com/cloudwatch/home

  2. 在导航窗格中,选择规则

  3. 选择要将目标添加到的规则。

  4. 选择操作,然后选择编辑

  5. 在 “目标” 下,选择 “添加目标”,然后选择检测到人为循环状态更改事件时要执行的 AWS 服务。

  6. 配置您的目标。有关说明,请参阅该服务的AWS 文档中有关配置目标的主题。

  7. 选择配置详细信息

  8. 对于名称,输入一个名称并(可选)在描述中提供有关规则用途的详细信息。

  9. 请确保选中状态旁边的复选框,以便您的规则以已启用状态列出。

  10. 选择更新规则

使用人工审核输出

收到人工审核结果后,您可以分析结果并将其与机器学习预测进行比较。存储在 Amazon S3 存储桶中的 JSON 包含机器学习预测和人工审核结果。

更多信息

亚马逊 SageMaker 发送给亚马逊的事件 EventBridge