Überwachte Feinabstimmungsdaten für Gemini-Modelle vorbereiten

In diesem Dokument wird beschrieben, wie Sie ein überwachtes Feinabstimmungs-Dataset für ein Gemini-Modell definieren.

Überwachte Feinabstimmungs-Datasets

Ein überwachtes Feinabstimmungs-Dataset wird verwendet, um ein vortrainiertes Modell für eine bestimmte Aufgabe oder Domain zu optimieren. Die Eingabedaten sollten ähnlich denen aussehen, die Sie für das Modell in der Praxis erwarten. Die Ausgabelabels sollten die richtigen Antworten oder Ergebnisse für jede Eingabe darstellen.

Trainings-Dataset

Zum Abstimmen eines Modells stellen Sie ein Trainings-Dataset bereit. Ein Trainings-Dataset muss mindestens 16 Beispiele enthalten. Die besten Ergebnisse erzielen Sie, wenn Sie mindestens 100 bis 500 Beispiele angeben. Je mehr Beispiele Sie in Ihrem Dataset angeben, desto besser sind die Ergebnisse. Die Anzahl der Beispiele in einem Trainings-Dataset ist unbegrenzt.

Validierungs-Dataset

Geben Sie nach Möglichkeit auch ein Validierungs-Dataset an. Mit einem Validierungs-Dataset können Sie die Effektivität eines Abstimmungsjobs messen. Validierungs-Datasets unterstützen bis zu 256 Beispiele.

Beispiel-Datasets finden Sie auf dieser Seite unter Beispiel-Datasets.

Dataset-Format

Ihr Dataset zur Abstimmung eines Modells muss im JSON Lines-Format (JSONL) vorliegen, wobei jede Zeile ein einzelnes Abstimmungsbeispiel enthält. Bevor Sie Ihr Modell abstimmen, müssen Sie Ihr Dataset in einen Cloud Storage-Bucket hochladen.

Jedes Unterhaltungsbeispiel in einem Abstimmungs-Dataset besteht aus einem erforderlichen messages-Feld.

  • Das messages-Feld besteht aus einem Array aus Rollen-Inhalts-Paaren. Das role-Feld bezieht sich auf den Autor der Nachricht und ist entweder auf system, user oder model gesetzt. Die Rolle system ist optional und kann nur im ersten Element der Nachrichtenliste vorkommen. Die Rollen user oder model sind erforderlich und können sich abwechselnd wiederholen.

  • Das Feld content ist der Inhalt der Nachricht.

  • Für jedes Beispiel beträgt die maximale Tokenlänge für context und messages zusammen 32.768 Tokens. Außerdem sollte jedes content-Feld für das model-Feld 8.192 Tokens nicht überschreiten.

Beispiel in einem Schritt

Weitere Informationen zum folgenden Gemini-Schema finden Sie unter Abstimmung von der PaLM API zur Gemini API migrieren.

[
  {
    "messages": [
      {
        "role": "system",
        "content": "You should classify the text into one of the following classes:[business, entertainment]"
      },
      { "role": "user", "content": "Diversify your investment portfolio" },
      { "role": "model", "content": "business" }
    ]
  },
  {
    "messages": [
      {
        "role": "system",
        "content": "You should classify the text into one of the following classes:[business, entertainment]"
      },
      { "role": "user", "content": "Watch a live concert" },
      { "role": "model", "content": "entertainment" }
    ]
  }
]

Beispiel in mehreren Schritten

Weitere Informationen zum folgenden Gemini-Schema finden Sie unter Abstimmung von der PaLM API zur Gemini API migrieren.

{
  "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."
    }
  ]
}

Beispieldatensätze

Mithilfe eines Beispiel-Datasets können Sie lernen, wie Sie ein gemini-1.0-pro-002-Modell abstimmen.

Geben Sie die URIs in den entsprechenden Parametern beim Erstellen eines überwachten Textmodell-Feinabstimmungsjobs an, um diese Datasets zu verwenden.

Beispiel:

...
"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",
...

Konsistenz mit Produktionsdaten gewährleisten

Die Beispiele in Ihren Datasets sollten dem erwarteten Produktionstraffic entsprechen. Wenn Ihr Dataset bestimmte Formatierungen, Keywords, Anleitungen oder Informationen enthält, sollten die Produktionsdaten auf die gleiche Weise formatiert sein und die gleichen Anweisungen enthalten.

Wenn die Beispiele in Ihrem Dataset beispielsweise ein "question:" und ein "context:" enthalten, sollte der Produktionstraffic ebenfalls so formatiert werden, dass er ein "question:" und ein "context:" in der gleichen Reihenfolge wie in den Dataset-Beispielen enthält. Wenn Sie den Kontext ausschließen, erkennt das Modell das Muster nicht, selbst wenn die genaue Frage in einem Beispiel im Dataset vorkommt.

Abstimmungs-Datasets in Cloud Storage hochladen

Zum Ausführen eines Abstimmungsjobs müssen Sie ein oder mehrere Datasets in einen Cloud Storage-Bucket hochladen. Sie können entweder einen neuen Cloud Storage-Bucket erstellen oder einen vorhandenen Bucket zum Speichern von Dataset-Dateien verwenden. Die Region des Buckets spielt keine Rolle. Wir empfehlen jedoch die Verwendung eines Buckets im selben Google Cloud-Projekt, in dem Sie die Modellabstimmung ausführen möchten.

Wenn der Bucket bereit ist, laden Sie Ihre Dataset-Datei in den Bucket hoch.

Nächste Schritte