

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

# 问题排查
<a name="batch-transform-errors"></a>

如果您在 Amazon A SageMaker I Batch Transform 中遇到错误，请参阅以下疑难解答提示。

## 最大超时错误数
<a name="batch-transform-errors-max-timeout"></a>

如果您在运行批量转换作业时遇到最大超时错误，请尝试以下方法：
+ 从单条记录 `[BatchStrategy](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html#sagemaker-CreateTransformJob-request-BatchStrategy)` 开始，批处理大小采用默认值 (6 MB) 或您在 `[MaxPayloadInMB](https://docs.aws.amazon.com//sagemaker/latest/APIReference/API_CreateTransformJob.html#sagemaker-CreateTransformJob-request-MaxPayloadInMB)` 参数中指定的更小值，并使用小样本数据集。优化最大超时参数 `[InvocationsTimeoutInSeconds](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelClientConfig.html#sagemaker-Type-ModelClientConfig-InvocationsTimeoutInSeconds)`（最大值为 1 小时），直到收到成功的调用响应。
+ 在收到成功的调用响应后，将 `MaxPayloadInMB`（最大值为 100 MB）和 `InvocationsTimeoutInSeconds` 参数一起增加，以找到可支持所需模型超时的最大批处理大小。您可以在此步骤中使用单条记录或多条记录的 `BatchStrategy`。
**注意**  
超过 `MaxPayloadInMB` 限制会导致出错。如果大数据集无法拆分、`SplitType` 参数设置为 none 或数据集内单个记录超过限制，则可能会出现此情况。
+ （可选）调整 `[MaxConcurrentTransforms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTransformJob.html#sagemaker-CreateTransformJob-request-MaxConcurrentTransforms)` 参数，该参数指定可发送到批量转换作业中的每个实例的最大并行请求数。但是，`MaxConcurrentTransforms * MaxPayloadInMB` 的值不得超过 100 MB。

## 输出不完整
<a name="batch-transform-errors-incomplete"></a>

SageMaker AI 使用 Amazon S3 [分段上传 API](https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html) 将批量转换任务的结果上传到 Amazon S3。如果出现错误，则系统会从 Amazon S3 中删除上传的结果。在某些情况下（如发生网络中断时），未完成的分段上传可能会保留在 Amazon S3 中。如果您有多个输入文件，但是 SageMaker AI Batch Transform 无法处理其中一些文件，也可能导致上传不完整。无法处理的输入文件在 Amazon S3 中将不会有相应的输出文件。

为避免产生存储费用，我们建议您将 [S3 存储桶策略](https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config)添加到 S3 存储桶生命周期规则中。此策略会删除可能存储在 S3 存储桶中的未完成分段上传。有关更多信息，请参阅[对象生命周期管理](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html)。

## 作业显示为 `failed`
<a name="batch-transform-errors-failed"></a>

如果批处理转换作业由于数据集问题而无法处理输入文件， SageMaker AI 会将该作业标记为`failed`。如果输入文件包含错误记录，则转换作业不会为该输入文件创建输出文件，因为这样做的话，将无法与输入文件中的转换后数据保持相同的顺序。当数据集具有多个输入文件时，即使转换作业无法处理其中一个输入文件，它也会继续处理这些文件。处理后的文件仍会生成可用的结果。

如果您使用的是自己的算法，则当算法在输入文件中找到错误记录时，您可以使用占位符文本，如 `ERROR`。例如，如果数据集中的最后一条记录是错误的，算法会在输出文件中放入占位符文本来替代该记录。