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. Dasrole
-Feld bezieht sich auf den Autor der Nachricht und ist entweder aufsystem
,user
odermodel
gesetzt. Die Rollesystem
ist optional und kann nur im ersten Element der Nachrichtenliste vorkommen. Die Rollenuser
odermodel
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
undmessages
zusammen 32.768 Tokens. Außerdem sollte jedescontent
-Feld für dasmodel
-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.
Kosten für die Abstimmung mit einem Dataset schätzen
Im folgenden Notebook können Sie die Tokenanzahl und die Kosten für die Optimierung schätzen, wenn Sie einen Optimierungsjob für gemini-1.0-pro-002
ausführen.
Nächste Schritte
- Allgemeine Informationen zur Funktionsweise der Abstimmung finden Sie unter Übersicht über die Modellabstimmung für Gemini.
- 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.