在 Amazon Bedrock 中提交模型蒸馏作业 - Amazon Bedrock

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

在 Amazon Bedrock 中提交模型蒸馏作业

您可以通过 Amazon Bedrock 控制台或使用亚马逊 Bedrock 控制平面终CreateModelCustomizationJob端节点发送请求来执行模型提炼。

先决条件

  • 创建 AWS Identity and Access Management (IAM) 服务角色以访问您想要存储模型自定义训练和验证数据的 Amazon S3 存储桶。您可以使用 AWS 管理控制台自动创建此角色,也可以手动创建此角色。有关手动选项的更多信息,请参阅为模型自定义创建 IAM 服务角色

  • (可选)加密输入和输出数据、自定义作业或向自定义模型发出的推理请求。有关更多信息,请参阅 自定义模型加密

  • (可选)创建虚拟私有云(VPC)来保护自定义作业。有关更多信息,请参阅 (可选)使用 VPC 保护模型自定义作业

在蒸馏作业完成后,您可以分析自定义过程的结果。有关更多信息,请参阅 分析模型自定义作业的结果。有关为模型设置推理的信息,请参阅为自定义模型设置推理

提交作业

Console
  1. 使用有权使用 Amazon Bedrock 控制台的 IAM 身份登录。AWS 管理控制台然后,在 https://console.aws.amazon.com/bedrock 上打开 Amazon Bedrock 控制台。

  2. 在左侧导航窗格的调整下,选择自定义模型

  3. 选择创建蒸馏作业

  4. 对于蒸馏模型详细信息,执行以下操作:

    1. 蒸馏模型名称中,输入您的蒸馏模型的名称。

    2. (可选)对于模型加密,如果您要提供密钥来加密作业及其相关构件,请选中该复选框。

      有关更多信息,请参阅 自定义模型加密

    3. (可选)对蒸馏模型应用标签

  5. 对于作业配置,执行以下操作:

    1. 作业名称中,输入蒸馏作业的名称。

    2. (可选)对于模型加密,如果您要提供密钥来加密作业及其相关构件,请选中该复选框。

      有关更多信息,请参阅 自定义模型加密

    3. (可选)为作业应用标签

  6. 对于教师式模型 – 学生式模型详细信息,请选择用于创建蒸馏模型的教师式模型和学生式模型。

    有关更多信息,请参阅 选择用于蒸馏的教师式模型和学生式模型

  7. 合成数据生成,请执行以下操作:

    1. 最大响应长度中,指定教师式模型生成的合成响应的最大长度。

    2. 蒸馏输入数据集内,选择以下选项之一:

      • 直接上传到 S3 位置:指定存储用于蒸馏的输入数据集(提示)的 S3 位置。有关更多信息,请参阅 选项 1:为数据准备提供您自己的提示

      • 提供对调用日志的访问权限:指定 S3 位置,该位置存储调用日志以及用于蒸馏的输入数据集(提示)。有关更多信息,请参阅 选项 2:使用调用日志进行数据准备

        • (可选)如果您希望 Amazon Bedrock 仅使用日志中的某些提示进行蒸馏,请在请求元数据筛选条件中指定筛选条件。

        • 根据您希望 Amazon Bedrock 从日志中访问的内容,选择阅读提示读取提示-回复对。请记住,只有当您的教师式模型与日志中的模型匹配时,才会读取回复。

  8. 对于蒸馏输出,请指定用于上传蒸馏作业的指标和报告的 S3 位置。

    有关更多信息,请参阅 分析模型自定义作业的结果

  9. 对于 VPC 设置,请选择 VPC 配置,用于访问包含训练数据的 S3 存储桶。

    有关更多信息,请参阅 (可选)使用 VPC 保护模型自定义作业

  10. 对于服务访问权限,请指定 IAM 角色,用于访问包含训练数据的 S3 存储桶。除非您使用跨区域推理配置文件或 VPC 配置,否则您可以使用自动配置的正确权限在 Amazon Bedrock 控制台中创建角色。也可以使用现有的服务角色。

    对于具有 Amazon VPC 配置或使用跨区域推理配置文件的作业,您必须在 IAM 中创建具有所需权限的新服务角色。

    有关更多信息,请参阅 为模型自定义创建 IAM 服务角色

  11. 选择创建蒸馏作业以启动蒸馏作业。自定义模型后,您可以为模型设置推理。有关更多信息,请参阅 为自定义模型设置推理

API

使用 Amazon Bedrock API 时,您必须至少提供以下字段才能提交模型蒸馏作业。

字段 说明
baseModelIdentifier 学生式模型的模型标识符
customModelName 新蒸馏模型的名称
jobName 模型蒸馏作业的名称
roleArn 向 Amazon Bedrock 授予权限来读取训练和验证文件和写入输出路径的角色
trainingDataConfig 包含训练数据的 Amazon S3 路径
outputDataConfig 包含训练和验证指标的 Amazon S3 路径
distillationConfig 蒸馏作业所需的输入
customModelKmsKeyId 加密自定义模型
clientRequestToken 防止请求多次完成的令牌

以下字段是可选字段:

字段 说明
customizationType 对于蒸馏作业,默认设置为 DISTILLATION
validationDataConfig Amazon S3 路径验证数据列表
jobTags 将标签与作业相关联
customModelTags 将标签与生成的自定义模型相关联
vpcConfig VPC 可保护您的训练数据和蒸馏作业

为防止请求多次完成,请添加一个 clientRequestToken

您可以添加以下可选字段进行额外的配置。

以下是 CreateModelCustomizationJobAPI 的示例片段。此示例使用调用日志中的提示-回复对作为输入数据来源,并指定筛选条件用于选择提示-回复对。

"trainingDataConfig": { "invocationLogsConfig": { "usePromptResponse": true, "invocationLogSource": { "s3Uri": "string" }, "requestMetadataFilters": { "equals": { "priority": "High" } } } }

响应

响应返回模型蒸馏作业中的 jobArn

后续步骤