为 Gemini 模型准备偏好调优数据

本文档介绍如何为 Gemini 模型定义偏好调优数据集。

关于偏好调优数据集

偏好调优数据集旨在通过“赞”“踩”、成对比较和评分反馈等信号来捕获人类偏好数据。

准备自定义偏好调优数据

在此示例中:

example 由输入和一对 completions 字段组成。

输入包括 contents 和可选的 system_instruction。输入 token 数上限和补全 token 数上限之和必须小于或等于 12.8 万。

contents 字段采用与监督式微调相同的格式。它支持需要以用户轮次结束的多轮文本数据。不支持多模态数据。

completions 字段由一对补全及其得分组成。该配对必须包含一个首选完成项和一个非首选完成项。

completion 是单个模型轮次,表示模型回答。score 字段用于指明是首选还是非首选补全。 唯一可能的值为 0 或 1。0 表示非首选补全,而 1 表示首选补全。

我们只针对每个 examplecompletions 轮次进行训练。

Gemini 的数据集示例

{
  "system_instruction": {
    "parts": [
      {
        "text": "You are a chat bot."
      }
    ]
  },
  "contents": [
    {
      "role": "user",
      "parts": [
        {
          "text": "What is my favorite fruit?"
        }
      ]
    }
  ],
  "completions": [
    {
      "score": 1,
      "completion": {
        "role": "model",
        "parts": [
          {
            "text": "Apple! Apple! Apple!"
          }
        ]
      }
    },
    {
      "score": 0,
      "completion": {
        "role": "model",
        "parts": [
          {
            "text": "Your favorite fruit is apple."
          }
        ]
      }
    }
  ]
}

后续步骤