

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 模型評估任務的服務角色要求
<a name="model-evaluation-security-service-roles"></a>

若要建立模型評估任務，您必須指定服務角色。服務角色是服務擔任的 [IAM 角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)，可代您執行動作。IAM 管理員可以從 IAM 內建立、修改和刪除服務角色。如需詳細資訊，請參閱《*IAM 使用者指南*》中的[建立角色以委派許可給 AWS 服務](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html)。

所需的 IAM 動作和資源取決於您建立的模型評估任務類型。請參閱以下各節，以進一步了解所需的 Amazon Bedrock、Amazon SageMaker AI 和 Amazon S3 IAM 動作、服務主體和資源。您可以選擇性地選擇使用 AWS Key Management Service 加密資料。

**Topics**
+ [自動模型評估任務的服務角色要求](automatic-service-roles.md)
+ [人工模型評估任務的服務角色要求](model-eval-service-roles.md)
+ [建立使用判斷模型的模型評估任務所需的服務角色許可](judge-service-roles.md)
+ [知識庫評估任務的服務角色需求](rag-eval-service-roles.md)

# 自動模型評估任務的服務角色要求
<a name="automatic-service-roles"></a>

若要建立自動模型評估任務，您必須指定服務角色。您附加的政策授予 Amazon Bedrock 存取您帳戶中的資源的權限，並允許 Amazon Bedrock 代表您調用選取的模型。

您還必須使用 `bedrock.amazonaws.com` 將 Amazon Bedrock 定義為服務主體的信任政策。以下每個政策範例都會顯示根據自動模型評估任務中調用的每個服務所需的確切 IAM 動作。

若要建立自訂服務角色，請參閱《IAM 使用者指南》**中的[建立使用自訂信任政策的角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html)。

**必要的 Amazon S3 IAM 動作**  
下列政策範例授與儲存模型評估結果之 S3 儲存貯體的存取權，以及 (選用) 存取您已指定的任何自訂提示資料集。

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

****  

```
{
"Version":"2012-10-17",		 	 	 
"Statement": [
    {
        "Sid": "AllowAccessToCustomDatasets",
        "Effect": "Allow",
        "Action": [
            "s3:GetObject",
            "s3:ListBucket"
        ],
        "Resource": [
            "arn:aws:s3:::my_customdataset1_bucket",
            "arn:aws:s3:::my_customdataset1_bucket/myfolder",
            "arn:aws:s3:::my_customdataset2_bucket",
            "arn:aws:s3:::my_customdataset2_bucket/myfolder"
        ]
    },
    {
        "Sid": "AllowAccessToOutputBucket",
        "Effect": "Allow",
        "Action": [
            "s3:GetObject",
            "s3:ListBucket",
            "s3:PutObject",
            "s3:GetBucketLocation",
            "s3:AbortMultipartUpload",
            "s3:ListBucketMultipartUploads"
        ],
        "Resource": [
            "arn:aws:s3:::my_output_bucket",
            "arn:aws:s3:::my_output_bucket/myfolder"
        ]
    }
]
}
```

------

**所需的 Amazon Bedrock IAM 動作**  
您還需要建立一個能讓 Amazon Bedrock 調用您計劃在自動模型評估任務中指定的模型的政策。若要進一步了解如何管理 Amazon Bedrock 模型的存取權，請參閱 [存取 Amazon Bedrock 基礎模型](model-access.md)。在政策的 `"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 Bedrock 為服務主體的信任政策。這允許由 Amazon Bedrock 擔任此角色。萬用字元 (`*`) 模型評估任務 ARN 是必要的，以便 Amazon Bedrock 可以在您的帳戶中建立模型評估任務AWS。

------
#### [ 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/*"
        }
    }
}]
}
```

------

# 人工模型評估任務的服務角色要求
<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 金鑰。

