Freigeben über


Foundation Model Fine-tuning

Wichtig

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

Mit foundation Model Fine-Tuning (jetzt Teil der Mosaik AI Model Training) können Sie Ihre eigenen Daten verwenden, um ein Foundation-Modell anzupassen, um seine Leistung für Ihre spezifische Anwendung zu optimieren. Durch die vollständige Parameteroptimierung oder das fortlaufende Training eines Basismodells können Sie Ihr eigenes Modell mit deutlich weniger Daten, Zeit und Rechenressourcen trainieren, als ein Modell von Grund auf neu zu trainieren.

Mit Databricks haben Sie alles auf einer einzigen Plattform: Ihre eigenen Daten für das Training, das Basismodell zum Trainieren, Prüfpunkte, die in MLflow gespeichert sind, und das Modell, das in Unity Catalog registriert ist und bereit für die Bereitstellung ist.

Siehe Lernprogramm: Erstellen und Bereitstellen einer Foundation Model Fine-Tuning-Ausführung , um zu erfahren, wie Sie eine Ausführung mithilfe der Foundation Model Fine-Tuning-API erstellen und bereitstellen und dann die Ergebnisse überprüfen und das Modell mithilfe der Databricks UI und Mosaik AI Model Serving bereitstellen.

Was ist Foundation Model Fine-Tuning?

Mit der Optimierung des Foundation-Modells können Sie die Databricks-API oder die Benutzeroberfläche verwenden, um ein Foundation-Modell zu optimieren oder weiter zu trainieren.

Mit der Feinabstimmung des Foundation-Modells können Sie folgende Aktionen ausführen:

  • Trainieren Sie ein Modell mit Ihren benutzerdefinierten Daten, wobei die Prüfpunkte in MLflow gespeichert werden. Sie behalten die vollständige Kontrolle über das trainierte Modell.
  • Registrieren Sie das Modell automatisch in Unity Catalog, sodass eine einfache Bereitstellung per Modellbereitstellung möglich ist.
  • Optimieren Sie ein fertiges, proprietäres Modell durch Laden der Gewichtungen eines zuvor trainierten Modells.

Databricks empfiehlt, foundation Model Fine-Tuning zu versuchen, wenn:

  • Sie haben ein Training mit nur wenige Stichproben getestet und möchten bessere Ergebnisse erzielen.
  • Sie haben das Prompt Engineering für ein vorhandenes Modell getestet und möchten bessere Ergebnisse erzielen.
  • Sie benötigen aus Datenschutzgründen den vollständigen Besitz über ein benutzerdefiniertes Modell.
  • Latenz und Kosten sind für Sie von großer Bedeutung, und Sie möchten ein kleineres, günstigeres Modell mit Ihren aufgabenspezifischen Daten verwenden.

Unterstützte Aufgaben

Foundation Model Fine-Tuning unterstützt die folgenden Anwendungsfälle:

  • Chatvervollständigung: Empfohlene Aufgabe. Trainieren Sie Ihr Modell mit Protokollen von Chats zwischen Benutzern und KI-Assistenten. Dieser Ansatz kann mit tatsächlichen Chatprotokollen und als Standardansatz für die Beantwortung von Fragen und Unterhaltungstext verwendet werden. Der Text wird automatisch mit dem entsprechenden Format für das jeweilige Modell formatiert. Weitere Informationen zur Vorlagenerstellung finden Sie in Beispiel-Chatvorlagen in der HuggingFace-Dokumentation.
  • Überwachte Optimierung: Trainieren Sie Ihr Modell mit strukturierten Antwortdaten für Prompts. Verwenden Sie diese Methode, um Ihr Modell an eine neue Aufgabe anzupassen, den Antwortstil zu ändern oder die Funktionen auf der Basis von Anweisungen hinzuzufügen. Diese Aufgabe wendet nicht automatisch eine Formatierung auf Ihre Daten an und wird nur empfohlen, wenn eine benutzerdefinierte Datenformatierung erforderlich ist.
  • Fortlaufendes Vorabtraining: Trainieren Sie Ihr Modell mit zusätzlichen Textdaten. Wenden Sie diesen Ansatz an, um einem Modell neue Kenntnisse hinzuzufügen oder ein Modell auf ein bestimmtes Thema auszurichten.

