Freigeben über


Lernprogramm: Erstellen und Bereitstellen einer Foundation Model Fine-Tuning-Ausführung

Wichtig

Dieses Feature ist in den folgenden Regionen als Public Preview verfügbar: centralus, eastus, eastus2, northcentralus und westus.

In diesem Artikel wird beschrieben, wie Sie eine Ausführung mit der Foundation Model Fine-Tuning-API (jetzt Teil der Mosaik AI Model Training) erstellen und konfigurieren und dann die Ergebnisse überprüfen und das Modell mithilfe der Databricks UI und Mosaik AI Model Serving bereitstellen.

Anforderungen

  • Ein Arbeitsbereich in einer der folgenden Azure-Regionen: centralus, eastus, eastus2, northcentralus, westcentralus, westus, westus3.
  • Databricks Runtime 12.2 LTS ML oder höher.
  • Dieses Tutorial muss in einem Databricks-Notebook ausgeführt werden.
  • Trainingsdaten im akzeptierten Format. Weitere Informationen finden Sie unter Vorbereiten von Daten für die Feinabstimmung des Foundation-Modells.

Schritt 1: Vorbereiten Ihrer Daten für das Training

Weitere Informationen finden Sie unter Vorbereiten von Daten für die Feinabstimmung des Foundation-Modells.

Schritt 2: Installieren des databricks_genai SDKs

Verwenden Sie Folgendes, um das databricks_genai SDK zu installieren.

%pip install databricks_genai

Importieren Sie anschließend die foundation_model-Bibliothek:

dbutils.library.restartPython()
from databricks.model_training import foundation_model as fm

Schritt 3: Erstellen einer Trainingsausführung

Erstellen Sie einen Schulungslauf mit der Foundation Model Fine-Tuning-Funktion create() . Folgende Parameter sind erforderlich:

  • model: das Modell, das Sie trainieren möchten.
  • train_data_path: der Speicherort des Trainingsdatensatzes.
  • register_to: der Unity Catalog-Katalog und das Schema, in dem Prüfpunkte gespeichert werden sollen.

Zum Beispiel:

run = fm.create(model='meta-llama/Meta-Llama-3.1-8B-Instruct',
                train_data_path='dbfs:/Volumes/main/my-directory/ift/train.jsonl', # UC Volume with JSONL formatted data
                register_to='main.my-directory',
                training_duration='1ep')

run

Schritt 4: Anzeigen des Ausführungsstatus

Die Zeit für den Abschluss einer Trainingsausführung hängt von der Anzahl der Token, des Modells und der GPU-Verfügbarkeit ab. Für ein schnelleres Training empfiehlt Databricks, reservierte Compute zu verwenden. Wenden Sie sich für Details an Ihr Databricks-Kontoteam.

Nachdem Sie die Ausführung gestartet haben, können Sie den Status der Ausführung mit get_events() überwachen.

run.get_events()

Schritt 5: Anzeigen von Metriken und Ausgaben

Führen Sie die folgenden Schritte aus, um die Ergebnisse in der Databricks-Benutzeroberfläche anzuzeigen:

  1. Klicken Sie im Arbeitsbereich „Databricks“ auf Experimente in der linken Navigationsleiste.
  2. Wählen Sie Ihr Experiment aus der Liste aus.
  3. Überprüfen Sie die Metrikdiagramme auf der Registerkarte Diagramme. Trainingsmetriken werden für jede Trainingsausführung generiert. Auswertungsmetriken werden nur generiert, wenn ein Auswertungsdatenpfad angegeben ist.
    1. Die primäre Trainingsmetrik, die zeigt, dass der Fortschritt verloren geht. Auswertungsverluste können verwendet werden, um festzustellen, ob sich Ihr Modell zu stark an Ihre Trainingsdaten anpasst. Allerdings sollte Sie sich nicht ausschließlich auf den Verlust verlassen, denn bei überwachten Trainingsaufgaben kann der Bewertungsverlust als Überanpassung erscheinen, während sich das Modell weiter verbessert.
    2. Je höher die Genauigkeit, desto besser ist Ihr Modell, aber denken Sie daran, dass eine Genauigkeit von nahezu 100 % eine Überanpassung bedeuten kann.
    3. Die folgenden Metriken werden nach der Ausführung im MLflow angezeigt:
      • LanguageCrossEntropy berechnet Kreuzentropie in Sprachmodellierungsausgaben. Ein niedrigerer Score ist besser.
      • LanguagePerplexity misst, wie gut ein Sprachmodell das nächste Wort oder Zeichen in einem Textblock basierend auf vorherigen Wörtern oder Zeichen vorhersagt. Ein niedrigerer Score ist besser.
      • TokenAccuracy berechnet die Genauigkeit für die Sprachmodellierung auf Tokenebene. Ein höherer Score ist besser.
    4. Auf dieser Registerkarte können Sie auch die Ausgabe Ihrer Auswertungsaufforderungen anzeigen, wenn Sie sie angegeben haben.

Schritt 6: Auswerten mehrerer angepasster Modelle mit Mosaik AI Agent Evaluation vor der Bereitstellung

Sehen Sie, was ist Mosaik AI Agent Evaluation?.

Schritt 7: Bereitstellen ihres Modells

Das Training wird automatisch in Unity Catalog registriert, nachdem es abgeschlossen ist. Das Modell wird basierend auf dem, was Sie im Feld „register_to“ in der Run-Methode „create()“ angegeben haben, registriert.

Führen Sie die folgenden Schritte aus, um das Modell für die Bereitstellung bereitzustellen:

  1. Navigieren Sie zum Modell in Unity Catalog.
  2. Klicken Sie auf Dieses Modell bereitstellen.
  3. Klicken Sie auf Bereitstellungsendpunkt erstellen.
  4. Geben Sie im Feld Name einen Namen für Ihren Endpunkt an.
  5. Klicken Sie auf Erstellen.

Zusätzliche Ressourcen