**Amazon SageMaker AI 服務角色的 IAM 政策要求摘要**
+ 您必須連接將 SageMaker AI 定義為服務主體的信任政策。
+ 您必須允許 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"
}
]
}
```

------

# 建立使用判斷模型的模型評估任務所需的服務角色許可
<a name="judge-service-roles"></a>

若要建立使用 LLM 做為判斷的模型評估任務，您必須指定服務角色。您附加的政策授予 Amazon Bedrock 存取您帳戶中的資源的權限，並允許 Amazon Bedrock 代表您調用選取的模型。

使用 `bedrock.amazonaws.com` 將 Amazon Bedrock 定義為服務主體的信任政策。以下每個政策範例都會顯示根據模型評估任務中調用的每個服務所需的確切 IAM 動作。

若要建立如下所述的自訂服務角色，請參閱《IAM 使用者指南》**中的[建立使用自訂信任政策的角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html)。

## 所需的 Amazon Bedrock IAM 動作
<a name="judge-service-roles-br"></a>

您需要建立一個能讓 Amazon Bedrock 調用您計劃在模型評估任務中指定的模型的政策。若要進一步了解如何管理 Amazon Bedrock 模型的存取權，請參閱 [存取 Amazon Bedrock 基礎模型](model-access.md)。在政策的 `"Resource"` 區段中，您必須至少指定一個您也可以存取的模型 ARN。若要使用以客戶自管金鑰 KMS 金鑰加密的模型，您必須將必要的 IAM 動作和資源新增至 IAM 服務角色政策。您也必須將服務角色新增至AWS KMS金鑰政策。

服務角色必須包含至少一個支援評估器模型的存取權。如需目前支援的評估工具模型清單，請參閱 [支援的模型](evaluation-judge.md#evaluation-judge-supported)。

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

****  

```
{
	"Version":"2012-10-17",		 	 	 
	"Statement": [
		{
			"Sid": "BedrockModelInvoke",
			"Effect": "Allow",
			"Action": [
				"bedrock:InvokeModel",
				"bedrock:CreateModelInvocationJob",
				"bedrock:StopModelInvocationJob"
			],
			"Resource": [
				"arn:aws:bedrock:us-east-1::foundation-model/*",
				"arn:aws:bedrock:us-east-1:111122223333:inference-profile/*",
				"arn:aws:bedrock:us-east-1:111122223333:provisioned-model/*",
				"arn:aws:bedrock:us-east-1:111122223333:imported-model/*"
			]
		}
	]
}
```

------

## 必要的 Amazon S3 IAM 動作和資源
<a name="judge-service-roles-s3"></a>

您的服務角色政策需要包含存取要儲存模型評估任務輸出的 Amazon S3 儲存貯體，以及存取您在 `CreateEvaluationJob` 請求中或透過 Amazon Bedrock 主控台指定的提示資料集。

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

****  

```
{
	"Version":"2012-10-17",		 	 	 
	"Statement": [
		{
			"Sid": "FetchAndUpdateOutputBucket",
			"Effect": "Allow",
			"Action": [
				"s3:GetObject",
				"s3:ListBucket",
				"s3:PutObject",
				"s3:GetBucketLocation",
				"s3:AbortMultipartUpload",
				"s3:ListBucketMultipartUploads"
			],
			"Resource": [
				"arn:aws:s3:::my_customdataset1_bucket",
	            "arn:aws:s3:::my_customdataset1_bucket/myfolder",
	            "arn:aws:s3:::my_customdataset2_bucket",
				"arn:aws:s3:::my_customdataset2_bucket/myfolder"
			]
		}
	]
}
```

------

# 知識庫評估任務的服務角色需求
<a name="rag-eval-service-roles"></a>

若要建立知識庫評估任務，您必須指定服務角色。您連接到角色的政策會將您帳戶中資源的存取權授予 Amazon Bedrock，並允許 Amazon Bedrock 執行下列動作：
+ 使用 `RetrieveAndGenerate` API 動作調用您為輸出產生選取的模型，並評估知識庫輸出。
+ 在您的知識庫執行個體上調用 Amazon Bedrock 知識庫 `Retrieve` 和 `RetrieveAndGenerate` API 動作。

若要建立自訂服務角色，請參閱《IAM 使用者指南》**中的[建立使用自訂信任政策的角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html)。

**Amazon S3 存取所需的 IAM 動作**  
以下範例策略會授予滿足以下兩個條件之 S3 儲存貯體的存取權：
+ 您會儲存知識庫評估結果。
+ Amazon Bedrock 會讀取您的輸入資料集。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement":
    [
        {
            "Sid": "AllowAccessToCustomDatasets",
            "Effect": "Allow",
            "Action":
            [
                "s3:GetObject",
                "s3:ListBucket"
            ],
            "Resource":
            [
                "arn:aws:s3:::my_customdataset1_bucket",
                "arn:aws:s3:::my_customdataset1_bucket/myfolder",
                "arn:aws:s3:::my_customdataset2_bucket",
                "arn:aws:s3:::my_customdataset2_bucket/myfolder"
            ]
        },
        {
            "Sid": "AllowAccessToOutputBucket",
            "Effect": "Allow",
            "Action":
            [
                "s3:GetObject",
                "s3:ListBucket",
                "s3:PutObject",
                "s3:GetBucketLocation",
                "s3:AbortMultipartUpload",
                "s3:ListBucketMultipartUploads"
            ],
            "Resource":
            [
                "arn:aws:s3:::my_output_bucket",
                "arn:aws:s3:::my_output_bucket/myfolder"
            ]
        }
    ]
}
```

