In der vorherigen Einheit wurden LLMs für allgemeine Zwecke beschrieben, die auch folgende Namen haben:
- LLMs für die Grundlagen
- LLMs
- vortrainierte LLMs
Ein Foundation LLM wird mit ausreichend natürlicher Sprache trainiert, um bemerkenswert viel über Grammatik, Wörter und Redewendungen zu „wissen“. Ein Foundation Language Model kann hilfreiche Sätze zu Themen generieren, für die es trainiert wurde. Darüber hinaus kann ein LLM der Basisebene bestimmte Aufgaben ausführen, die traditionell als „kreativ“ bezeichnet werden, z. B. das Verfassen von Gedichten. Der generative Textausgang eines Foundation LLM ist jedoch keine Lösung für andere Arten von gängigen ML-Problemen wie Regression oder Klassifizierung. Für diese Anwendungsfälle kann ein LLM als Plattform und nicht als Lösung dienen.
Um eine LLM-Grundlage in eine Lösung umzuwandeln, die den Anforderungen einer Anwendung entspricht, ist ein Prozess erforderlich, der als Feintuning bezeichnet wird. Ein sekundärer Prozess namens Destillation generiert eine kleinere Version (mit weniger Parametern) des optimierten Modells.
Abstimmung
Studien zeigen, dass die Mustererkennungsfähigkeiten von Grundlagenmodellen für Sprache so leistungsstark sind, dass sie manchmal relativ wenig zusätzliches Training für das Erlernen bestimmter Aufgaben benötigen. Durch diese zusätzliche Schulung kann das Modell bessere Vorhersagen für eine bestimmte Aufgabe treffen. Dieses zusätzliche Training, das als Feintuning bezeichnet wird, holt das Beste aus einem LLM heraus.
Bei der Feinabstimmung werden Beispiele speziell für die Aufgabe trainiert, die Ihre Anwendung ausführen soll. Entwickler können manchmal ein Foundation LLM mit nur wenigen hundert oder wenigen tausend Trainingsbeispielen optimieren.
Trotz der relativ geringen Anzahl von Trainingsbeispielen ist die Standard-Feinabstimmung oft rechenintensiv. Das liegt daran, dass bei der Standard-Feinabstimmung das Gewicht und die Voreingenommenheit jedes Parameters bei jeder Backpropagation-Iteration aktualisiert werden. Glücklicherweise kann ein intelligenterer Prozess namens parametereffiziente-Optimierung ein LLM optimieren, indem bei jeder Backpropagation-Iteration nur ein Teil der Parameter angepasst wird.
Die Vorhersagen eines fein abgestimmten Modells sind in der Regel besser als die des Foundation LLM. Ein optimiertes Modell enthält jedoch dieselbe Anzahl von Parametern wie das zugrunde liegende LLM. Wenn also ein Foundation Model zehn Milliarden Parameter enthält, enthält auch die optimierte Version zehn Milliarden Parameter.
Destillation
Die meisten optimierten LLMs enthalten eine enorme Anzahl von Parametern. Daher erfordern LLMs für die Grundlagen enorme Rechen- und Umgebungsressourcen, um Vorhersagen zu generieren. Beachten Sie, dass ein Großteil dieser Parameter für eine bestimmte Anwendung in der Regel irrelevant ist.
Bei der Destillation wird eine kleinere Version eines LLM erstellt. Das destillierte LLM generiert Vorhersagen viel schneller und benötigt weniger Rechen- und Umgebungsressourcen als das vollständige LLM. Die Vorhersagen des destillierten Modells sind jedoch in der Regel nicht ganz so gut wie die des ursprünglichen LLM. Wie Sie wissen, liefern LLMs mit mehr Parametern fast immer bessere Vorhersagen als LLMs mit weniger Parametern.
Prompt Engineering
Mit Prompt-Engineering können die Endnutzer eines LLM die Ausgabe des Modells anpassen. Das heißt, die Endnutzer klären, wie der LLM auf ihren Prompt reagieren soll.
Menschen lernen gut anhand von Beispielen. Das gilt auch für LLMs. Wenn einem LLM ein Beispiel präsentiert wird, wird dies als One-Shot-Prompt bezeichnet. Angenommen, Sie möchten, dass ein Modell die Familie einer Frucht im folgenden Format ausgibt:
Der Nutzer gibt den Namen einer Frucht ein: Das LLM gibt die Klasse dieser Frucht aus.
Bei einem One-Shot-Prompt wird dem LLM ein einzelnes Beispiel des vorherigen Formats angezeigt und es wird aufgefordert, eine Abfrage basierend auf diesem Beispiel abzuschließen. Beispiele:
peach: drupe apple: ______
Manchmal reicht auch ein einziges Beispiel. Ist das der Fall, gibt der LLM eine nützliche Vorhersage aus. Beispiele:
apple: pome
In anderen Fällen reicht ein einziges Beispiel nicht aus. Das heißt, der Nutzer muss dem LLM mehrere Beispiele zeigen. Der folgende Prompt enthält beispielsweise zwei Beispiele:
plum: drupe pear: pome lemon: ____
Das Eingeben mehrerer Beispiele wird als Few-Shot-Prompting bezeichnet. Die ersten beiden Zeilen des vorherigen Prompts können als Trainingsbeispiele betrachtet werden.
Kann ein LLM nützliche Vorhersagen ohne Beispiele liefern (Zero-Shot-Prompts)? Manchmal, aber LLMs mögen Kontext. Ohne Kontext würde der folgende Zero-Shot-Prompt möglicherweise Informationen zum Technologieunternehmen statt zum Obst zurückgeben:
apple: _______
Offline-Inferenz
Die Anzahl der Parameter in einem LLM ist manchmal so groß, dass die Online-Inferenz zu langsam ist, um für praktische Aufgaben wie Regression oder Klassifizierung verwendet zu werden. Daher setzen viele Entwicklerteams stattdessen auf Offline-Inferenzen (auch als Bulk-Inferenz oder statische Inferenz bezeichnet). Mit anderen Worten: Anstatt bei der Bereitstellung auf Abfragen zu reagieren, trifft das trainierte Modell im Voraus Vorhersagen und speichert diese dann im Cache.
Es spielt keine Rolle, ob es lange dauert, bis ein LLM seine Aufgabe erledigt hat, wenn es die Aufgabe nur einmal pro Woche oder einmal pro Monat ausführen muss.
In der Google Suche wurde beispielsweise ein LLM verwendet, um Offline-Inferenzen durchzuführen und eine Liste mit über 800 Synonyme für COVID-19-Impfstoffe in mehr als 50 Sprachen im Cache zu speichern. Die Google Suche nutzte dann die im Cache gespeicherte Liste, um Suchanfragen zu Impfstoffen im Live-Traffic zu identifizieren.
LLMs verantwortungsvoll verwenden
Wie jede Form des maschinellen Lernens haben auch LLMs im Allgemeinen die folgenden Voreingenommenheiten:
- von den Trainingsdaten unterscheiden.
- Die Daten, auf denen sie basieren.
Verwenden Sie LLMs fair und verantwortungsvoll und halten Sie sich an die Richtlinien in den Datenmodulen und im Fairness-Modul.