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 von öffentlich verfügbaren Basismodellen mit der JumpStartEstimator-Klasse
Anmerkung
Anweisungen zur Optimierung von Basismodellen in einem privaten, kuratierten Hub finden Sie unter Optimieren kuratierter Hub-Modelle.
Mithilfe des SDK können Sie einen integrierten Algorithmus oder ein vortrainiertes Modell in nur wenigen Codezeilen feinabstimmen. SageMaker Python
-
Suchen Sie zunächst die Modell-ID für das Modell Ihrer Wahl in der Tabelle In vortrainierte Modelle integrierte Algorithmen
. -
Definieren Sie anhand der Modell-ID Ihren Trainingsjob als JumpStart Schätzer.
from sagemaker.jumpstart.estimator import JumpStartEstimator model_id ="huggingface-textgeneration1-gpt-j-6b"estimator = JumpStartEstimator(model_id=model_id) -
Führen Sie
estimator.fit()auf Ihrem Modell aus und verweisen Sie dabei auf die Trainingsdaten, die für die Optimierung verwendet werden sollen.estimator.fit( {"train":training_dataset_s3_path, "validation":validation_dataset_s3_path} ) -
Verwenden Sie dann die
deploy-Methode, um Ihr Modell automatisch für die Inferenz bereitzustellen. In diesem Beispiel verwenden wir das GPT-J-6B-Modell von Hugging Face.predictor = estimator.deploy() -
Anschließend können Sie mit der
predict-Methode eine Inferenz mit dem bereitgestellten Modell ausführen.question ="What is Southern California often abbreviated as?"response = predictor.predict(question) print(response)
Anmerkung
In diesem Beispiel wird das Basismodell GPT-J 6B verwendet, das für eine Vielzahl von Anwendungsfällen zur Textgenerierung geeignet ist, darunter die Beantwortung von Fragen, Erkennung benannter Entitäten, Zusammenfassung und mehr. Weitere Informationen zu Anwendungsfällen für Modelle finden Sie unter Verfügbare Basismodelle.
Sie können optional Modellversionen oder Instance-Typen angeben, wenn Sie Ihren JumpStartEstimator erstellen. Weitere Hinweise zur JumpStartEstimator Klasse und ihren Parametern finden Sie unter JumpStartEstimator
Standard-Instance-Typen überprüfen
Sie können bei der Optimierung eines vortrainierten Modells mithilfe der JumpStartEstimator-Klasse optional bestimmte Modellversionen oder Instance-Typen einbeziehen. Alle JumpStart Modelle haben einen Standard-Instanztyp. Rufen Sie den standardmäßigen Trainings-Instance-Typ mit dem folgenden Code ab:
from sagemaker import instance_types instance_type = instance_types.retrieve_default( model_id=model_id, model_version=model_version, scope="training") print(instance_type)
Mit der instance_types.retrieve() Methode können Sie alle unterstützten Instanztypen für ein bestimmtes JumpStart Modell anzeigen.
Standard-Hyperparameter überprüfen
Um die für das Training verwendeten Standard-Hyperparameter zu überprüfen, können Sie die retrieve_default()-Methode aus der hyperparameters-Klasse verwenden.
from sagemaker import hyperparameters my_hyperparameters = hyperparameters.retrieve_default(model_id=model_id, model_version=model_version) print(my_hyperparameters) # Optionally override default hyperparameters for fine-tuning my_hyperparameters["epoch"] = "3" my_hyperparameters["per_device_train_batch_size"] = "4" # Optionally validate hyperparameters for the model hyperparameters.validate(model_id=model_id, model_version=model_version, hyperparameters=my_hyperparameters)
Weitere Informationen über verfügbare Hyperparameter finden Sie unter Häufig unterstützte Hyperparameter bei der Optimierung.
Standard-Metrikdefinitionen überprüfen
Sie können auch die standardmäßigen Metrikdefinitionen überprüfen:
print(metric_definitions.retrieve_default(model_id=model_id, model_version=model_version))