------

**所需的 Amazon Bedrock IAM 動作**  
您也需要建立一個政策以允許 Amazon Bedrock 執行下列動作：

1. 調用您計劃為了下列用途指定的模型：
   + 使用 `RetrieveAndGenerate` API 動作產生結果。
   + 評估結果。

   對於政策中的 `Resource` 金鑰，您必須指定至少一個您有權存取之模型的 ARN。若要使用以客戶受管 KMS 金鑰加密的模型，您必須將必要的 IAM 動作和資源新增至 IAM 服務角色政策。您也必須將服務角色新增至 AWS KMS 金鑰政策。

1. 呼叫 `Retrieve` 和 `RetrieveAndGenerate` API 動作。請注意，在控制台中自動建立角色時，我們都會授予對 `Retrieve` 和 `RetrieveAndGenerate` API 動作的許可，無論您選擇要為該任務評估哪個動作。如此一來，我們能為該角色提供更多的彈性和可重複使用性。不過，為了提高安全性，自動建立的角色會繫結至單一知識庫執行個體。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowSpecificModels",
            "Effect": "Allow",
            "Action": [
                "bedrock:InvokeModel",
                "bedrock:InvokeModelWithResponseStream",
                "bedrock:CreateModelInvocationJob",
                "bedrock:StopModelInvocationJob",
                "bedrock:GetProvisionedModelThroughput",
                "bedrock:GetInferenceProfile",
                "bedrock:GetImportedModel"
            ],
            "Resource": [
                "arn:aws:bedrock:us-east-1::foundation-model/*",
                "arn:aws:bedrock:us-east-1:123456789012:inference-profile/*",
                "arn:aws:bedrock:us-east-1:123456789012:provisioned-model/*",
                "arn:aws:bedrock:us-east-1:123456789012:imported-model/*",
                "arn:aws:bedrock:us-east-1:123456789012:application-inference-profile/*"
            ]
        },
        {
            "Sid": "AllowKnowledgeBaseAPis",
            "Effect": "Allow",
            "Action": [
                "bedrock:Retrieve",
                "bedrock:RetrieveAndGenerate"
            ],
            "Resource": [
                "arn:aws:bedrock:us-east-1:123456789012:knowledge-base/knowledge-base-id"
            ]
        }
    ]
}
```

------

**服務主體要求**  
您還必須指定將定義 Amazon Bedrock 為服務主體的信任政策。這允許由 Amazon Bedrock 擔任此角色。萬用字元 (`*`) 模型評估任務 ARN 是必要的，以便 Amazon Bedrock 可以在您的帳戶中建立模型評估任務 AWS 。

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

****  

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

------