Ressourcen für die Verwendung von Hugging Face mit Amazon SageMaker - Amazon SageMaker

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.

Ressourcen für die Verwendung von Hugging Face mit Amazon SageMaker

Amazon SageMaker ermöglicht es Kunden, mithilfe von Hugging Face Face-Modellen für die Verarbeitung natürlicher Sprache () zu trainieren, zu optimieren und Inferenzen auszuführen. NLP SageMaker Sie können Hugging Face sowohl für Trainings als auch für Inferenzen verwenden. Der folgende Abschnitt enthält Informationen zu Hugging Face-Modellen und enthält Referenzmaterial, anhand dessen Sie lernen können, wie Sie Hugging Face verwenden können. SageMaker

Diese Funktionalität ist durch die Entwicklung von Hugging Face AWS Deep Learning Containers verfügbar. Zu diesen Containern gehören Hugging Face Transformers, Tokenizers und die Datensatz-Bibliothek, mit der Sie diese Ressourcen für Ihre Trainings- und Inferenzaufgaben verwenden können. Eine Liste der verfügbaren Deep Learning Containers-Images finden Sie unter Verfügbare Deep Learning Containers Images. Diese Deep Learning Containers Container-Images werden verwaltet und regelmäßig mit Sicherheitspatches aktualisiert.

Informationen zur Verwendung der Hugging Face Deep Learning Containers mit SageMaker Python SDK für das Training finden Sie im Hugging Face Estimator. SageMaker Mit dem Hugging Face Estimator können Sie die Hugging Face Face-Modelle wie jeden anderen Estimator verwenden. SageMaker Die Verwendung von SageMaker Python SDK ist jedoch optional. Sie können Ihre Verwendung der Hugging Face Deep Learning Containers auch mit dem und orchestrieren. AWS CLI AWS SDK for Python (Boto3)

Weitere Informationen zu Hugging Face und den darin verfügbaren Modellen finden Sie in der Hugging Face Dokumentation.

Training

Verwenden Sie für die Durchführung von Schulungen eines der Tausenden von Modellen, die in Hugging Face verfügbar sind, und passen Sie sie mit zusätzlichen Schulungen an Ihren Anwendungsfall an. Mit SageMaker können Sie das Standardtraining verwenden oder die Vorteile der Schulungen SageMaker Distributed Data und Model Parallel nutzen.

Wie bei anderen SageMaker Trainingsjobs, bei denen benutzerdefinierter Code verwendet wird, können Sie Ihre eigenen Metriken erfassen, indem Sie eine Metrikdefinition an SageMaker Python übergebenSDK. Ein Beispiel finden Sie unter Definieren von Trainingsmetriken (SageMaker PythonSDK). Sie können mit der TrainingJobAnalyticsMethode CloudWatchund als Pandas DataFrame auf die erfassten Metriken zugreifen. Nachdem Ihr Modell trainiert und optimiert wurde, können Sie es wie jedes andere Modell verwenden, um Inferenzjobs auszuführen.

So trainierst du mit dem Hugging Face Estimator

Sie können den Hugging Face Estimator für Trainingsjobs mit Python implementieren. SageMaker SDK SageMaker Python SDK ist eine Open-Source-Bibliothek zum Trainieren und Bereitstellen von Modellen für maschinelles Lernen SageMaker. Weitere Informationen zum Hugging Face Estimator finden Sie in der SageMaker Python-Dokumentation. SDK

Mit SageMaker Python SDK können Sie Trainingsjobs mit dem Hugging Face Estimator in den folgenden Umgebungen ausführen:

  • Amazon SageMaker Studio Classic: Studio Classic ist die erste vollständig integrierte Entwicklungsumgebung (IDE) für maschinelles Lernen (ML). Studio Classic bietet eine einzige, webbasierte visuelle Oberfläche, über die Sie alle erforderlichen ML-Entwicklungsschritte ausführen können, um:

    • vorbereiten

    • build

    • trainiere und stimme

    • Modelle bereitstellen und verwalten

    Informationen zur Verwendung von Jupyter Notebooks in Studio Classic finden Sie unter. Verwenden Sie Amazon SageMaker Studio Classic-Notizbücher

  • SageMakerNotebook-Instances: Eine SageMaker Amazon-Notebook-Instance ist eine Recheninstanz für maschinelles Lernen (ML), auf der die Jupyter Notebook App ausgeführt wird. Mit dieser App können Sie Jupyter Notebooks in Ihrer Notebook-Instance ausführen, um:

    • Daten vorbereiten und verarbeiten

    • Code schreiben, um Modelle zu trainieren

    • Modelle für das SageMaker Hosting bereitstellen

    • testen oder validieren Sie Ihre Modelle ohne SageMaker Studio-Funktionen wie Debugger, Modellüberwachung und eine webbasierte IDE

  • Lokal: Wenn Sie über Konnektivität verfügen AWS und über die entsprechenden SageMaker Berechtigungen verfügen, können Sie SageMaker Python SDK lokal verwenden. Bei lokaler Nutzung können Sie Fernschulungen und Inferenzjobs für Hugging Face in on starten. SageMaker AWS Dies funktioniert auf Ihrem lokalen Computer sowie auf anderen AWS Diensten mit verbundenem SageMaker Python SDK und entsprechenden Berechtigungen.

Inferenz

