SageMaker AsyncPredictor的inference_id参数作用及示例咨询
SageMaker AsyncPredictor.predict_async 中 inference_id 参数的作用与示例
核心作用
- 请求唯一标识:当端点启用数据捕获功能时,该ID会被嵌入到捕获的请求/响应数据中,用于将云端捕获的推理数据与业务系统内的请求记录做关联。
- 问题溯源:若某条推理结果异常,可通过该ID快速定位到对应的原始请求输入、模型响应,以及端点运行时的上下文日志,简化排查流程。
- 批量请求追踪:发起批量异步推理时,为每个请求分配唯一的
inference_id,能精准对应每个请求的处理结果与原始业务数据。
代码示例
from sagemaker.predictor_async import AsyncPredictor from sagemaker.serializers import JSONSerializer from sagemaker.deserializers import JSONDeserializer # 初始化异步预测器 async_predictor = AsyncPredictor( endpoint_name="your-async-inference-endpoint", serializer=JSONSerializer(), deserializer=JSONDeserializer() ) # 生成业务关联的inference_id(比如结合订单ID) custom_inference_id = "user-789-order-456-pred-001" # 发起带inference_id的异步推理请求 predict_response = async_predictor.predict_async( data={"feature_1": 0.8, "feature_2": 1.2}, inference_id=custom_inference_id )
数据捕获中的体现
启用端点数据捕获后,S3存储的捕获文件(多为JSON格式)会包含inferenceId字段,值即为传入的inference_id。例如捕获的请求数据片段:
{
"inferenceId": "user-789-order-456-pred-001",
"requestBody": {"feature_1": 0.8, "feature_2": 1.2},
...
}
你可以通过这个字段将云端推理数据与业务系统中的用户订单、请求记录等做关联,实现端到端的数据流追踪。
内容的提问来源于stack exchange,提问作者Abdeelrahman Hassanein
相关产品推荐
相关产品推荐

