View a markdown version of this page

SFT - Amazon SageMaker KI

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

SFT

Supervised Fine-Tuning trainiert ein Modell anhand beschrifteter Eingabe-Ausgabe-Paare, um sein Verhalten an bestimmten Beispielen auszurichten. Das Modell lernt, Antworten zu erzeugen, die Ihren Trainingsdaten entsprechen.

Wann sollte dies verwendet werden?

  • Sie verfügen über qualitativ hochwertige Prompt-Response-Paare für Ihre Zielaufgabe

  • Sie möchten, dass das Modell einen bestimmten Stil, ein bestimmtes Format oder ein bestimmtes Fachgebiet erlernt

  • Sie benötigen ein konsistentes Verhalten bei klar definierten Aufgaben (Zusammenfassung, Klassifizierung, Fragen und Antworten)

Was erreicht es

Das Modell lernt, die Muster in Ihren Trainingsbeispielen nachzuahmen und erzeugt Ausgaben, die dem Stil, Format und Inhalt Ihrer beschrifteten Daten entsprechen.

Format des Datensatzes

SFT unterstützt zwei Datensatzformate. Alle Datensätze müssen im JSONL-Format vorliegen (ein JSON-Objekt pro Zeile). Eine system Nachricht ist in beiden Formaten optional.

Format 1: Nachrichten

Stellen Sie die Konversation als eine Liste von Nachrichten dar, die mit Rollen gekennzeichnet sind. Falls enthalten, muss die system Nachricht das erste Element sein.

{ "messages": [ {"role": "system", "content": "..."}, {"role": "user", "content": "..."}, {"role": "assistant", "content": "..."} ] }

Format 2: Aufforderung/Abschluss

Geben Sie die Eingabe und die erwartete Ausgabe als separate Felder mit einem optionalen system Feld auf oberster Ebene an.

{ "system": "...", "prompt": "...", "completion": "..." }
Anmerkung

Die system Nachricht ist optional. Stellen Sie sicher, dass die Eingabeaufforderungen und Antwortstile unterschiedlich sind.

Hyperparameter

Anmerkung

Die folgenden Tabellen zeigen die Hyperparameter, die verfügbar sind, wenn Sie die serverlose Modellanpassung verwenden. Andere Hyperparameter werden von Amazon SageMaker AI unter Verwendung optimierter Standardwerte voreingestellt. Wenn Sie SageMaker AI Training Jobs oder verwenden HyperPod, können Sie auf die vollständige Liste der Hyperparameter zugreifen, die in den Rezepten verfügbar sind. Im SageMaker AI Recipes-Repository finden Sie ein Rezept und können auf alle Hyperparameter zugreifen.

SFT LoRa

Parameter Typ Erforderlich? Bereich/Werte Description
max_epochsGanzzahlErforderlich1-100Anzahl der vollständigen Durchläufe des Trainingsdatensatzes.
global_batch_sizeGanzzahlErforderlich8, 16, 32, 64, 128, 256, 512, 1024Gesamtzahl der pro Optimierer-Schritt verarbeiteten Proben in allen Instanzen.
learning_ratefloatErforderlich5e-07—1e-04Schrittgröße für Gewichtsaktualisierungen während der Optimierung.
lr_schedulerZeichenfolgeErforderlichKosinus, konstantZeitplan für den Rückgang der Lernrate im Laufe des Trainings.
lr_warmup_steps_ratiofloatErforderlich0—1Bruchteil der Gesamtzahl der Schritte, die aufgewendet wurden, um die Lernrate von 0 zu erhöhen.
weight_decayfloatErforderlich0,0 bis 1,0L2-Regularisierungskoeffizient. Hilft, eine Überanpassung zu verhindern.
gradient_clippingbooleschErforderlichtrue, falseVerkleinern Sie die Steigungen, wenn die Norm den Schwellenwert überschreitet.
gradient_clipping_thresholdfloatErforderlich0,0—5,0Maximal zulässige Steigungsnorm.
dataset_max_lenGanzzahlErforderlich256—131072Maximale Sequenzlänge in Tokens. Längere Sequenzen werden gekürzt.
seedGanzzahlErforderlich0 – 2147483647Zufälliger Startwert für Reproduzierbarkeit.
logging_stepsGanzzahlErforderlich1-100Häufigkeit der Protokollierung von Metriken in Optimierer-Schritten.
lora_rankGanzzahlErforderlich8, 16, 32, 64, 128Dimensionalität von Matrizen mit niedrigem Rang. Niedriger = weniger trainierbare Parameter.
lora_dropoutfloatErforderlich0,0 bis 1,0Wahrscheinlichkeit eines Ausfalls bei LoRA Adapterschichten.
lora_alphaGanzzahlErforderlich16, 32, 64, 128, 256LoRASkalierungsfaktor. Effektiver LR skaliert als alpha/rank.
merge_weightsbooleschErforderlichtrue, falseKombiniere die LoRA Gewichte nach dem Training mit dem Basismodell.
train_val_split_ratiofloatOptional0,0 bis 1,0Anteil, der dem Training und der Validierung zugeordnet ist.
temperaturefloatErforderlich0,0—2,0Probenahmetemperatur zur Auswertung.

WEICH FFT

Parameter Typ Erforderlich? Bereich/Werte Description
max_epochsGanzzahlErforderlich1-100Anzahl der vollständigen Durchläufe des Trainingsdatensatzes.
global_batch_sizeGanzzahlErforderlich8, 16, 32, 64, 128, 256, 512, 1024Gesamtzahl der pro Optimierer-Schritt verarbeiteten Proben.
learning_ratefloatErforderlich5e-07—1e-04Schrittgröße für Gewichtsaktualisierungen.
lr_schedulerZeichenfolgeErforderlichKosinus, konstantZeitplan für den Abstieg der Lernrate.
lr_warmup_steps_ratiofloatErforderlich0—1Bruchteil der Schritte für das LR-Aufwärmen.
weight_decayfloatErforderlich0,0 bis 1,0L2-Regularisierungskoeffizient.
gradient_clippingbooleschErforderlichtrue, falseGradienten herunterskalieren, wenn die Norm den Schwellenwert überschreitet.
gradient_clipping_thresholdfloatErforderlich0,0—5,0Maximal zulässige Steigungsnorm.
dataset_max_lenGanzzahlErforderlich256—131072Maximale Sequenzlänge in Tokens.
max_response_lengthGanzzahlErforderlich100—200000Maximale Anzahl an Tokens für generierte Antworten.
seedGanzzahlErforderlich0 – 2147483647Zufälliger Startwert für Reproduzierbarkeit.
logging_stepsGanzzahlErforderlich1-100Häufigkeit der metrischen Protokollierung.
train_val_split_ratiofloatOptional0,0 bis 1,0Anteil, der für Training und Validierung vorgesehen ist.
temperaturefloatErforderlich0,0—2,0Probenahmetemperatur zur Auswertung.