Optimieren eines großen Sprachmodells (LLM) mithilfe von Domainanpassung - 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.

Optimieren eines großen Sprachmodells (LLM) mithilfe von Domainanpassung

Die Feinabstimmung der Domainanpassung ermöglicht es Ihnen, vortrainierte Grundlagenmodelle zu nutzen und sie mithilfe begrenzter domainspezifischer Daten an bestimmte Aufgaben anzupassen. Wenn Prompt-Engineering nicht zu einer ausreichenden Anpassung führen, können Sie die Feinabstimmung der Domainanpassung verwenden, damit Ihr Modell mit domainspezifischer Sprache wie Branchenjargon, Fachbegriffen oder anderen Fachdaten arbeiten kann. Durch diesen Feinabstimmungsprozess werden die Gewichtungen des Modells geändert.

So optimieren Sie Ihr Modell anhand eines Domain-spezifischen Datensatzes:

  1. Bereiten Sie Ihre Trainingsdaten vor. Detaillierte Anweisungen finden Sie unter Vorbereiten und Hochladen von Trainingsdaten zur Optimierung für die Domain.

  2. Erstellen Sie Ihren Trainingsjob zur Optimierung. Detaillierte Anweisungen finden Sie unter Erstellen eines Trainingsjobs zur Optimierung mithilfe von Anweisungen.

end-to-endBeispiele finden Sie unter. Beispiel-Notebooks

Die Feinabstimmung der Domainanpassung ist für die folgenden Grundlagenmodelle verfügbar:

Anmerkung

Einige JumpStart Basismodelle, wie Llama 2 7B, erfordern die Annahme einer Endbenutzer-Lizenzvereinbarung, bevor die Feinabstimmung vorgenommen und Inferenzen durchgeführt werden können. Weitere Informationen finden Sie unter Endbenutzer-Lizenzvereinbarungen.

  • Bloom 3B

  • Bloom 7B1

  • BloomZ 3B FP16

  • BloomZ 7 B1 FP16

  • GPT-2 XL

  • GPT-J 6B

  • GPT-Neo 1.3B

  • GPT-Neo 125M

  • GPT-NEO 2.7B

  • Llama 2 13B

  • Llama 2 13B Chat

  • Llama 2 13B Neuron

  • Llama 2 70B

  • Llama 2 70B Chat

  • Llama 2 7B

  • Llama 2 7B Chat

  • Llama 2 7B Neuron

Vorbereiten und Hochladen von Trainingsdaten zur Optimierung für die Domain

Trainingsdaten zur Optimierung für die Domain können im CSV-, JSON- oder TXT-Dateiformat bereitgestellt werden. Alle Trainingsdaten müssen sich in einer einzigen Datei in einem einzigen Ordner befinden.

Die Trainingsdaten stammen aus der Textspalte für CSV- oder JSON-Trainingsdatendateien. Wenn keine Spalte mit Text gekennzeichnet ist, werden die Trainingsdaten aus der ersten Spalte für CSV- oder JSON-Trainingsdatendateien übernommen.

Im Folgenden finden Sie ein Beispiel für den Hauptteil einer TXT-Datei, die zur Optimierung verwendet werden soll:

This report includes estimates, projections, statements relating to our business plans, objectives, and expected operating results that are “forward- looking statements” within the meaning of the Private Securities Litigation Reform Act of 1995, Section 27A of the Securities Act of 1933, and Section 21E of ....

Aufteilen von Daten zu Trainings- und Testzwecken

Sie können optional einen weiteren Ordner mit Validierungsdaten bereitstellen. Dieser Ordner sollte auch eine CSV-, JSON- oder TXT-Datei enthalten. Wenn kein Validierungsdatensatz bereitgestellt wird, wird eine festgelegte Menge der Trainingsdaten für Validierungszwecke reserviert. Bei der Auswahl der Hyperparameter für die Optimierung Ihres Modells können Sie den Prozentsatz der für die Validierung verwendeten Trainingsdaten anpassen.

Hochladen von Optimierungsdaten in Amazon S3

Laden Sie Ihre vorbereiteten Daten in Amazon Simple Storage Service (Amazon S3) hoch, um sie bei der Feinabstimmung eines JumpStart Basismodells zu verwenden. Sie können zum Hochladen Ihre Daten die folgenden Befehle verwenden:

from sagemaker.s3 import S3Uploader import sagemaker import random output_bucket = sagemaker.Session().default_bucket() local_data_file = "train.txt" train_data_location = f"s3://{output_bucket}/training_folder" S3Uploader.upload(local_data_file, train_data_location) S3Uploader.upload("template.json", train_data_location) print(f"Training data: {train_data_location}")

Erstellen eines Trainingsjobs zur Optimierung mithilfe von Anweisungen

Nachdem Ihre Daten auf Amazon S3 hochgeladen wurden, können Sie Ihr JumpStart Fundamentmodell optimieren und bereitstellen. Informationen zur Optimierung Ihres Modells in Studio finden Sie unter Optimieren eines Modells in Studio. Informationen zur Feinabstimmung Ihres Modells mithilfe des SageMaker Python SDK finden Sie unter. Optimieren von öffentlich verfügbaren Basismodellen mit der JumpStartEstimator-Klasse

Beispiel-Notebooks

Weitere Informationen zur Optimierung für die Domain finden Sie in den folgenden Beispiel-Notebooks: