跳至内容

如何解决在 Amazon Bedrock 上微调模型时出现的错误?

2 分钟阅读
0

我想对我在 Amazon Bedrock 上微调模型时收到的错误进行故障排除。

解决方案

**注意:**如果您在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保您使用的是最新版本的 AWS CLI

访问和可用性问题

先决条件:请求访问基础模型

Amazon Bedrock 支持在特定 AWS 区域和基础模型中进行微调。确保通过微调功能对您的模型使用受支持的 AWS 区域。如果您所在的区域不支持您的模型,则 Amazon Bedrock 模型选择器会持续加载。如果您无法创建微调作业,则可能会收到以下错误消息:

“Unable to Create a fine-tuning job ("The provided model identifier is invalid" error)”

要解决您的访问错误,请确认您的首选 AWS 区域支持模型和微调功能

如果您看到空白屏幕或无法选择模型,则说明您的模型在该区域不可用,或者您的 AWS 账户无权访问该模型。要解决此问题,请选择跨不同网络和浏览器的模型。选择模型时,捕获 HAR 文件。然后,检查您的 VPN、防火墙或虚拟桌面基础架构 (VDI) 是否没有限制。如果您仍然无法访问 Amazon Bedrock 控制台,请联系您的网络管理员。

IAM 权限问题

要访问 Amazon Simple Storage Service (Amazon S3) 存储桶以自定义模型,您必须为您的 AWS Identity and Access Management (IAM) 角色附加正确的权限。如果您未正确配置 IAM 角色的权限,则会收到以下错误消息:

“Encountered an unexpected error when processing the request, please try again","AccessDenied".”

要解决此错误,请授予 Amazon Bedrock 的 IAM 权限以进行模型定制。

跨区域访问错误

微调作业只能访问作业运行所在区域的 Amazon S3 数据。如果您尝试访问存储在与微调作业不同区域的 S3 存储桶中的训练数据,则会收到以下错误消息:

“Could not validate GetObject permissions to access S3 bucket”

要解决此错误,请确认您的 S3 存储桶和 Amazon Bedrock 微调作业都在同一个区域。然后,将您的训练数据移至与 Amazon Bedrock 位于同一区域的 S3 存储桶

数据格式和验证错误

您的数据集必须满足训练和验证模型要求。如果您提交的训练数据集的 JSON 结构或格式不正确,则可能会收到以下错误之一:

“The provided S3 URI is invalid", ";validation error detected: VValue 's3://..' failed to satisfy constraint:" Member must satisfy regular expression pattern..”

“Invalid training input data configuration.Check the input data S3 Uris(Uri should be a file, not a directory) and retry request”

要解决问题,请确保使用文件统一资源标识符 (URI) 并确认不使用目录 URI。

**URL 示例:**s3://bucket-name/datasets/train/train.jsonl

**目录 URL 示例:**s3://bucket-name/datasets/train/

然后,检查路径是否指向确切的文件位置。如果路径未指向确切的文件位置,请验证 S3 存储桶中的完整路径结构。更新您的文件 URI,使其与存储训练数据的确切位置和文件名相匹配。

数据集结构验证

不同的文本模型有不同的数据要求和预期的 JSON 架构。如果您提交的训练数据集的 JSON 结构或格式不正确,则可能会收到以下错误:

“JSON structure is not supported: JSON schema error: JSON does not match JSON schema at line.”

要解决此错误,请准备用于微调文本转文本模型的数据

图像微调问题

Amazon Bedrock 必须有权访问指定尺寸的图像文件。如果您上传的图像不符合正在微调的模型的特定尺寸要求,则可能会收到以下错误:

“Image Dimensions are Invalid.Check that the images conform to accepted dimensions.”

检查图像尺寸是否符合特定模型的要求。然后,验证您是否为特定模型准备了图像数据集

**注意:**某些模型仅支持文本微调,不支持图像微调。

验证错误

您的文件必须与您的模型兼容。如果您提交的训练数据不符合模型的格式要求或包含结构问题,则可能会收到以下错误:

“Validation error: failed during preprocessing”

要解决此错误,请验证您的数据格式

  • 确保您的 JSONL 文件每行有一个有效的 JSON 对象。
  • 检查您在每个示例中是否包含必填字段。
  • 确认您的示例未超过模型的最大令牌配额。
  • 确认您的文件使用 UTF-8 编码,无特殊字符问题。

监控作业状态

您可以使用 Amazon Bedrock 控制台或 AWS CLI 来监控作业状态。Amazon Bedrock 不提供实时进度监控。

要使用控制台,请参阅监控模型自定义作业

要使用 AWS CLI,请运行以下 get-model-customization-job 命令:

aws bedrock get-model-customization-job -job-identifier "jobARN"

**注意:**将 jobARN 替换为您的作业的 Amazon 资源名称 (ARN)。

然后,您可以估算完成每个作业所需的时间,以此作为模型实际完成时间的基准。估算时,请考虑以下因素:

  • 微调持续时间取决于数据大小、epoch 数和批次大小。
  • 早期的错误会在最初的几分钟内出现。
  • 对于较大的数据集,微调可能需要几个小时才能完成。
  • 训练时间持续 3-4 小时,最多 24 小时,具体取决于配置和流量。

如果作业失败,请参阅模型自定义问题故障排除

如果作业处于 Training(训练)状态的时间超过 24 小时,请联系 AWS Support。

对经过微调的模型进行推理

对于自定义经过微调的模型,您必须为 Amazon Nova 以外的模型购买预置吞吐量,才能创建单独的预置模型 ARN,用于代替原始模型 ARN。

如果您尝试在 API 调用中直接使用原始模型 ARN,则可能会收到以下错误:

“An error occurred (ValidationException) when calling the xxxx operation: 1 validation error detected: Value 'arn:aws:bedrock:xxxxx' at 'modelId' failed to satisfy constraint: Member must satisfy regular expression pattern: ...”

要解决此错误,请完成以下步骤:

  1. 为您经过微调的模型创建预置吞吐量
  2. 记下响应中的预置模型 ARN。
  3. 当您通过 API 调用经过微调的模型时,请使用以下特定于自定义模型的模型 ARN 格式:
    arn:aws:bedrock:[区域]:[账户]:provisioned-model/[名称]
    **注意:**将 region 替换为您的区域,将 account 替换为您的账户信息,将 name 替换为您的模型名称。
  4. 在使用 GetProvisionedModelThroughput API 调用之前,请验证预置模型是否处于 InService 状态。

相关信息

为自定义模型设置推理

针对使用案例自定义模型以提高其性能

AWS 官方已更新 3 个月前