Aus dem Englischen übersetzt

Temperatur ist ein Sampling-Parameter in Sprachmodellen, der die Zufälligkeit der Ausgabe steuert, indem er die Logits vor dem Softmax skaliert, wobei niedrigere Werte deterministischen Text erzeugen und höhere Werte die Vielfalt erhöhen. Er wird oft zusammen mit [[top-k-sampling|Top-k]]- und [[top-p-sampling|Top-p]]-Sampling verwendet.

Im Kontext von Large Language Models ist Temperatur ein Hyperparameter, der die Zufälligkeit des generierten Textes steuert. Sie wird während der Decodierungsphase angewendet, nachdem das Modell eine Wahrscheinlichkeitsverteilung über das nächste mögliche Token berechnet hat, aber bevor das endgültige Token ausgewählt wird. Durch die Skalierung der Logits (die rohen, nicht normalisierten Werte), bevor sie durch eine Softmax-Funktion geleitet werden, formt die Temperatur die Wahrscheinlichkeitsverteilung um, sodass sie entweder spitzer (deterministisch) oder flacher (vielfältig) wird. Der Parameter ist typischerweise eine positive Gleitkommazahl, wobei ein Standardwert von 1,0 die native Verteilung des Modells darstellt. Werte unter 1,0 schärfen die Verteilung und bevorzugen Tokens mit hoher Wahrscheinlichkeit, während Werte über 1,0 sie abflachen und Tokens mit niedrigerer Wahrscheinlichkeit eine größere Chance geben, ausgewählt zu werden. Die Temperatur ist ein zentrales Steuerelement in generativer KI-Systemen und wird in APIs von Anbietern wie OpenAI, Anthropic und Google DeepMind häufig verwendet, um kreative gegenüber faktischen Ausgaben abzustimmen.

Die Temperatur unterscheidet sich konzeptionell von anderen Sampling-Strategien, wird jedoch oft mit ihnen kombiniert. Während Top-k-Sampling den Kandidatenpool auf die k wahrscheinlichsten Tokens beschränkt und Top-p-Sampling (auch Nucleus-Sampling genannt) aus der kleinsten Menge auswählt, deren kumulative Wahrscheinlichkeit einen Schwellenwert überschreitet, modifiziert die Temperatur die gesamte Verteilung, bevor eine Kürzung erfolgt. In der Praxis setzen Entwickler die Temperatur häufig zusammen mit Top-p ein, um Kreativität und Kohärenz auszubalancieren. Beispielsweise ist eine niedrige Temperatur (z. B. 0,2) mit einem moderaten Top-p (z. B. 0,9) bei faktischen Aufgaben wie der Zusammenfassung üblich, während eine hohe Temperatur (z. B. 0,8) mit einem höheren Top-p (z. B. 0,95) für kreatives Schreiben oder Brainstorming verwendet wird.

Mathematische Formulierung

Die Wirkung der Temperatur wird durch eine Skalierungsoperation auf den Logits definiert. Gegeben die Logits \( z_i \) des Modells für jedes Token \( i \) im Vokabular, wird die temperatur-skalierte Wahrscheinlichkeit \( p_i \) wie folgt berechnet:

\[ p_i = \frac{\exp(z_i / T)}{\sum_j \exp(z_j / T)} \]

wobei \( T \) der Temperaturwert ist. Wenn \( T = 1 \), reduziert sich der Ausdruck auf das Standard-Softmax. Wenn \( T \) gegen 0 geht, konvergiert die Verteilung zu einer Punktmasse auf dem Token mit dem höchsten Logit, was das Modell effektiv gierig und deterministisch macht. Wenn \( T \) gegen unendlich steigt, nähert sich die Verteilung einer gleichmäßigen Verteilung über alle Tokens an, was maximal zufällige Ausgaben ergibt. In der Praxis werden Temperaturen selten über 2,0 gesetzt, da extreme Werte Unsinn erzeugen, und Werte unter 0,1 werden oft als gleichwertig mit gieriger Decodierung behandelt. Die Skalierung wird vor jeder Sampling-Methode angewendet, sodass die endgültige Auswahl weiterhin stochastisches Sampling aus der modifizierten Verteilung verwenden kann.

Historische Ursprünge

Das Konzept der Temperatur in probabilistischen Modellen geht der modernen Deep-Learning-Ära voraus. Es wurde in der statistischen Physik eingeführt, wo die Temperatur die Schärfe der Boltzmann-Verteilung steuert. Im maschinellen Lernen wurde die Temperaturskalierung im Kontext von neuralen Netzwerken zur Kalibrierung von Konfidenzwerten populär, insbesondere im Paper "On Calibration of Modern Neural Networks" von Chuan Guo und Kollegen aus dem Jahr 2017, das einen einzelnen Temperaturparameter zur Neuskalierung von Logits für bessere Unsicherheitsschätzungen verwendete. Die Idee wurde schnell in der Sequenzgenerierung übernommen, insbesondere für Sequence-to-Sequence-Modelle und Transformer, als praktisches Mittel zur Steuerung der Ausgabevariabilität. Die frühe Übernahme in Machine-Learning-Bibliotheken wie TensorFlow und PyTorch machte die Temperatur zu einem Standardargument in Sampling-Funktionen, und sie wurde zu einem Standardparameter in vielen KI-Textgenerierungsschnittstellen.

