AWS SageMaker异步推理端点日志访问与推理会话进度查询
AWS SageMaker异步推理相关问题解答
查看推理脚本的stdout输出
- 可以通过CloudWatch Logs获取
print()命令的输出:- 异步推理端点的容器日志默认会上传到CloudWatch,对应的日志组路径为
/aws/sagemaker/Endpoints/<你的端点名称> - 脚本里用
print()输出的内容会被捕获到容器的stdout日志流中,直接在CloudWatch控制台找到对应日志流即可查看 - 若需要更规范的日志管理,推荐在脚本中使用Python的
logging模块,配置日志输出到stdout,同样会被CloudWatch收集
- 异步推理端点的容器日志默认会上传到CloudWatch,对应的日志组路径为
获取推理会话的当前进度
- 基础状态查询:
- 提交异步推理请求后会得到任务ARN,调用SageMaker的
DescribeAsyncInferenceJobAPI(或使用AWS CLI命令aws sagemaker describe-async-inference-job --async-inference-job-name <任务名称>),可以获取任务的整体状态,比如InProgress、Completed、Failed等
- 提交异步推理请求后会得到任务ARN,调用SageMaker的
- 细粒度进度追踪:
- 自定义进度记录:在推理脚本中,每处理完一定量的数据后,将进度信息(如已处理条数、进度百分比)写入到S3的指定文件(比如JSON格式),后续通过读取该文件获取实时进度
- 自定义CloudWatch指标:在脚本中调用CloudWatch的PutMetricData API,发送自定义的进度指标,之后可以在CloudWatch控制台查看进度的变化曲线
- 部分批量推理场景下,也可以通过
describe_transform_jobAPI查询已完成的输入记录数,以此判断进度
内容的提问来源于stack exchange,提问作者Daniele
相关产品推荐
相关产品推荐

