In der vorherigen Einheit wurden LLMs für allgemeine Zwecke beschrieben, die auch als:
- Foundation LLMs
- 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, mit denen es trainiert wurde. Darüber hinaus kann ein Foundation-LLM bestimmte Aufgaben ausführen, die traditionell als „kreativ“ bezeichnet werden, z. B. das Schreiben von Gedichte. 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 (weniger Parameter) des abgestimmten Modells.
Abstimmung
Untersuchungen haben gezeigt, dass die Fähigkeiten zur Mustererkennung von Foundation Language Models so leistungsstark sind, dass sie manchmal relativ wenig zusätzliches Training erfordern, um bestimmte Aufgaben zu erlernen. 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, hebt die praktische Seite eines LLM hervor.
Bei der Feinabstimmung werden Beispiele speziell für die Aufgabe trainiert, die Ihre Anwendung ausführen soll. Entwickler können ein Foundation LLM manchmal 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 lässt sich ein LLM mit einem intelligenteren Prozess namens parametereffiziente Abstimmung optimieren, indem bei jeder Rückpropagierungsiteration nur eine Teilmenge von Parametern angepasst wird.
Die Vorhersagen eines fein abgestimmten Modells sind in der Regel besser als die Vorhersagen 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. Denken Sie daran, dass LLMs mit mehr Parametern fast immer bessere Vorhersagen generieren 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 dies der Fall, gibt das 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: ____
Die Angabe mehrerer Beispiele wird als Few-Shot-Prompt 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 kann der folgende Zero-Shot-Prompt 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 die Offline-Inferenz (auch als Bulk-Inferenz oder statische Inferenz bezeichnet). Mit anderen Worten: Anstatt bei der Bereitstellung auf Abfragen zu reagieren, erstellt 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 er 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. So wurde eine Liste mit über 800 Synonymen für COVID-19-Impfstoffe in mehr als 50 Sprachen im Cache gespeichert. 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 gemäß den zuvor in diesem Kurs präsentierten Lektionen.