In diesem Dokument wird beschrieben, wie Sie einen Datensatz für die beaufsichtigte Feinabstimmung für ein Gemini-Modell definieren. Sie können die Datentypen Text, Bild, Audio und Dokument optimieren.
Überwachte Abstimmungs-Datasets
Mit einem Dataset für die überwachte Feinabstimmung wird ein vortrainiertes Modell für eine bestimmte Aufgabe oder Domain optimiert. 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. Die besten Ergebnisse erzielen Sie erst einmal mit 100 Beispielen. Bei Bedarf können Sie die Anzahl auf Tausende von Beispielen hochskalieren. Die Qualität des Datensatzes ist viel wichtiger als die Quantität.
Einschränkungen:
- Maximale Anzahl der Eingabe- und Ausgabetokens pro Beispiel: 32.000
- Maximale Dateigröße des Trainingsdatensatzes: Bis zu 1 GB für JSONL.
Validierungs-Dataset
Wir empfehlen dringend, einen Validierungsdatensatz anzugeben. Mit einem Validierungs-Dataset können Sie die Effektivität eines Abstimmungsjobs messen.
Einschränkungen:
- Maximale Anzahl der Eingabe- und Ausgabetokens pro Beispiel: 32.000
- Maximale Anzahl von Beispielen im Validierungs-Dataset: 256
- Maximale Dateigröße des Trainingsdatensatzes: Bis zu 1 GB für JSONL.
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.
Beispiel für einen Datensatz für gemini-1.5-pro
und gemini-1.5-flash
{
"systemInstruction": {
"role": string,
"parts": [
{
"text": string
}
]
},
"contents": [
{
"role": string,
"parts": [
{
// Union field data can be only one of the following:
"text": string,
"fileData": {
"mimeType": string,
"fileUri": string
}
}
]
}
]
}
Parameter
Das Beispiel enthält Daten mit den folgenden Parametern:
Parameter | |
---|---|
|
Erforderlich: Der Inhalt der aktuellen Unterhaltung mit dem Modell. Bei Einzelabfragen ist dies eine einzelne Instanz. Bei Mehrfachabfragen ist dies ein wiederkehrendes Feld, das den Unterhaltungsverlauf und die letzte Anfrage enthält. |
|
Optional: Verfügbar für Anleitung für das Modell, um es zu einer besseren Leistung zu steuern. Beispiel: „Antworten Sie so kurz wie möglich“ oder „Verwenden Sie in Ihrer Antwort keine technischen Begriffe“. Die Das Feld |
Inhalt
Der grundlegende strukturierte Datentyp, der mehrteilige Inhalte einer Nachricht enthält.
Diese Klasse besteht aus zwei Hauptattributen: role
und parts
. Das Attribut role
bezeichnet die Person, die den Inhalt erzeugt, während das Attribut parts
mehrere Elemente enthält, die jeweils ein Datensegment innerhalb einer Nachricht darstellen.
Parameter | |
---|---|
|
Optional: Die Identität der Entität, die die Nachricht erstellt. Folgende Werte werden unterstützt:
Der Wert Bei Unterhaltungen, die nicht mehrere Themen enthalten, kann dieses Feld leer bleiben oder nicht festgelegt werden. |
|
Eine Liste geordneter Teile einer einzelnen Nachricht. Verschiedene Teile haben möglicherweise unterschiedliche IANA-MIME-Typen. Limits für die Eingaben, z. B. die maximale Anzahl von Tokens oder die Anzahl der Bilder, finden Sie in den Modellspezifikationen auf der Seite Google-Modelle. Wie du die Anzahl der Tokens in deiner Anfrage berechnest, erfährst du unter Tokenanzahl abrufen. |
Teile
Ein Datentyp mit Medien, die Teil einer mehrteiligen Content
-Nachricht sind.
Parameter | |
---|---|
|
Optional: Ein Text-Prompt oder ein Code-Snippet. |
|
Optional: In einer Datei gespeicherte Daten. |
Beispiel für einen Datensatz für Gemini 1.0 Pro
Jedes Unterhaltungsbeispiel in einem Dataset zur Feinabstimmung besteht aus einem erforderlichen Nachrichtenfeld.
Das messages
-Feld besteht aus einem Array aus Rollen-Inhalts-Paaren. Das Feld role
bezieht sich auf den Autor der Nachricht und ist auf system
, user
oder model
festgelegt. Die Rolle system
ist optional und kann nur beim ersten Element der Nachrichtenliste vorkommen. Die Rollen user
oder model
sind erforderlich und können abwechselnd wiederholt werden.
Das Feld content
ist der content
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 Inhaltsfeld für das Modellfeld 8.192 Tokens nicht überschreiten.
{
"messages": [
{
"role": string,
"content": string
}
]
}
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.
Best Practices für das Prompt-Design beachten
Sobald Sie Ihr Trainingsdatensatz haben und das Modell trainiert haben, ist es an der Zeit, Prompts zu entwerfen. Es ist wichtig, die Best Practices für das Design von Prompts in Ihrem Trainingsdatensatz zu befolgen, um eine detaillierte Beschreibung der durchzuführenden Aufgabe und der gewünschten Ausgabe zu geben.
Nächste Schritte
- Wählen Sie eine Region zur Feinabstimmung eines Modells aus.
- Informationen dazu, wie die überwachte Feinabstimmung in einer Lösung verwendet werden kann, die eine Wissensdatenbank für generative KI erstellt, finden Sie unter Schnellstartlösung: Wissensdatenbank für generative KI.