Für die Inferenz können Sie Ihr trainiertes Hugging Face Face-Modell oder eines der vortrainierten Hugging Face Face-Modelle verwenden, um einen Inferenzjob bereitzustellen. SageMaker Bei dieser Zusammenarbeit benötigen Sie nur eine Codezeile, um sowohl Ihre trainierten Modelle als auch Ihre vortrainierten Modelle bereitzustellen. SageMaker Sie können auch Inferenzaufträge ausführen, ohne benutzerdefinierten Inferenzcode schreiben zu müssen. Mit benutzerdefiniertem Inferenzcode können Sie die Inferenzlogik anpassen, indem Sie Ihr eigenes Python-Skript bereitstellen.

So stellen Sie einen Inferenzauftrag mit den Hugging Face Deep Learning Containers bereit

Sie haben zwei Möglichkeiten, Inferenzen mit auszuführen. SageMaker Sie können die Inferenz mit einem Modell ausführen, das Sie trainiert haben, oder ein vortrainiertes Hugging Face Face-Modell einsetzen.

  • Führen Sie die Inferenz mit Ihrem trainierten Modell aus: Sie haben zwei Möglichkeiten, die Inferenz mit Ihrem eigenen trainierten Modell auszuführen:

    • Führen Sie Inferenzen mit einem Modell durch, das Sie mit einem vorhandenen Hugging Face-Modell mit den SageMaker Hugging Face Deep Learning Containers trainiert haben.

    • Bringen Sie Ihr eigenes vorhandenes Hugging Face Face-Modell mit und stellen Sie es mithilfe von bereit. SageMaker

    Wenn Sie Inferenz mit einem Modell ausführen, das Sie mit dem SageMaker Hugging Face Estimator trainiert haben, können Sie das Modell sofort nach Abschluss des Trainings bereitstellen. Sie können das trainierte Modell auch in einen Amazon S3 S3-Bucket hochladen und es bei der späteren Ausführung von Inference aufnehmen.

    Wenn Sie Ihr eigenes vorhandenes Hugging Face Face-Modell mitbringen, müssen Sie das trainierte Modell in einen Amazon S3 S3-Bucket hochladen. Sie nehmen diesen Bucket dann auf, wenn Sie Inferenz ausführen, wie in Deploy your Hugging Face Transformers als Beispiel für Inferenz gezeigt.

  • Führen Sie Inferenz mit einem vortrainierten HuggingFace Modell durch: Sie können eines der Tausenden von vortrainierten Hugging Face Face-Modellen verwenden, um Ihre Inferenzjobs auszuführen, ohne dass zusätzliche Schulungen erforderlich sind. Um die Inferenz auszuführen, wählen Sie das vortrainierte Modell aus der Liste der Hugging Face-Modelle aus, wie unter Deploy pre-trained Hugging Face Transformers for Inference example beschrieben.

Was möchten Sie tun?

Die folgenden Notizbücher im Hugging Face-Notizbuch-Repository zeigen, wie Sie die Hugging Face Deep Learning Containers SageMaker in verschiedenen Anwendungsfällen verwenden können.

Ich möchte ein Textklassifizierungsmodell mit Hugging Face trainieren und einsetzen. SageMaker PyTorch

Ein Beispiel für ein Jupyter Notebook finden Sie in der Getting Started Demo. PyTorch

Ich möchte ein Textklassifizierungsmodell mit Hugging Face trainieren und einsetzen. SageMaker TensorFlow

Ein Beispiel für ein Jupyter Notebook finden Sie im Beispiel Erste Schritte. TensorFlow

Ich möchte ein verteiltes Training mit Datenparallelität mit Hugging Face und Distributed durchführen. SageMaker

Ein Beispiel für ein Jupyter Notebook finden Sie im Distributed Trainingsbeispiel.

Ich möchte verteiltes Training mit Modellparallelität mit Hugging Face und Distributed durchführen. SageMaker

Ein Beispiel für ein Jupyter Notebook finden Sie im Model Parallelismbeispiel

Ich möchte eine Spot-Instance verwenden, um ein Modell mit Hugging Face in zu trainieren und bereitzustellen. SageMaker

Ein Beispiel für ein Jupyter Notebook finden Sie im Beispiel Spot-Instances.

Ich möchte benutzerdefinierte Metriken erfassen und SageMaker Checkpointing verwenden, wenn ich ein Textklassifizierungsmodell mit Hugging Face in trainiere. SageMaker

Ein Beispiel für ein Jupyter Notebook finden Sie im Beispiel Training mit benutzerdefinierten Metriken

Ich möchte ein TensorFlow Modell zur verteilten Beantwortung von Fragen mit Hugging Face in trainieren. SageMaker

Ein Beispiel für ein Jupyter Notebook finden Sie im Beispiel Distributed Training. TensorFlow

Ich möchte ein verteiltes Zusammenfassungsmodell mit Hugging Face in trainieren. SageMaker

Ein Beispiel für ein Jupyter Notebook finden Sie im Beispiel Distributed Summarization Training.

Ich möchte ein Bildklassifizierungsmodell mit Hugging Face in trainieren. SageMaker

Ein Beispiel für ein Jupyter Notebook finden Sie im Beispiel Vision Transformer Training.

Ich möchte mein trainiertes Hugging Face Face-Modell in einsetzen. SageMaker

Ein Beispiel für ein Jupyter Notebook finden Sie im Beispiel Setzen Sie Ihre Umarmungsgesicht-Transformatoren für das Inferenzbeispiel ein.

Ich möchte ein vortrainiertes Hugging Face Face-Modell in einsetzen. SageMaker

Ein Beispiel für ein Jupyter Notebook finden Sie im Beispiel Einsatz von vorab trainierten Umarmungsgesichtstransformatoren für ein Inferenzbeispiel.