Nucleus Sampling
Erfahre, wie Nucleus Sampling (Top-p) Tokens für die KI-Textgenerierung auswählt, und vergleiche es mit Top-k, Greedy Decoding und Temperatur, um die Ausgabediversität anzupassen.
Nucleus-Sampling, auch Top-p-Sampling genannt, ist eine Methode zur Auswahl des nächsten Token während der KI-Textgenerierung. Anstatt immer das wahrscheinlichste Token zu wählen, erstellt das Modell eine engere Auswahlliste, deren Wahrscheinlichkeiten sich zu mindestens einem gewählten Schwellenwert summieren, und zieht daraus nach dem Zufallsprinzip. Die Auswahlliste ändert sich bei jeder Vorhersage: Sie kann klein sein, wenn eine Fortsetzung offensichtlich ist, und größer, wenn mehrere Fortsetzungen plausibel sind.
So funktioniert Nucleus-Sampling#
Ein Sprachmodell weist jedem möglichen nächsten Token eine Wahrscheinlichkeit zu. Diese Wahrscheinlichkeiten werden üblicherweise aus den Ausgabewerten des Modells mithilfe von Softmax berechnet, wodurch sich die Werte auf eins summieren. Das Nucleus-Sampling sortiert die Token vom wahrscheinlichsten zum unwahrscheinlichsten, nimmt sie auf, bis ihre kumulative Wahrscheinlichkeit den Schwellenwert p erreicht, schließt den Rest aus und zieht aus den einbezogenen Token. Hier steht p für die Wahrscheinlichkeitsmasse und nicht für die Wahrscheinlichkeit eines einzelnen Token. Die Softmax-Dokumentation von PyTorch erklärt die Wahrscheinlichkeitsumwandlung, während der Decodierungsleitfaden von IBM den kumulativen Grenzwert beschreibt. (docs.pytorch.org)
Angenommen, vier mögliche nächste Token haben Wahrscheinlichkeiten von 0,50, 0,25, 0,15 und 0,10. Bei top_p=0.80 ergeben die ersten beiden zusammen nur 0,75, sodass das dritte ebenfalls einbezogen wird und die Auswahlliste auf 0,90 bringt. Das vierte wird ausgeschlossen. Das Modell zieht dann aus den ersten drei proportional zu deren Wahrscheinlichkeiten nach der Normalisierung; es gibt keinem eine gleiche Chance. Der Grenzwert kann p überschreiten, da das Token, das ihn überschreitet, in der Auswahlliste verbleibt. Die Erklärung von Top-p durch Google Cloud beschreibt dieselbe Token-Auswahlregel. (cloud.google.com)
Diese Auswahl erfolgt nach jedem generierten Token erneut. Wenn sich der Satz weiterentwickelt, berechnet das Modell eine neue Verteilung und damit einen neuen Nucleus.
Top-p im Vergleich zu Top-k, Greedy-Decoding und Temperatur#
Diese Einstellungen beeinflussen verschiedene Teile der Generierung:
- Top-k-Sampling behält eine feste Anzahl von Kandidaten bei, wie etwa die fünf wahrscheinlichsten Token. Top-p behält genügend Kandidaten bei, um einen Wahrscheinlichkeitsschwellenwert zu erreichen, sodass die Auswahlliste keine feste Größe hat.
- Greedy-Decoding wählt immer das einzelne wahrscheinlichste Token aus. Es ist vorhersehbar, bietet jedoch keine der Variationen, die das Sampling ermöglicht.
- Temperatur ändert, wie stark das Modell Token mit hoher Wahrscheinlichkeit vor der Auswahl bevorzugt. Niedrigere Temperaturen konzentrieren die Wahrscheinlichkeit auf die führenden Optionen; höhere Temperaturen verteilen sie gleichmäßiger. Top-p legt stattdessen einen kumulativen Grenzwert für die resultierende Verteilung fest.
Implementierungen können diese Steuerelemente kombinieren, aber ihre Interaktion macht die Ergebnisse schwerer interpretierbar. Ändern Sie beim Experimentieren jeweils nur eine Einstellung. Die Referenz zu den OpenAI-Chat-Completions-Parametern beschreibt top_p und empfiehlt, entweder diesen oder die Temperatur anzupassen, statt beide gleichzeitig. (platform.openai.com)
Wo es in der Praxis darauf ankommt#
In einem Kundensupport-Chatbot kann Nucleus-Sampling mehrere natürliche Formulierungen einer Routineantwort ermöglichen, ohne auf jede unwahrscheinliche Fortsetzung zurückzugreifen. Beispielsweise kann ein Assistent, der eine Rückgaberichtlinie erklärt, seinen Eröffnungssatz variieren und gleichzeitig die im Prompt bereitgestellten Richtliniendetails beibehalten. Das Sampling überprüft diese Details nicht: Eine flüssige Antwort kann dennoch falsch sein, weshalb Faktenprüfungen und eine angemessene Fundierung weiterhin erforderlich sind.
In image captioning, a vision-language model may have several reasonable ways to describe the same street scene. Top-p can vary the wording of captions while filtering out low-probability token choices. A visual pipeline might first use Ultralytics YOLO26 for object detection, then provide detected objects as context to a caption generator. YOLO’s detection step does not use nucleus sampling to choose its object labels; the setting applies to the downstream language-generation step. The TensorFlow image-captioning tutorial illustrates how visual input and a text decoder fit together. (ibm.com)
Ausprobieren von Top-p in einem dokumentierten Workflow#
Die Ultralytics-LLM-Schnittstelle akzeptiert Anfrageargumente für einen kompatiblen Sprachmodell-Endpunkt. Nach der Installation von ultralytics[llm] und dem Festlegen von OPENAI_API_KEY fordert dieses Beispiel eine kurze Antwort mit top_p=0.9 an:
from ultralytics import LLM
# Use an endpoint that supports the top_p request argument.
llm = LLM("gpt-4.1-mini", api="chat.completions")
prompt = "Describe a city bus in one friendly sentence."
response = llm(prompt, top_p=0.9)
message = response.choices[0].message
print(message.content)Der Code überlässt die Token-Auswahl dem Anbieter des Sprachmodells. Ein erneutes Ausführen kann zu einem anderen Wortlaut führen, aber top_p=0.9 ist kein Versprechen, dass jede Antwort unterschiedlich ausfällt. Überprüfen Sie die unterstützten Parameter des ausgewählten Modells, bevor Sie dieselbe Einstellung anderswo anwenden.
Auswahl einer nützlichen Einstellung#
Beginnen Sie mit dem Standard des Modells und vergleichen Sie dann die Ausgaben anhand repräsentativer Prompts. Verringern Sie top_p, wenn Antworten in einen unwahrscheinlichen Wortlaut abdrifteten; ziehen Sie einen höheren Wert in Betracht, wenn sie unnötig repetitiv sind. Beurteilen Sie das Ergebnis anhand der Aufgabe – nicht nur nach Vielfalt. Überprüfen Sie bei Kundenantworten oder Beschriftungen die sachliche Richtigkeit und ob wichtige Details vorhanden sind. Eine engere Auswahlliste kann einige ungewöhnliche Fortsetzungen reduzieren, aber sie kann nicht dafür sorgen, dass nicht unterstützte Aussagen wahr werden. Die Hinweise von IBM zur Generierung genauer Ausgaben behandeln Decodierungsentscheidungen ebenfalls nur als einen Teil eines fundierten Generierungs-Workflows. (ibm.com)