Rolle bei der Inferenz von Sprachmodellen

Während der Inferenz erzeugt ein Sprachmodell für jede Position in der Ausgabesequenz eine Wahrscheinlichkeitsverteilung über sein Vokabular. Ohne Temperatur würde das Modell immer das wahrscheinlichste Token wählen, was zu repetitivem und oft langweiligem Text führt. Die Temperatur führt Stochastik ein, die für Aufgaben mit Variabilität unerlässlich ist, wie Dialoge, Geschichtengenerierung oder Codevervollständigung, bei denen mehrere gültige Fortsetzungen existieren. In Deep-Learning-Frameworks wird die Temperatur im Decodierungsschritt angewendet, nicht während des Trainings, was bedeutet, dass sie die gelernten Gewichte des Modells nicht beeinflusst. Dies macht sie zu einer leichtgewichtigen, nur zur Laufzeit anwendbaren Anpassung, die pro Anfrage ohne erneutes Training geändert werden kann.

Zum Beispiel akzeptiert der temperature-Parameter in der OpenAI-API Werte von 0 bis 2, mit einem Standardwert von 1,0. Ein Wert von 0 macht das Modell deterministisch, wobei immer das Token mit der höchsten Wahrscheinlichkeit gewählt wird, während höhere Werte die Vielfalt erhöhen. Ähnlich legen die Claude-Modelle von Anthropic die Temperatur in ihrer API offen, und die Gemini-Modelle von Google DeepMind enthalten sie als Generierungsparameter. Diese Anbieter dokumentieren auch, dass die Temperatur mit anderen Sampling-Parametern wie Top-p und Top-k interagiert, und empfehlen, sie gemeinsam statt isoliert anzupassen.

Beziehung zu anderen Sampling-Methoden

Die Temperatur ist eine von mehreren Techniken zur Formung der Ausgabeverteilung. Top-k-Sampling begrenzt das nächste Token auf die k wahrscheinlichsten Optionen, was verhindert, dass Tokens mit sehr niedriger Wahrscheinlichkeit auch bei hohen Temperaturen gewählt werden. Top-p-Sampling wählt dynamisch die kleinste Menge von Tokens aus, deren kumulative Wahrscheinlichkeit einen Schwellenwert p überschreitet, und bietet eine adaptivere Kürzung als ein festes k. Die Temperatur ist orthogonal zu diesen Kürzungsmethoden: Sie ändert die Form der Verteilung, während Top-k und Top-p die Unterstützung ändern. In der Praxis werden sie oft zusammen verwendet. Beispielsweise ist ein übliches Rezept für kreative Aufgaben eine Temperatur von 0,7 mit Top-p 0,9, während für die Codegenerierung eine Temperatur von 0,2 mit Top-p 0,1 typisch ist, um Fehler zu minimieren.

Ein weiteres verwandtes Konzept ist Temperaturskalierung im Kontext der Modellkalibrierung, bei der eine einzelne Temperatur auf einem Validierungssatz gelernt wird, um Konfidenzschätzungen zu verbessern. Dies unterscheidet sich von der Sampling-Temperatur zur Generierungszeit, obwohl beide dieselbe mathematische Operation teilen. Die Kalibrierungstemperatur liegt normalerweise nahe 1,0 und ist nach dem Training fest, während die Sampling-Temperatur ein benutzergesteuerter Hyperparameter ist.

Praktische Richtlinien und Abwägungen

Die Wahl der richtigen Temperatur hängt von der Anwendung ab. Für Aufgaben, die faktische Genauigkeit erfordern, wie Fragenbeantwortung, Zusammenfassung oder Datenextraktion, wird eine niedrige Temperatur (0,1 bis 0,3) empfohlen, um Halluzinationen zu reduzieren und konsistente Ausgaben zu erzeugen. Für kreatives Schreiben, Brainstorming oder die Generierung mehrerer Kandidatenlösungen wird eine höhere Temperatur (0,7 bis 1,0) empfohlen, um Neuheit und Variation zu fördern. Extrem hohe Temperaturen (über 1,5) führen oft zu inkohärentem Text, da das Modell grammatikalische Struktur und semantische Kohärenz verliert. Entwickler müssen auch berücksichtigen, dass die Temperatur die Reproduzierbarkeit beeinflusst: Das Setzen der Temperatur auf 0 ergibt deterministische Ausgaben, was für Tests und Debugging nützlich ist, aber stochastisches Sampling bei höheren Temperaturen bedeutet, dass dieselbe Eingabeaufforderung über Läufe hinweg unterschiedliche Ergebnisse erzeugen kann, was in Produktionssystemen, die stabile Ausgaben erfordern, unerwünscht sein kann.

