本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
下列程式碼範例示範如何設定許可、建立自訂模型匯入任務、檢視匯入任務和匯入模型的詳細資訊,以及刪除匯入的模型。
-
準備模型檔案以進行匯入
-
如果您要從 Amazon S3 儲存貯體匯入 ,則需要以Hugging Face權重格式提供模型檔案。如需詳細資訊,請參閱匯入來源。
-
為您的模型檔案建立 Amazon S3 儲存貯體 (名稱必須是唯一的)。
-
將模型檔案上傳至 儲存貯體。
-
-
建立政策以存取模型檔案,並將其連接至具有 Amazon Bedrock 信任關係的 IAM 角色。選擇您偏好方法的索引標籤,然後遵循下列步驟:
-
建立 Amazon S3 政策以存取包含模型檔案的 Amazon S3 儲存貯體
-
導覽至位於 https://https://console.aws.amazon.com/iam
的 IAM 主控台,然後從左側導覽窗格中選擇政策。 -
選取建立政策,然後選擇 JSON 以開啟政策編輯器。
-
貼上下列政策,將
${model-file-bucket}
取代為您的儲存貯體名稱,然後選取下一步。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::
${model-file-bucket}
", "arn:aws:s3:::${model-file-bucket}
/*" ] } ] } -
命名政策
S3BucketPolicy
,然後選取建立政策。
-
-
建立 IAM 角色並連接政策。
-
從左側導覽窗格中,選擇角色,然後選取建立角色。
-
選取自訂信任政策,貼上下列政策,然後選取下一步。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
搜尋您建立的
S3BucketPolicy
政策,選取核取方塊,然後選擇下一步。 -
命名角色
MyImportModelRole
,然後選取建立角色
。
-
-
選取語言以查看程式碼範例,以呼叫自訂模型匯入 API 操作。
若要提交自訂模型匯入任務,請在終端機執行命令列中的下列命令,將 ${my-import-model-role-arn}
取代為您設定的模型角色,並將 s3-bucket-path
取代為您模型檔案的 S3 儲存貯體路徑。
aws bedrock create-model-import-job
--job-name MyImportedModelJobName
--imported-model-name MyImportedModelName
--role-arn ${my-import-model-role-arn}
--model-data-source '{"s3DataSource": {"s3Uri": s3-bucket-path
}}
回應會傳回 jobArn
。自訂匯入任務需要一些時間才能完成。您可以使用 jobArn
搭配下列命令來檢查匯入任務的狀態。
下列欄位為選用:
-
若要新增 VPC 組態,請將下列引數新增至上述命令,以指定安全性群組和子網路:
-\\-vpc-config '{securityGroupIds": ["sg-xx"], "subnetIds": ["subnet-yy", "subnet-zz"]}'
-
若要使用 KMS 金鑰加密模型,請將下列引數新增至上述命令,取代該值,以指定要用來加密模型的金鑰。
-\\-customModelKmsKeyId 'arn:aws:kms:
region
:account-id
:key/key-id
' -
若要新增標籤,請將以下引數新增到上述命令中,將鍵和值替換為要連接到工作和/或輸出模型的標籤,並確保用空格分隔鍵/值對:
-\\-tags key=
key1
,value=value1
key=key2
,value=value2
回應會傳回 jobArn
。自訂匯入任務需要一些時間才能完成。您可以使用 jobArn
搭配下列命令來檢查匯入任務的狀態。
aws bedrock get-model-import-job \
--job-identifier "jobArn
"
回應看起來像這樣:
{ "jobArn":
${job-arn}
, "jobName":MyImportedModelJobName
, "importedModelName":MyImportedModelName
, "roleArn":${my-role-arn}
, "modelDataSource": { "s3DataSource": { "s3Uri": "${S3Uri}" } }, "status": "Complete", "creationTime": "2024-08-13T23:38:42.457Z", "lastModifiedTime": "2024-08-13T23:39:25.158Z"
當 status
為 時Complete
。匯入任務已完成。
若要在新匯入的模型上執行推論,您必須提供匯入模型的 ARN 做為 model-id
。取得匯入模型的 ARN。
aws bedrock list-imported-models
回應包含模型名稱和模型 ARN。使用模型 ARN 來叫用匯入的模型。如需詳細資訊,請參閱使用 InvokeModel 提交單一提示。
{ "modelSummaries": [ { "modelArn":
model-arn
, "modelName": "MyImportedModelName", "modelArchitecture":model-architecture
, "instructSupported":Y
, "creationTime": "2024-08-13T19:20:14.058Z" } ] }
若要刪除匯入的模型,請在終端機中使用您要刪除之匯入模型的模型名稱或模型 ARN,在命令列中執行下列命令。
aws bedrock delete-imported-model --model-identifier
MyImportedModelName