我在 cloudwatch 中为 Sagemaker 培训作业状态更改创建了一个事件规则,以监控我的培训作业。然后我使用这些事件触发一个 lambda 函数,该函数将电报组中的消息作为机器人发送。这样,每次培训作业更改其状态时,我都会收到一条消息。它可以工作,但是事件存在问题,它们会以相同的有效负载多次触发,因此我收到了大量重复的消息。由于所有有效载荷都是相同的(除了 field LastModifiedTime
),我无法在 lambda 中过滤它们。不幸的是,我没有 AWS 开发人员计划,因此我无法获得 Amazon 的支持。任何的想法?
编辑
没有重复的规则/事件。我还注意到,启用 Sagemaker 分析器(现在默认情况下)会导致相同规则调用的数量激增。除了 之外,它们都具有相同的有效负载,LastModifiedTime
所以我怀疑 AWS 中存在一个错误。一种解决方案可能是在 lambda 上实现某种数据保留,并检查调用是否已被处理,但我不想让应该非常简单的事情复杂化。刚尝试启动一个新的培训工作并得到这个序列(我只报告我解析的字段):
状态:InProgress 辅助状态:启动状态消息:正在启动请求的 ML 实例
状态:进行中次要状态:开始状态消息:开始训练作业
状态:进行中次要状态:开始状态消息:开始训练作业
状态:进行中次要状态:开始状态消息:开始训练作业
状态:InProgress 辅助状态:启动状态消息:准备训练实例
状态:进行中 辅助状态:下载状态消息:正在下载输入数据
状态:进行中次要状态:训练状态消息:正在下载训练图像
状态:进行中次要状态:培训状态消息:培训进行中
状态:进行中次要状态:训练状态消息:训练图像下载完成。培训进行中