Anforderungen

  • Ein Databricks-Arbeitsbereich in einer der folgenden Azure-Regionen: centralus, eastus, eastus2, northcentralus, oder westus.
  • Foundation Model Fine-Tuning-APIs, die mit pip install databricks_genai.
  • Databricks Runtime 12.2 LTS ML oder höher, wenn sich Ihre Daten in einer Delta-Tabelle befinden

Informationen zu erforderlichen Eingabedatenformaten finden Sie unter "Vorbereiten von Daten für Foundation Model Fine-Tuning ".

Empfohlene Datengröße für das Modelltraining

Databricks empfiehlt ein anfängliches Training mit ein bis vier Epochen. Wenn Sie nach der Bewertung Ihres feinabgestimmten Modells möchten, dass die Modellausgaben Ihren Trainingsdaten besser entsprechen, können Sie zunächst mit dem Training anhand von ein bis zwei weiteren Epochen fortfahren.

Wenn die Modellleistung bei Aufgaben, die in Ihren Feinabstimmungsdaten nicht vertreten sind, erheblich abnimmt, oder wenn das Modell genaue Kopien Ihrer Feinabstimmungsdaten auszugeben scheint, empfiehlt Databricks eine Verringerung der Anzahl der Trainingsepochen.

Für die überwachte Optimierung und die Chatvervollständigung sollten Sie genügend Token für mindestens eine vollständige Kontextlänge des Modells bereitstellen. Sie benötigen z. B. 4.096 Token für meta-llama/Llama-2-7b-chat-hf oder 32.768 Token für mistralai/Mistral-7B-v0.1.

Für das fortlaufende Vorabtraining empfiehlt Databricks mindestens 1,5 Mio. Token, um ein Modell mit höherer Qualität zu erhalten, das Ihre benutzerdefinierten Daten erlernt.

Unterstützte Modelle

In der folgenden Tabelle werden die unterstützen Modelle aufgeführt. Verwenden Sie für die neuesten unterstützten Modelle und deren zugehörige Kontextlängen die get_models()-Funktion.


from databricks.model_training import foundation_model

foundation_model.get_models()

Wichtig

Meta Llama 3.2 ist unter der LLAMA 3.2 Community License, Copyright © Meta Platforms, Inc. lizenziert. Alle Rechte vorbehalten. Kunden sind dafür verantwortlich, ihre Einhaltung der Bedingungen dieser Lizenz und der Richtlinie zur zulässigen Nutzung von Llama 3.2 sicherzustellen.

Meta Llama 3.1 ist unter der LLAMA 3.1 Community License, Copyright © Meta Platforms, Inc. lizenziert. Alle Rechte vorbehalten. Kunden sind dafür verantwortlich, die Einhaltung anwendbarer Modelllizenzen sicherzustellen.

Llama 3 ist unter der LLAMA 3 Community License, Copyright © Meta Platforms, Inc. lizenziert. Alle Rechte vorbehalten. Kunden sind dafür verantwortlich, die Einhaltung anwendbarer Modelllizenzen sicherzustellen.

Llama 2- und Code Llama-Modelle unterliegen der LLAMA 2 Community License, Copyright © Meta Platforms, Inc. Alle Rechte vorbehalten. Kunden sind dafür verantwortlich, die Einhaltung anwendbarer Modelllizenzen sicherzustellen.

DBRX wird im Rahmen und vorbehaltlich der Open-Model-Lizenz von Databricks (Copyright © Databricks, Inc.) bereitgestellt. Alle Rechte vorbehalten. Kunden sind dafür verantwortlich, die Einhaltung anwendbarer Modelllizenzen (einschließlich der Acceptable Use Policy von Databricks) sicherzustellen.

