本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Amazon Bedrock 中创建模型评估任务
您可以使用 AWS Management Console AWS CLI、或支持的创建模型评估作业 AWS SDK。您可以创建自动模型评估作业,生成评估指标。您还可以创建基于人工的模型评估作业,利用人工团队对评估进行评分并提供他们的意见。
以下示例向您展示了如何使用适用于 SDK Python 的 Amazon Bedrock 控制台创建基于人工的自动模型评估作业。 AWS CLI
使用 Amazon Bedrock 控制台查看模型评估作业结果
模型评估作业完成后,结果将存储在您指定的 Amazon S3 存储桶中。如果您以任何方式修改结果所在的位置,模型评估报告卡将不再显示在控制台中。
自动模型评估作业
所有自动模型评估任务都需要您创建IAM服务角色。要详细了解设置模型评估作业的IAM要求,请参阅模型评估作业的服务角色要求。
以下示例向您展示了如何创建自动模型评估作业。在中API,您还可以通过在modelIdentifier
字段中指定推理配置文件来将推理配置文件包含ARN在作业中。
以人为本的模型评估工作
以下示例说明如何创建使用人工工作的模型评估作业。在中API,您还可以通过在modelIdentifier
字段中指定推理配置文件来将推理配置文件包含ARN在作业中。
控制台
创建使用人工的模型评估作业
-
打开 Amazon Bedrock 主机:主页 https://console.aws.amazon.com/bedrock/
-
在导航窗格中,选择模型评估。
-
在 “构建评估卡” 中,在 “人类:带上自己的队伍” 下,选择 “创建基于人类的评估”。
-
在指定作业详细信息页面上,提供以下信息:
-
评估名称 — 为模型评估作业指定一个可描述该作业的名称。此名称将显示在模型评估作业列表中。此名称在您的 AWS 区域的账户中必须是唯一的。
-
描述(可选)— 提供可选描述。
-
-
然后选择下一步。
-
在设置评估页面上,提供以下信息:
-
模型 – 最多可以选择两个要在模型评估作业中使用的模型。
要了解有关 Amazon Bedrock 中可用模型的更多信息,请参阅 访问 Amazon Bedrock 基础模型。
-
(可选)要更改所选模型的推理配置,请选择更新。
更改推理配置会更改所选模型生成的响应。要了解有关可用推理参数的更多信息,请参阅 基础模型的推理请求参数和响应字段。
-
任务类型 – 选择您希望模型在模型评估作业期间尝试执行的任务类型。模型的所有说明都必须包含在提示中。任务类型不能控制模型的响应。
-
评估指标 — 推荐的指标列表会根据您选择的任务而变化。您必须为推荐的每个指标都选择一种评级方法。最多可以为每个模型评估作业设置 10 个评估指标。
-
(可选)选择添加指标以添加指标。您必须定义指标、描述和评级方法。
-
在 “数据集” 卡片中,您必须提供以下信息。
-
选择提示数据集-指定提示数据集文件的 S3 URI 或选择 B rowse S3 以查看可用的 S3 存储桶。自定义提示数据集中最多可以有 1000 个提示。
-
评估结果目的地-您必须指定要保存模型评估任务结果URI的目录的 S3,或者选择 B rowse S3 以查看可用的 S3 存储桶。
-
-
(可选)AWS KMS 密钥-提供您要用于加密模型评估任务的客户托管密钥。ARN
-
在 Amazon Bedrock IAM 角色——权限卡中,你必须执行以下操作。要了解有关模型评估所需权限的更多信息,请参阅 在 Amazon Bedrock 中进行模型评估所需的权限和IAM服务角色。
-
要使用现有的 Amazon Bedrock 服务角色,请选择使用现有角色。否则,请使用创建新角色来指定新IAM服务角色的详细信息。
-
在服务角色名称中,指定您的IAM服务角色的名称。
-
准备就绪后,选择创建角色以创建新的IAM服务角色。
-
-
-
然后选择下一步。
-
在权限卡中,指定以下内容:要了解有关模型评估所需权限的更多信息,请参阅 在 Amazon Bedrock 中进行模型评估所需的权限和IAM服务角色。
-
人工工作流程IAM角色-指定具有所需权限的 SageMaker服务角色。
-
在工作团队卡中,指定以下内容:
工作人员通知要求
将新的工作人员添加到模型评估作业中时,他们会自动收到一封邀请他们参与模型评估作业的电子邮件。当您将现有工作人员添加到模型评估作业时,必须通知他们并向他们提供模型评估作业的工作人员门户URL。现有工作人员不会收到自动电子邮件通知,告知他们已被添加到新的模型评估作业中。
-
使用选择团队下拉列表,指定创建新的工作团队或现有工作团队的名称。
-
(可选)每个提示的工作人员人数 – 更新评估每个提示的工作人员人数。您所选人数的工作人员审核完每个提示的响应之后,该提示及其响应将从工作团队负责的工作中删除。最终结果报告将包含每位工作人员的所有评级。
-
(可选)现有工作人员电子邮件-选择此选项可复制包含工作人员门户的电子邮件模板URL。
-
(可选)新工作人员电子邮件 – 选择此选项可查看新员工自动收到的电子邮件。
重要
众所周知,大型语言模型偶尔会出错,生成令人反感或不适的内容。在此评估期间,工作人员可能会看到令人反感或不适的材料。在他们开始评估工作之前,请务必采取适当的措施,为其提供培训并发送通知。他们可以拒绝和放弃任务,也可以在使用人工评估工具进行评估期间稍事休息。
-
-
然后选择下一步。
-
在提供说明页面上,使用文本编辑器提供完成任务的说明。可以预览工作团队用来评估响应的评估 UI,包括指标、评级方法和您提供的说明。预览结果取决于您为该作业创建的配置。
-
然后选择下一步。
-
在审核并创建页面上,可以查看您在之前步骤中选择的选项摘要。
-
要启动模型评估作业,请选择创建。
注意
作业成功启动后,状态将变为进行中。作业完成后,状态将变为已完成。当模型评估任务仍在进行中时,您可以选择在工作团队评估所有模型的响应之前停止该作业。为此,请在模型评估登录页面上选择停止评估。这会将模型评估任务的状态更改为 “正在停止”。成功停止模型评估作业后,您可以删除模型评估作业。
API和 AWS CLI
在 Amazon Bedrock 控制台之外创建基于人工的模型评估任务时,需要创建亚马逊 SageMaker 流程定义。ARN
流程定义ARN是定义模型评估作业工作流程的地方。流程定义用于定义工作人员界面和您要分配给任务的工作团队,并连接到 Amazon Bedrock。
对于使用 Amazon Bedrock API 操作开始的模型评估任务,您必须ARN使用 AWS CLI 或支持的 AWS SDK创建流程定义。要详细了解流程定义的工作原理以及如何以编程方式创建它们,请参阅《SageMaker 开发者指南》中的创建人工审阅工作流程 (API)。
在中,CreateFlowDefinition
必须指定AWS/Bedrock/Evaluation
为的输入AwsManagedHumanLoopRequestSource
。Amazon Bedrock 服务角色还必须有权访问流程定义的输出存储桶。
以下是一个使用 AWS CLI的示例请求。在请求中,HumanTaskUiArn
为 SageMaker 所有者ARN。在中ARN,您只能修改 AWS 区域。
aws sagemaker create-flow-definition --cli-input-json ' { "FlowDefinitionName": "
human-evaluation-task01
", "HumanLoopRequestSource": { "AwsManagedHumanLoopRequestSource": "AWS/Bedrock/Evaluation
" }, "HumanLoopConfig": { "WorkteamArn": "arn:aws:sagemaker:AWS 区域
:111122223333:workteam/private-crowd/my-workteam
", ## The Task UI ARN is provided by the service team, you can only modify the AWS Region. "HumanTaskUiArn":"arn:aws:sagemaker:AWS Region:394669845002:human-task-ui/Evaluation" "TaskTitle": "Human review tasks", "TaskDescription": "Provide a real good answer", "TaskCount": 1, "TaskAvailabilityLifetimeInSeconds": 864000, "TaskTimeLimitInSeconds": 3600, "TaskKeywords": [ "foo" ] }, "OutputConfig": { "S3OutputPath": "s3://your-output-bucket
" }, "RoleArn": "arn:aws:iam::111122223333
:role/SageMakerCustomerRoleArn" }'
创建流程定义后ARN,使用以下示例使用 AWS CLI 或支持的 AWS SDK创建基于人类的模型评估作业。