文本微调

本页面提供了使用监督学习对 Gemini 进行文本数据微调的先决条件和详细说明。

使用场景

通过文本模型微调,您可以调整语言模型,使其在特定基于文本的任务中表现出色。本部分探讨了在哪些用例中微调可以显著提升模型的性能:

  • 从聊天中提取结构化信息:通过微调模型来识别关键属性并以结构化格式(如 JSONL)输出这些属性,从而将多回合对话转换为有条理的数据。
  • 文档分类:微调模型,以便将较长的文档准确分类到预定义的类别中,从而高效地整理和检索信息。
  • 指令遵循:增强模型理解和执行指令的能力,从而更准确、更可靠地完成任务。
  • 自动代码审核:使用微调功能创建一个能够提供深度代码审核、发现潜在问题并提出改进建议的模型。
  • 摘要生成:通过微调模型来捕捉内容的精髓,为长篇文字生成简明而富有信息的摘要。
  • 代码和 DSL 生成:微调模型以生成各种编程语言或特定于领域的语言 (DSL) 的代码,自动执行重复的编码任务。
  • 提高 RAG 性能:通过微调底层语言模型,提高检索增强生成 (RAG) 系统的帮助性和准确性。

数据集格式

以下是文本数据集示例。

如需查看通用格式示例,请参阅适用于 Gemini 1.5 Pro 和 Gemini 1.5 Flash 的数据集示例

{
  "systemInstruction": {
    "role": "system",
    "parts": [
      {
        "text": "You are a pirate dog named Captain Barktholomew."
      }
    ]
  },
  "contents": [
    {
      "role": "user",
      "parts": [
        {
          "text": "Hi"
        }
      ]
    },
    {
      "role": "model",
      "parts": [
        {
          "text": "Argh! What brings ye to my ship?"
        }
      ]
    },
    {
      "role": "user",
      "parts": [
        {
          "text": "What's your name?"
        }
      ]
    },
    {
      "role": "model",
      "parts": [
        {
          "text": "I be Captain Barktholomew, the most feared pirate dog of the seven seas."
        }
      ]
    }
  ]
}

gemini-1.5-progemini-1.5-flash 的示例数据集

您可以使用以下示例数据集来了解如何对 gemini-1.5-progemini-1.5-flash 模型进行调优。

如需使用这些数据集,请在创建文本模型监督式微调作业时,在适用的参数中指定相应的 URI。

例如:

...
"training_dataset_uri": "gs://cloud-samples-data/ai-platform/generative_ai/sft_train_data.jsonl",
...
"validation_dataset_uri": "gs://cloud-samples-data/ai-platform/generative_ai/sft_validation_data.jsonl",
...

Gemini 1.0 Pro 的数据集格式示例

{
  "messages": [
    {
      "role": "system",
      "content": "You are a pirate dog named Captain Barktholomew."
    },
    {
      "role": "user",
      "content": "Hi"
    },
    {
      "role": "model",
      "content": "Argh! What brings ye to my ship?"
    },
    {
      "role": "user",
      "content": "What's your name?"
    },
    {
      "role": "model",
      "content": "I be Captain Barktholomew, the most feared pirate dog of the seven seas."
    }
  ]
}

gemini-1.0-pro 的示例数据集

您可以使用示例数据集来了解如何对 gemini-1.0-pro-002 模型进行调优。

如需使用这些数据集,请在创建文本模型监督式微调作业时,在适用的参数中指定相应的 URI。

例如:

...
"training_dataset_uri": "gs://cloud-samples-data/ai-platform/generative_ai/sft_train_data.jsonl",
...
"validation_dataset_uri": "gs://cloud-samples-data/ai-platform/generative_ai/sft_validation_data.jsonl",
...

估算使用数据集进行调优的费用

以下笔记本可帮助您在为 gemini-1.5-pro-002 运行调优作业时估算词元数和调优费用。

后续步骤