Alle 121Watt Bianca Baer Christian Kunz Christoph Röck Eva Schmuhalek Jens Fauldraht Long Liu Markus Hövener Search Engine Journal
14.03.2024 121Watt
Parameter wie Temperature und Top-P in LLMs
Podacst anhören
In diesem Artikel möchte ich dir die unterschiedlichen Parameter vorstellen, die du im OpenAI Playground findest, aber die du auch für andere Large Language Modelle (LLMs), wie, Gemini oder Mistral verwenden kannst. Ich möchte darstellen, wie du Parameter wie die Temperature, Top-P oder Presence Penalty bei der Erstellung von Texten, beim Arbeiten mit Daten oder der Entwicklung von Marketing-Strategien verwenden kannst.
- Definition: Was sind Parameter?
- OpenAI-Parameter: Zwischen Temperature, Top-P und Presence Penalty
- Detail: Die Parameter im Details
- Anwendungen: Die Anwendung von Parametern für bessere Ergebnisse
- LLMs: In welchen anderen LLMs findet man noch diese Parameter
- ChatGPT: Kann man Parameter in ChatGPT anwenden
- Ressourcen: Weitere Ressourcen und Links zu Parameter in OpenAI & Co.
Was sind Parameter von OpenAI & Co.?
Prompt-Engineering ist für viele die Formulierung guter und relevanter Prompts. Oft übersieht man aber, das es neben der Verwendung von Rollen, Instruktionen oder Methoden wie Few-Shot-Prompting oder Chain-of-Thought Prompting, es starke Werkzeuge gibt, wie die Verwendung der Parameter. Das sind im einzelnen die Temperature die „Zufälligkeit“ steuert, Top-P, der die Diversität der Wörter steuert, die Frequency Penalty das „Wiederholungen von Wörtern“ steuert und die Presence Penalty, das die „Wiederholung von Konzepten“ beeinflusst. Diese kannst du aber nur sehen, wenn du in den OpenAI Playground gehst, ein Projekt bei Google (Vertex) anlegst oder z.B. den Aleph Alpha Playground verwendest. Wir schauen uns mal die Parameter im Einzelnen an. Der Einfachheit halber werde ich mich jetzt auf den OpenAI Playground fokussieren, meine aber auch andere LLMs damit.
Was bedeutet der Parameter Temperature bei OpenAI?
Definition Temperature bei LLMs: Mit der Temperature kannst du im OpenAI Playground den Grad der Zufälligkeit des nächsten Tokens bestimmen. Wenn wir vereinfacht jetzt von der Zufälligkeit des nächsten Wortes reden, können wir mit einer niedrigen Temperatur steuern wie vorbestimmt oder kreativ das Sprachmodell (z.B. GPT-4) ist. Die Einstellungen der Temperatur reichen von O bis 2 bei OpenAI und bei Google und Aleph Alpha von 0 – 1
- Niedrige Temperature: Eine niedrige Temperature macht den Text vorhersagbar und konsistent. Bei einer Temperature von 0 wird immer das nächstwahrscheinliche Wort (Token) gewählt. Eine niedrige Temperature eignet sich besonders für Antworten, wo du Wert auf Präzision und wahre und richtige Antworten legst. Das können Anwendungen sein, wie das Arbeiten mit Daten, das Generieren von Code oder konservativen Texten sein.
- hohe Temperature: Ein hohe Temperature führt zu kreativen und ggf. auch unerwartbaren Ergebnissen, bei Werte über ca. 1,3 kann es auch sein, das nur noch Unsinn erzeugt wird.
Die Temperature kann in nicht in ChatGPT verwendet werden, aber du kannst die Logik hinter den Parameter-Einstellungen über deinen Prompt definieren. Beispiele für die Sprachwahl , wenn du eine „geringe Temperature“ brauchst:
- Was sind Best-Practices…?
- Was sind bewährte Schritte zur Analyse von..?
- Sei präzise und halte dich immer an Fakten
Beispiele für die Sprachwahl , wenn du eine „hohe Temperature“ brauchst:
- Erstelle eine kreative Text zu [Thema]…
- Entwickle eine unkonventionelle Ansatz
- Nutze einen kreativen und ungewöhnlichen Ansatz
Was bedeutet der Parameter Top-P bei OpenAI?
Definition: Der Top-P-Wert ( Nukleus-Sampling) bestimmt, wie das LLM die Vielfalt seiner Antworten steuert. Beim Top-P-Sampling werden nicht alle folgenden Wörter (Token) berücksichtigt, sondern das nächste Wort (Token) wird aus einer kleineren Menge von Wörtern ausgewählt, die zusammen eine kumulative Wahrscheinlichkeit über dem Top-P-Wert haben. Der Top-P Wert ist zwischen 0-1 darstellbar. Dabei bedeutet 0 -> 0% und 1 -> 100%
Top-P = 0,5: Dies bedeutet, dass nur die Wörter in Betracht gezogen werden, die zusammen mindestens 50% der gesamten Wahrscheinlichkeit darstellen, während weniger wahrscheinliche Optionen verworfen werden. Dadurch bleibt eine angemessene Bandbreite an möglichen Antworten erhalten. Ich habe mal im folgenden ein Beispiel um das besser darzustellen.
Beispiel: Angenommen, wir haben eine Situation, in der ein Sprachmodell, die nächste Sehenswürdigkeit in Paris vorschlagen soll, die man als Tourist besuchen könnte. Du hast eine Liste möglicher Sehenswürdigkeiten (A, B, C, D) mit zugehörigen Wahrscheinlichkeiten, basierend darauf, wie relevant oder populär sie sind:
- Wort A (Eiffelturm) – 40%
- Wort B (Louvre) – 30%
- Wort C (Notre-Dame) – 20%
- Wort D (Montmartre) – 10%
Wir setzen den Top-P im OpenAI Playground auf 0,9 (90%). Dies bedeutet, dass wir eine kumulative Wahrscheinlichkeit von bis zu 90% der möglichen nächsten Sehenswürdigkeiten in Paris festlegen. Die Berechnung kann dann wie folgt aussehen. Die Wahrscheinlichkeiten werden solange addiert von bis wir den Top-P-Wert erreicht oder überschritten haben.
- Schritt 1: Kumulative Wahrscheinlichkeit nach Hinzufügen von Wort A (Eiffelturm): 40%
- Schritt 2: Kumulative Wahrscheinlichkeit nach Hinzufügen von Wort B (Louvre): 40% + 30% = 70%
- Schritt 3: Kumulative Wahrscheinlichkeit nach Hinzufügen von Wort C (Notre-Dame): 70% + 20% = 90%
Beim dritten Schritt erreichst du jetzt den Top-P Wert von 0,9 also 90% mit den Wörtern A, B und C.
Auswahl basierend auf Top-P: Aufgrund der Top-P-Einstellung von 0,9 werden Eiffelturm, Louvre und Notre-Dame als mögliche nächste Wörter (Sehenswürdigkeiten) in Betracht gezogen. Der Montmartre würde ignoriert, da das Hinzufügen dieser Option die kumulative Wahrscheinlichkeit über 90% treiben würde. Im Ergebnis bedeutet das, das Modell würde zufällig eine der Sehenswürdigkeiten Eiffelturm, Louvre oder Notre-Dame vorschlagen würde, aber den Montmartre auslassen würde. Diese Einstellung würde eine vielfältigere Auswahl von Wörtern, aber innerhalb gesetzter (sinnvoller) Grenzen festlegen. Hier im folgenden mal eine Visualisierung der verschiedenen Top-P Einstellungen
Kann man Temperature und Top-P kombinieren?
Was passiert eigentlich, wenn man die Parameter miteinander kombiniert? Noch einmal kurz zur Wiederholung
- Temperature: Eine höhere Temperature führt zu einer gleichmäßigeren Verteilung über die verschiedenen Sehenswürdigkeiten, was mehr Vielfalt in den generierten Texten ermöglicht
- Top-P: Ein niedriger Top-P-Wert konzentriert die Auswahl auf die wahrscheinlichsten Optionen, während ein höherer Top-P-Wert mehr Vielfalt zulässt, indem er die kumulative Wahrscheinlichkeit auf eine größere Anzahl von Optionen verteilt.
Zum besseren Verständnis haben wir jetzt noch einmal das Beispiel mit den Sehenswürdigkeiten in Paris und mit den ursprünglichen Wahrscheinlichkeiten von
- Wort A (Eiffelturm) – 40%
- Wort B (Louvre) – 30%
- Wort C (Notre-Dame) – 20%
- Wort D (Montmartre) – 10%
Wir verwenden jetzt verschiedene Werte für die Einstellung Temperature. In der folgenden Tabelle siehst du, wie sich die verschiedene Wahrscheinlichkeiten durch die Anwendung von Temperature verändern. Die Berechnungen habe ich mit ChatGPT gemacht
Was heisst das jetzt?: Durch die Temperature glättet sich die Wahrscheinlichkeitsverteilung und wie man hier bei einer Temperature von 2 sieht man, das die Sehenswürdigkeit Montmatre von 0% auf 16,27% steigt.
Hintergrund: Was passiert jetzt mit der Veränderung der Temperature in verschiedenen Szenarien? Zur Berechnung wird hier die Softmax-Funktion verwendet und über die Temperature das „Chaos“ gesteuert. Wer daran Interesse hat gibt es hier und hier mehr Informationen.
Wie können jetzt verschiedene Szenerien aussehen?
Niedrige Temperatur (0,5) mit hohem Top-P: Hier erhältst duTexte, die sowohl logisch als auch reich an Vielfalt sind. Diese Kombination passt gut für Inhalte, bei denen es auf Genauigkeit und Verständlichkeit ankommt, aber dennoch eine gewisse Originalität und ein breites Spektrum an Ausdrücken aufweisen. Diese Einstellung stellt eine Balance zwischen Präzision und Kreativität dar. Gute Einsatzmöglichkeiten sind hier zum Be was besonders in Bildungsmaterialien, Fachartikeln oder sogar in anspruchsvollen Geschäftsdokumenten von Vorteil sein kann. Ich habe jetzt hier mal verschiedenen Einstellungen in einer Matrix simuliert, damit du besser verstehst, wie du Temperature und Top-P in ChatGPT über Worte verwenden könntest
Temperatur
/ Top-P
|
Top-P 0.3 | Top-P 0.7 | Top-P 1.0 |
---|---|---|---|
Temperatur 0.5 | Schreibe einen kurzen und prägnanten Überblick über ein neues Smartphone, fokussiere auf die meist gefragten Features. | Beschreibe ein neues Smartphone mit seinen Schlüsselfunktionen und hebe ein paar weniger bekannte, aber interessante Features hervor. | Erstelle einen umfassenden Guide zum neuen Smartphone, der alle Features und mögliche Nutzungsszenarien abdeckt. |
Temperatur 1.0 | Schreibe eine kreative Einführung für ein neues Smartphone, konzentriere dich dabei auf die innovativsten Features. | Entwickle eine lebhafte und vielseitige Präsentation eines neuen Smartphones, die sowohl die Hauptfunktionen als auch versteckte Perlen beinhaltet. | Erzähle eine fesselnde Geschichte über das Leben, das mit dem neuen Smartphone möglich wird, einschließlich aller denkbaren Features und Anwendungen. |
Temperatur 1.3 | Denk ganz frei und wage einen futuristischen Blick auf ein neues Smartphone, fokussiere auf ein oder zwei ungewöhnliche Features, die es von allem bisher Dagewesenen abheben. | Entwerfe einen visionären und breit gefächerten Text über ein neues Smartphone, der unkonventionelle Features und Nutzungsideen umfasst. | Erschaffe eine fantasievolle und grenzüberschreitende Geschichte, die zeigt, wie ein neues Smartphone die Welt verändern könnte, ohne Einschränkungen bei den Features oder dem Einsatzbereich. |
Du hast Interesse an Mathematik? Du siehst auch hier die verschiedenen Möglichkeiten von Temperature und Top-P kombiniert. Man sieht hier relativ schnell, das einige Kombinationen keinen großen Sinn machen. Deswegen habe ich in der oberen Tabelle nur Kombinationen gewählt, die auch im Prompting Sinn machen können.
Welche weiteren Parameter gibt es?
Definition: Die Presence Penalty ist ein weiterer Parameter im OpenAI Playground und beeinflusst, wie neue Ideen oder Konzepte in dem Output eingeführt werden. Ein hoher Wert beeinflußt, ob bereits angesprochene Themen weniger wahrscheinlich eingeführt werden. Ziel einer hohen Presence Penalty
- Niedrige Presence Penalty: Führt zu „konservativeren“ Ergebnissen
- Hohe Presence Penalty: Führt zu kreativeren Lösungen
Wie kombiniert man Top-P mit der Presence Penalty?
Nur kurz noch einmal als Wiederholung
Presence Penalty führt zu Reduzierung von Wiederholungen: Durch das Einstellen einer Presence Penalty verringerst du die Wahrscheinlichkeit von Wörtern oder Phrasen, die bereits in deinem Text vorkamen. Dies hilft dir, Wiederholungen zu minimieren und die Einzigartigkeit deines Inhalts zu steigern. Je höher du die Penalty setzt, desto mehr neigt das Modell dazu, neue und unterschiedliche Konzepte oder Vokabular einzuführen.
Wie sieht eine kombinierte Anwendung aus?
Top-P – Steuerung der Wahrscheinlichkeitsverteilung: Wenn du Top-P anwendest, begrenzt du die Auswahlmöglichkeiten für das nächste Wort oder die nächste Phrase auf einen bestimmten Prozentsatz der höchsten Wahrscheinlichkeiten. Das bedeutet, du schließt weniger wahrscheinliche und potenziell unzusammenhängende Optionen aus, wodurch die Kohärenz und Relevanz in deinem generierten Text gefördert wird. Gleichzeitig lässt du eine gewisse Variabilität und Kreativität zu. im Ergebnis führt das dann zu
- Erhöhte Textdiversität ohne Qualitätseinbußen: Wenn du beide Methoden kombinierst, erreichst du ein Gleichgewicht zwischen Logik und Kohärenz (durch Top-P) und Originalität bzw. Vielfalt (durch Presence Penalty). Das ermöglicht es dir, thematisch fokussiert und kohärent zu bleiben, während du gleichzeitig Redundanz vermeidest und frische, vielfältige Inhalte generierst.
- Adaption: Durch die Feinabstimmung beider Parameter kannst du die Textgenerierung flexibel an unterschiedliche Anwendungsfälle anpassen. Für kreatives Schreiben oder Anwendungen, bei denen Originalität im Vordergrund steht, kann eine höhere Presence Penalty sinnvoll sein. Für Aufgaben, bei denen es auf Präzision und thematische Enge ankommt, hilft dir eine genaue Einstellung von Top-P, die Balance zu halten.
Mit dieser Kombination hast du die Möglichkeit, deine Texte so zu steuern, dass sie sowohl thematisch kohärent als auch reich an neuen Ideen und Ausdrucksweisen sind. Das ist besonders wertvoll für anspruchsvolle Anwendungen wie gute und tiefgreifende Ratgeber Inhalte oder journalistische Inhalte
Fazit zu Temperature, Top-P & Co.
Die „Temperature“ , „Top-P“ und „Presence Penalty“ sind wichtige Parameter, die du in OpenAI Modelle wie GPT-4 verwenden kannst um die „Wahrscheinlichkeiten“ der Ausgabe zu steuern. Auch wenn du die Parameter nur im Playground der einzelnen Anbieter verwenden kannst und nicht in ChatGPT, kann die Logik dahinter dir helfen deine Prompts deutlich besser zu machen. Weitere interessante Informationen zu besseren Prompts findest du hier zu Prompt-Patterns in ChatGPT & Co.
Interessante Ressourcen zu den Parametern
- Ein umfangreicher Guide zu Parametern hier bei Medium
- Mehr zur Temperature und Parametern
- Was ist Softmax und Temeprature?
- Hier mein Link zu einem ChatGPT-Chat zu den Parametern
- in der API-Referenz von OpenAI findest du Details zu den Parametern
Die letzten 10 Podasts von 121Watt
- 06.06.2024 - GPT-4o (omini)
- 14.03.2024 - Parameter wie Temperature und Top-P in LLMs
- 19.02.2024 - CustomGPT-Avian
- 21.11.2023 - Die 9 besten Custom GPTs 2023
- 08.11.2023 - Custom GPTs – Eigene GPTs mit ChatGPT erstellen
- 12.10.2023 - 5 wichtige Prompt-Patterns im Prompt Engineering
- 11.09.2023 - Advanced Data Analysis (Code-Interpreter) ChatGPT – 11 coole Anwendungen
- 21.07.2023 - Custom Instructions von ChatGPT
- 14.07.2023 - Der ChatGPT Code-Interpreter – alles zum Hintergrund und Anwendungen
- 27.06.2023 - VoxScript ChatGPT-Plugin: Features & Beispielprompts