为开放式权重模型设置奖励函数 - Amazon Bedrock

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

为开放式权重模型设置奖励函数

奖励函数评估响应质量并为模型训练提供反馈信号。您可以使用自定义 Lambda 函数设置奖励函数。选择与您的任务要求相匹配的方法。

用于奖励评估的自定义 Lambda 函数

您可以使用自定义 Lambda 函数设置奖励函数。在您的 Lambda 函数中,您可以灵活地实现评估逻辑:

  • 目标任务 — 对于代码生成或数学推理等客观任务,请使用可验证的基于规则的评分器,根据已知标准或测试用例检查正确性。

  • 主观任务 — 对于主观任务,例如指导关注或聊天机器人互动,请在 Lambda 函数中调用 Amazon Bedrock 基础模型作为评委,根据您的标准评估响应质量。

根据您的任务要求,您的 Lambda 函数可以实现复杂的逻辑 APIs、外部集成、执行多步骤计算或组合多个评估标准。

注意

使用自定义 Lambda 函数时:

  • 将复杂评估的 Lambda 超时时间从默认 3 秒增加到最长 15 分钟。

  • Lambda 执行角色需要权限才能调用 Lambda 函数,如中所述。奖励函数的 Lambda 权限

Lambda 函数实现细节

在实现自定义 Lambda 奖励函数时,您的函数必须接受并返回以下格式的数据。

Input structure
[{ "id": "123", "messages": [ { "role": "user", "content": "Do you have a dedicated security team?" }, { "role": "assistant", "content": "As an AI developed by Amazon, I don not have a dedicated security team..." } ], "metadata": { "reference_answer": { "compliant": "No", "explanation": "As an AI developed by Company, I do not have a traditional security team..." }, "my_key": "sample-001" } }]
Output structure
[{ "id": "123", "aggregate_reward_score": 0.85, "metrics_list": [ { "name": "accuracy", "value": 0.9, "type": "Reward" }, { "name": "policy_compliance", "value": 0.8, "type": "Metric" } ] }]

设计指南

  • 对回复进行排名 — 给最佳答案打出明显更高的分数

  • 使用一致的检查 — 评估任务完成情况、格式遵守情况、安全性和合理的长度

  • 保持稳定的缩放比例 — 保持分数标准化且不可被利用