Freigeben über


Konzepte: Feinabstimmung von Sprachmodellen für KI- und Machine Learning-Workflows

In diesem Artikel erfahren Sie mehr über Die Feinabstimmung von Sprachmodellen, einschließlich einiger gängiger Methoden und wie das Anwenden der Optimierungsergebnisse die Leistung Ihrer KI- und Machine Learning-Workflows auf Azure Kubernetes Service (AKS) verbessern kann.

Vortrainierte Sprachmodelle

Vorabtrainierte Sprachmodelle (Pre-trained Language Models, PLMs) bieten eine barrierefreie Möglichkeit für die ersten Schritte mit KI-Rückschließen und werden häufig in der Verarbeitung natürlicher Sprachen (NATURAL Language Processing, NLP) verwendet. PLMs werden mithilfe von Deep Neural Networks anhand von umfangreichen Textkorpora aus dem Internet trainiert und können zur Verwendung für spezifische Aufgaben mit kleineren Datasets optimiert werden. Diese Modelle bestehen in der Regel aus Milliarden von Parametern oder Gewichtungen, die während des Vorabtrainingsprozesses gelernt werden.

PLMs können universelle Sprachdarstellungen erlernen, die die statistischen Eigenschaften natürlicher Sprache erfassen, z. B. die Wahrscheinlichkeit von Wörtern oder Sequenzen von Wörtern, die in einem bestimmten Kontext auftreten. Diese Darstellungen können auf nachgelagerte Aufgaben übertragen werden, wie z. B. Textklassifikation, Erkennung von benannten Entitäten und Beantwortung von Fragen, indem das Modell auf aufgabenspezifischen Datasets feinabgestimmt wird.

Vor- und Nachteile

In der folgenden Tabelle sind einige Vor- und Nachteile der Verwendung von PLMs in Ihren KI- und Machine Learning-Workflows aufgeführt:

Vorteile Nachteile
• Erste Schritte mit der Bereitstellung in Ihrem Machine Learning-Lebenszyklus.
• Vermeiden von hohen Berechnungskosten, die mit der Modellschulung verbunden sind.
• Reduziert die Notwendigkeit, große, mit Bezeichnungen versehene Datasets zu speichern.
• Könnte verallgemeinerte oder veraltete Antworten geben, die auf Datenquellen vor dem Training basieren.
• Möglicherweise nicht für alle Aufgaben oder Domänen geeignet.
• Die Leistung kann je nach Ableitungskontext variieren.

Feinabstimmungsmethoden

Parametereffiziente Feinabstimmung

Parametereffiziente Feinabstimmung (Parameter Efficient Fine-tuning, PEFT) ist eine Methode zur Feinabstimmung von PLMs für relativ kleine Datasets mit begrenzten Computeressourcen. PEFT verwendet eine Kombination aus Techniken, wie additiven und selektiven Methoden zum Aktualisieren von Gewichten, um die Leistung des Modells für bestimmte Aufgaben zu verbessern. PEFT erfordert minimale Rechenressourcen und flexible Datenmengen, sodass sie für Einstellungen mit geringer Ressource geeignet sind. Diese Methode behält die meisten Gewichtungen des ursprünglichen vorabtrainierten Modells bei und aktualisiert die verbleibenden Gewichtungen so, dass sie kontextspezifische, mit Bezeichnungen versehene Daten passen.

Anpassung an niedrige Rangfolge

Die Anpassung an niedrige Rangfolge (Low Rank Adaption, LoRA) ist eine PEFT-Methode, die häufig zum Anpassen großer Sprachmodelle für neue Aufgaben verwendet wird. Diese Methode verfolgt Änderungen an Modellgewichten und speichert effizient kleinere Gewichtsmatrizen, die nur die trainierbaren Parameter des Modells darstellen, wodurch die Speicherauslastung und die für die Feinabstimmung benötigte Rechenleistung reduziert werden. LoRA erstellt Feinabstimmungsergebnisse, die als Adapterebenen bezeichnet werden, die vorübergehend gespeichert und in die Architektur des Modells für neue Ableitungsaufträge gezogen werden können.

Die quantisierte Anpassung an niedrige Rangfolge (Quantized Low Rank Adaption, QLoRA) ist eine Erweiterung von LoRA, die die Speicherauslastung weiter reduziert, indem die Quantisierung auf die Adapterebenen eingeführt wird. Weitere Informationen finden Sie unter LLMs noch zugänglicher machen mit BitsandBites, 4-Bit-Quantisierung und QLoRA.

Experimentieren mit Feinabstimmung von Sprachmodellen auf AKS

Der Kubernetes KI-Toolchain-Betreiber (Kubernetes AI Toolchain Operator, KAITO) ist ein Open-Source-Betreiber, der Bereitstellungen von kleinen und großen Sprachmodellen in Kubernetes-Clustern automatisiert. Das Add-on für den KI-Toolchain-Betreiber nutzt KAITO, um das Onboarding zu vereinfachen, Infrastrukturkosten zu sparen und die Rückschlusszeit für Open-Source-Modelle in einem AKS-Cluster zu reduzieren. Das Add-On stellt automatisch korrekt dimensionierte GPU-Knoten bereit und richtet den zugeordneten Rückschlussserver als Endpunktserver für Ihr ausgewähltes Modell ein.

Mit KAITO Version 0.3.0 oder höher können Sie unterstützte MIT- und Apache 2.0-lizenzierte Modelle mit den folgenden Features effizient optimieren:

  • Speichern Sie Ihre Umtrainierungsdaten als Containerimage in einer privaten Containerregistrierung.
  • Hosten Sie das neue Adapterebenenimage in einer privaten Containerregistrierung.
  • Ziehen Sie das Bild effizient zum Ableiten mit Adapterebenen in neuen Szenarien.

Anleitungen zu den ersten Schritten mit der Feinabstimmung von KAITO finden Sie in der Dokumentation zur Kaito-Optimierung der Arbeitsbereichs-API. Weitere Informationen zum Bereitstellen von Sprachmodellen mit KAITO in Ihren AKS-Clustern finden Sie im GitHub-Repository des KAITO-Modells.

Wichtig

Open-Source-Software wird überall in AKS-Dokumenten und -Beispielen erwähnt. Software, die Sie bereitstellen, ist von AKS-Vereinbarungen zum Servicelevel, der eingeschränkten Garantie und dem Azure-Support ausgeschlossen. Wenn Sie Open-Source-Technologie zusammen mit AKS nutzen, nutzen Sie die Supportoptionen, die von den jeweiligen Communitys und Projektbetreuenden angeboten werden, um einen Plan zu entwickeln.

Das GitHub-Repository von Ray beschreibt z. B. mehrere Plattformen, die in Antwortzeit, Zweck und Supportebene variieren.

Microsoft übernimmt die Verantwortung für die Erstellung der Open-Source-Pakete, die wir in AKS bereitstellen. Diese Verantwortung schließt den vollständigen Besitz des Build-, Scan-, Signatur-, Validierungs- und Hotfixprozesses sowie die Kontrolle über die Binärdateien in Containerimages ein. Weitere Informationen finden Sie unter Sicherheitsrisikomanagement für AKS und AKS-Supportabdeckung.

Nächste Schritte

Weitere Informationen zu containerisierten KI- und Machine Learning-Workloads in AKS finden Sie in den folgenden Artikeln: