

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

# 基于人工的模型评测作业的服务角色要求
<a name="model-eval-service-roles"></a>

要创建使用评估人员的模型评估作业，必须指定两个服务角色。

以下列表总结了必须在 Amazon Bedrock 控制台中指定的每个必要服务角色的 IAM 策略要求。

**Amazon Bedrock 服务角色的 IAM 策略要求摘要**
+ 必须添加将 Amazon Bedrock 定义为服务主体的信任策略。
+ 必须允许 Amazon Bedrock 代表您调用所选模型。
+ 必须允许 Amazon Bedrock 访问保存提示数据集的 S3 存储桶和将要保存结果的 S3 存储桶。
+ 必须允许 Amazon Bedrock 在您的账户中创建所需的人工循环资源。
+ （推荐）使用 `Condition` *块*来指定可以访问的账户。
+ （可选）如果您已加密提示数据集存储桶或将要保存结果的 Amazon S3 存储桶，则必须允许 Amazon Bedrock 解密您的 KMS 密钥。

**亚马逊 A SageMaker I 服务角色的 IAM 政策要求摘要**
+ 您必须附上将 A SageMaker I 定义为服务主体的信任策略。
+ 您必须允许 SageMaker AI 访问保存提示数据集的 S3 存储桶和要保存结果的 S3 存储桶。
+ （可选）如果您已加密提示数据集存储桶或想要获得结果的位置，则必须允许 SageMaker AI 使用您的客户托管密钥。

要创建自定义服务角色，请参阅**《IAM 用户指南》中的[使用自定义信任策略创建角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html)。

**必要的 Amazon S3 IAM 操作**  
以下策略示例将授予对保存模型评估结果的 S3 存储桶的访问权限，以及您指定的自定义提示数据集的访问权限。您需要将此策略附加到 SageMaker AI 服务角色和 Amazon Bedrock 服务角色。

------
#### [ JSON ]

****  

```
{
"Version":"2012-10-17",		 	 	 
"Statement": [
    {
        "Sid": "AllowAccessToCustomDatasets",
        "Effect": "Allow",
        "Action": [
            "s3:GetObject",
            "s3:ListBucket"
        ],
        "Resource": [
            "arn:aws:s3:::custom-prompt-dataset"
        ]
    },
    {
        "Sid": "AllowAccessToOutputBucket",
        "Effect": "Allow",
        "Action": [
            "s3:GetObject",
            "s3:ListBucket",
            "s3:PutObject",
            "s3:GetBucketLocation",
            "s3:AbortMultipartUpload",
            "s3:ListBucketMultipartUploads"
        ],
        "Resource": [
            "arn:aws:s3:::model_evaluation_job_output"
        ]
    }
]
}
```

------

**必要的 Amazon Bedrock IAM 操作**  
要允许 Amazon Bedrock 调用您计划在自动模型评测作业中指定的模型，请将以下策略附加到 Amazon Bedrock 服务角色。在策略的 `"Resource"` 部分，您必须至少指定一个您也可以访问的模型的 ARN。要使用通过客户自主管理型 KMS 密钥加密的模型，您必须向 IAM 服务角色添加所需的 IAM 操作和资源。您还必须添加任何必需的 AWS KMS 关键策略元素。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowAccessToBedrockResources",
            "Effect": "Allow",
            "Action": [
                "bedrock:InvokeModel",
                "bedrock:InvokeModelWithResponseStream",
                "bedrock:CreateModelInvocationJob",
                "bedrock:StopModelInvocationJob",
                "bedrock:GetProvisionedModelThroughput",
                "bedrock:GetInferenceProfile", 
                "bedrock:ListInferenceProfiles",
                "bedrock:GetImportedModel",
                "bedrock:GetPromptRouter",
                "sagemaker:InvokeEndpoint"
            ],
            "Resource": [
                "arn:aws:bedrock:*::foundation-model/*",
                "arn:aws:bedrock:*:111122223333:inference-profile/*",
                "arn:aws:bedrock:*:111122223333:provisioned-model/*",
                "arn:aws:bedrock:*:111122223333:imported-model/*",
                "arn:aws:bedrock:*:111122223333:application-inference-profile/*",
                "arn:aws:bedrock:*:111122223333:default-prompt-router/*",
                "arn:aws:sagemaker:*:111122223333:endpoint/*",
                "arn:aws:bedrock:*:111122223333:marketplace/model-endpoint/all-access"
            ]
        }
    ]
}
```

------

**必要的 Amazon Augmented AI IAM 操作**  
您还必须创建一个策略，以便允许 Amazon Bedrock 创建与基于人工的模型评测作业相关的资源。由于 Amazon Bedrock 创建了启动模型评估作业所需的资源，因此您必须使用 `"Resource": "*"`。必须将此策略附加到 Amazon Bedrock 服务角色中。

------
#### [ JSON ]

****  

```
{
"Version":"2012-10-17",		 	 	 
"Statement": [
    {
        "Sid": "ManageHumanLoops",
        "Effect": "Allow",
        "Action": [
            "sagemaker:StartHumanLoop",
            "sagemaker:DescribeFlowDefinition",
            "sagemaker:DescribeHumanLoop",
            "sagemaker:StopHumanLoop",
            "sagemaker:DeleteHumanLoop"
        ],
        "Resource": "*"
    }
]
}
```

------

**服务主体要求 (Amazon Bedrock)**  
还必须指定将 Amazon Bedrock 定义为服务主体的信任策略，以允许 Amazon Bedrock 担任该角色。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowBedrockToAssumeRole",
            "Effect": "Allow",
            "Principal": {
                "Service": "bedrock.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "111122223333"
                },
                "ArnEquals": {
                    "aws:SourceArn": "arn:aws:bedrock:us-east-1:111122223333:evaluation-job/*"
                }
            }
        }
    ]
}
```

------

**服务主体要求 (SageMaker AI)**  
还必须指定将 Amazon Bedrock 定义为服务主体的信任策略，这允许 SageMaker AI 扮演这个角色。

------
#### [ JSON ]

****  

```
{
"Version":"2012-10-17",		 	 	 
"Statement": [
{
  "Sid": "AllowSageMakerToAssumeRole",
  "Effect": "Allow",
  "Principal": {
    "Service": "sagemaker.amazonaws.com"
  },
  "Action": "sts:AssumeRole"
}
]
}
```

------