

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

# 提交模型导入作业
<a name="model-customization-import-model-job"></a>

您可以通过在亚马逊 Bedrock 控制台中提交模型导入任务、使用 API、使用AWS CLI或使用AWS软件开发工具包将模型导入到 Amazon Bedrock 中。在作业中，您可以指定模型文件来源的 Amazon S3 URI。或者，如果您已在 Amazon A SageMaker I 中创建模型，则可以指定 SageMaker AI 模型。在模型导入过程中，导入作业会自动检测模型的架构。模型导入作业可能需要几分钟才能完成。在导入过程中，Amazon Bedrock 会验证正在导入的模型是否使用了兼容的模型架构。

下面的过程演示了如何通过导入已自定义的模型来创建自定义模型。选择与您选择的方法对应的选项卡，然后按照以下步骤操作：

------
#### [ Console ]

要在控制台中提交模型导入作业，请完成以下步骤。

1. 如果您要从 Amazon S3 导入模型文件，请将模型转换为 Hugging Face 格式。

   1. 如果您的模型是 Mistral AI 模型，请使用 [convert\$1mistral\$1weights\$1to\$1hf.py](https://github.com/huggingface/transformers/blob/main/src/transformers/models/mistral/convert_mistral_weights_to_hf.py)。

   1. 如果您的模型是 Llama 模型，请参阅 [convert\$1llama\$1weights\$1to\$1hf.py](https://github.com/huggingface/transformers/blob/main/src/transformers/models/llama/convert_llama_weights_to_hf.py)。

   1. 将模型文件上传到您 AWS 账户中的 Amazon S3 存储桶。有关更多信息，请参阅[将对象上传到存储桶](https://docs.aws.amazon.com/AmazonS3/latest/userguide/uploading-an-object-bucket.html)。

   1. 如果您使用跨账户 Amazon S3 或 KMS 密钥导入您的自定义模型，请让 Amazon Bedrock 访问您的AWS 账户亚马逊 S3 或 KMS 密钥。有关更多信息，请参阅 [用于自定义模型导入作业的 Amazon S3 存储桶跨账户访问](cross-account-access-cmi.md)。

1. 在 Amazon Bedrock 控制台中，从左侧导航窗格中选择**基础模型**下的**导入的模型**。

1. 选择**模型**选项卡。

1. 选择 **Import model (导入模型)**。

1. 在**已导入**选项卡中，选择**导入模型**以打开**导入模型**页面。

1. 在**模型详细信息**部分中，执行以下操作：

   1. 在**模型名称**中，输入模型的名称。

   1. （可选）要将[标签](tagging.md)与模型关联，请展开**标签**部分，然后选择**添加新标签**。

1. 在**导入作业名称**部分中，执行以下操作：

   1. 在**作业名称**中，输入模型导入作业的名称。

   1. （可选）要将[标签](tagging.md)与自定义模型关联，请展开**标签**部分，然后选择**添加新标签**。

1. 在**模型导入设置**中，选择要使用的导入选项。
   + 选择 **Amazon S3 存储桶**或**亚马逊 SageMaker AI 模型**来指定导入来源。
   + 如果要从 Amazon S3 存储桶导入模型文件，请在 **S3 位置**中输入 Amazon S3 位置。或者，您可以选择**浏览 S3** 以选择文件位置。
   + 如果您要从 Amazon A SageMaker I 导入模型，请选择**亚马逊 SageMaker AI 模型**，然后选择要在 SageMaker AI 模型中导入的 **SageMaker AI 模型**。

1. 输入 **VPC 设置**（可选），选择 VPC 配置以访问位于您的 VPC 中的 Amazon S3 数据来源。您可以在 Amazon VPC 中创建和管理 VPC、子网和安全组。有关 Amazon VPC 的更多信息，请参阅 [（可选）使用 VPC 保护自定义模型导入作业](vpc-custom-model-import.md)。

1. 选择**加密**，默认情况下使用您拥有和管理的AWS密钥对您的数据进行加密。如果选择**自定义加密设置（高级）**，则也可以选择其他密钥。

1. 在**服务访问权限**部分，选择以下选项之一：
   + **创建和使用新的服务角色** — 输入服务角色的名称。
   + **使用现有服务角色** — 从下拉列表中选择一个服务角色。要查看现有服务角色所需的权限，请选择**查看权限详细信息**。

     有关设置具有相应权限的服务角色的更多信息，请参阅 [为导入预训练模型创建服务角色](model-import-iam-role.md)。
**注意**  
如果您使用的是跨账户 Amazon S3 或 KMS 密钥，请编辑服务角色策略并将指定的账户 ID 替换为`aws:ResourceAccount`存储桶拥有者的AWS账户 ID。

1. 选择**导入**。

1. 在**自定义模型**页面上，选择**已导入**。

1. 在**作业**部分中，检查导入作业的状态。您选择的模型名称用于标识模型导入作业。如果模型的**状态**值为**完成**，则作业已完成。

1. 通过执行以下操作获取模型的模型 ID。

   1. 在**导入的模型**页面上，选择**模型**选项卡。

   1. 从 **ARN** 列复制要使用的模型的 ARN。

1. 使用模型进行推理调用。有关更多信息，请参阅 [使用以下命令提交单个提示 InvokeModel](inference-invoke.md)。您可以将模型与按需吞吐量配合使用。

   您也可以在 Amazon Bedrock 文本[平台](playgrounds.md)中使用您的模型。

------
#### [ API ]

**请求**

使用 [Amazon Bedrock 控制平面终端节点](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#br-cp)发送请求 [CreateModelImportJob](https://docs.aws.amazon.com//bedrock/latest/APIReference/API_CreateModelImportJob.html)（查看请求和响应格式以及字段详情链接），以提交自定义模型导入任务。您至少必须提供以下字段。
+ `roleArn` – 有权导入模型的服务角色的 ARN。如果您使用控制台，Amazon Bedrock 会自动创建具有相应权限的角色，或者，您也可以按照[为导入预训练模型创建服务角色](model-import-iam-role.md)中的以下步骤创建自定义角色。
**注意**  
如果您添加 `vpcConfig` 字段，请确保该角色有适当的权限来访问 VPC。有关示例，请参阅 [将 VPC 权限附加到自定义模型导入角色。](vpc-custom-model-import.md#vpc-data-access-role-cmi)。
+ `importedModelName` – 要为新导入的模型使用的名称。
+ `jobName` – 提供给导入作业的名称。
+ `modelDataSource` – 导入模型的数据来源。

为防止请求多次完成，请添加一个 `clientRequestToken`。

您可以添加以下可选字段进行额外的配置。
+ `jobTags` and/or `importedModelTags`— 将[标签](tagging.md)与导入任务或导入的模型相关联。
+ `importedModelKmsKeyId` – 添加[自定义模型导入加密](https://docs.aws.amazon.com//bedrock/latest/userguide/encryption-import-model.html) KMS 密钥以加密您导入的模型。
+ `vpcConfig` – 添加 vpc 配置以[（可选）使用 VPC 保护自定义模型导入作业](vpc-custom-model-import.md)。

**响应**

响应会返回您用于在其他操作中标识导入作业的导入作业 `jobArn`。

导入作业可能需要一段时间才能完成。您可以通过调用[GetModelImportJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_GetModelImportJob.html)操作并检查响应中的`Status`字段来检查当前状态。您可以使用列出当前的导入任务[ListModelImportJobs](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_ListModelImportJobs.html)。

要获取您已导入的模型列表，请致电[ListImportedModels](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_ListImportedModels.html)。要获取有关特定导入模型的信息，请调用[GetImportedModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_GetImportedModel.html)。

要删除导入的模型，请调用[DeleteImportedModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_DeleteImportedModel.html)。

------