Modell Maximale Kontextlänge Hinweise
databricks/dbrx-base 32768
databricks/dbrx-instruct 32768
meta-llama/Llama-3.2-1B 131072
meta-llama/Llama-3.2-1B-Instruct 131072
meta-llama/Llama-3.2-3B 131072
meta-llama/Llama-3.2-3B-Instruct 131072
meta-llama/Meta-Llama-3.1-405B 131072
meta-llama/Meta-Llama-3.1-405B-Instruct 131072
meta-llama/Meta-Llama-3.1-70B 131072
meta-llama/Meta-Llama-3.1-70B-Instruct 131072
meta-llama/Meta-Llama-3.1-8B 131072
meta-llama/Meta-Llama-3.1-8B-Instruct 131072
meta-llama/Meta-Llama-3-70B 8192 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
meta-llama/Meta-Llama-3-70B-Instruct 8192 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
meta-llama/Meta-Llama-3-8B 8192 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
meta-llama/Meta-Llama-3-8B-Instruct 8192 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
meta-llama/Llama-2-7b-hf 4096 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
meta-llama/Llama-2-13b-hf 4096 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
meta-llama/Llama-2-70b-hf 4096 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
meta-llama/Llama-2-7b-chat-hf 4096 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
meta-llama/Llama-2-13b-chat-hf 4096 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
meta-llama/Llama-2-70b-chat-hf 4096 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
codellama/CodeLlama-7b-hf 16384 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
codellama/CodeLlama-13b-hf 16384 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
codellama/CodeLlama-34b-hf 16384 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
codellama/CodeLlama-7b-Instruct-hf 16384 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
codellama/CodeLlama-13b-Instruct-hf 16384 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
codellama/CodeLlama-34b-Instruct-hf 16384 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
codellama/CodeLlama-7b-Python-hf 16384 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
codellama/CodeLlama-13b-Python-hf 16384 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
codellama/CodeLlama-34b-Python-hf 16384 Nach dem 13. Dezember 2024 wird dieses Modell nicht mehr unterstützt. Informationen zum empfohlenen Ersatzmodell finden Sie unter Eingestellte Modelle.
mistralai/Mistral-7B-v0.1 32768
mistralai/Mistral-7B-Instruct-v0.2 32768
mistralai/Mixtral-8x7B-v0.1 32768

Optimieren des Foundation-Modells

Auf die Optimierung des Foundation-Modells kann über das databricks_genai SDK zugegriffen werden. Im folgenden Beispiel wird eine Trainingsausführung erstellt und gestartet, die Daten von Unity Catalog-Volumes verwendet. Weitere Informationen finden Sie unter Erstellen einer Schulungsausführung mit der Foundation Model Fine-Tuning-API .

from databricks.model_training import foundation_model as fm

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

Ein Beispiel finden Sie im Demo-Notebook für die Feinabstimmung von Instruktionen mit dem Titel Feinabstimmung von Instruktionen: Erkennung benannter Entitäten, das Sie durch die Datenvorbereitung, die Konfiguration des Feinabstimmungs-Trainingslaufs und die Bereitstellung führt.

Begrenzungen

  • Große Datasets (> 10 Mrd. Token) werden aufgrund der Computeverfügbarkeit nicht unterstützt.

  • Beim fortlaufenden Vorabtraining sind die Workloads auf Dateien mit 60–256 MB beschränkt. Dateien, die größer als 1 GB sind, können zu längeren Verarbeitungszeiten führen.

  • Databricks ist bestrebt, die neuesten hochmodernen Modelle mithilfe von Foundation Model Fine-Tuning zur Verfügung zu stellen. Wenn neue Modelle verfügbar sind, kann der Zugriff auf ältere Modelle aus der API oder Benutzeroberfläche entfernt werden, ältere Modelle sind möglicherweise veraltet oder unterstützte Modelle aktualisiert. Siehe Wartungsrichtlinie für generative KI-Modelle.

  • Foundation Model Fine-Tuning unterstützt nur Modellschulungen für Azure-Arbeitsbereiche unter Verwendung von Speicher hinter privatem Link.

    • Derzeit wird nur das Lesen von Daten aus dem Speicher hinter Private Link in eastus2 unterstützt.
  • Wenn Sie Firewalls für das Azure Data Lake Storage-Konto aktiviert haben, das Ihre Daten im Unity-Katalog speichert, müssen Sie den Datenverkehr aus den Serverlosen Databricks-Datenebenenclustern zulassen, um foundation Model Fine-Tuning zu verwenden. Wenden Sie sich an Ihr Databricks-Kundenteam, um weitere Informationen und mögliche individuelle Lösungen zu erhalten.