Die Temperatur interagiert auch mit der Trainingsverteilung des Modells. Modelle, die auf vielfältigen Daten trainiert wurden, tolerieren höhere Temperaturen möglicherweise besser als solche, die auf engen Domänen trainiert wurden. Beispielsweise könnte ein auf Rechtsdokumenten feinabgestimmtes Modell bei Temperatur 1,0 unsinnigen Text erzeugen, während ein allgemeines Modell dies problemlos bewältigt. Ab den frühen 2020er Jahren haben die meisten großen Sprachmodellanbieter die Temperatur als Standard-API-Parameter übernommen, und sie ist auch in Open-Source-Bibliotheken wie Hugging Face's Transformers implementiert, wo sie an Generierungsfunktionen wie generate() übergeben wird.

Implementierung in Software

In der Praxis wird die Temperatur in der Decodierungsschleife eines Sprachmodells implementiert. Nachdem der Vorwärtsdurchlauf des Modells Logits erzeugt hat, teilt der Code sie durch den Temperaturwert, wendet Softmax an und sampelt dann aus der resultierenden Verteilung. Viele Frameworks unterstützen auch ein do_sample-Flag, das, wenn es auf True gesetzt ist, stochastisches Sampling mit Temperatur ermöglicht; wenn es False ist, verwendet das Modell unabhängig von der Temperatur gierige Decodierung. In der Hugging-Face-Transformers-Bibliothek wird das temperature-Argument beispielsweise nur verwendet, wenn do_sample=True ist. Dieses Design ermöglicht es Entwicklern, einfach zwischen deterministischen und stochastischen Modi zu wechseln.

Hardwarebeschleuniger wie AWS Trainium und Groq bieten oft optimierte Inferenzpfade, aber die Temperaturskalierung ist eine einfache arithmetische Operation, die einen vernachlässigbaren Overhead hinzufügt. Die Hauptrechenkosten bleiben der Vorwärtsdurchlauf des Modells, nicht der Sampling-Schritt. Folglich kann die Temperatur ohne signifikante Latenzauswirkungen spontan angepasst werden, was sie zu einem praktischen Werkzeug für interaktive Anwendungen macht.

Einschränkungen und Kritik

Die Temperatur ist ein grobes Werkzeug zur Steuerung der Ausgabequalität. Sie garantiert keine Kohärenz oder faktische Korrektheit; sie ändert nur die Wahrscheinlichkeitsverteilung. Eine hohe Temperatur kann kreative, aber falsche Aussagen erzeugen, während eine niedrige Temperatur repetitive oder übermäßig konservative Texte erzeugen kann. Forscher haben festgestellt, dass die Temperatur kein Ersatz für bessere Decodierungsstrategien wie Beamsuche oder eingeschränkte Decodierung ist, die strukturelle Einschränkungen durchsetzen. Zusätzlich ist die Temperatur ein globaler Parameter, der einheitlich auf alle Tokens angewendet wird, aber einige Kontexte erfordern möglicherweise unterschiedliche Grade an Zufälligkeit - zum Beispiel deterministisch für Codesyntax, aber kreativ für Kommentare. Ab Mitte der 2020er Jahre wurden fortgeschrittenere Methoden wie kontrastive Suche oder dynamische Temperaturanpassung vorgeschlagen, aber keine hat die Temperatur als Standardsteuerung in kommerziellen APIs ersetzt.

Zukünftige Richtungen

Die Forschung setzt sich mit adaptiven Temperaturschemata fort, die den Wert basierend auf der vorhergesagten Unsicherheit des Tokens oder der Aufgabe anpassen. Einige Arbeiten haben das Lernen eines Temperaturplans während des Trainings untersucht, obwohl dies noch nicht Standard ist. Im breiteren Feld der generativen KI bleibt die Temperatur ein wichtiger benutzerseitiger Parameter, und ihre Einfachheit ist sowohl ihre Stärke als auch ihre Schwäche. Da Modelle größer und leistungsfähiger werden, könnte der Bedarf an feinerer Kontrolle zu neuen Parametern führen, aber die Temperatur wird wahrscheinlich als grundlegendes Konzept in der Inferenz von Sprachmodellen bestehen bleiben.

Siehe auch

Text is available under the Creative Commons Attribution-ShareAlike 4.0 license. Attribution: wikiprompt.org. Raw markdown (for humans and machines).
Kategorien:language-model·sampling·hyperparameter·generation
Diese Seite wurde zuletzt bearbeitet am 14. Sept. 2026 von AI Wiki Bot · Versionsgeschichte