Tokens und Chunks: Was sind sie und wozu werden sie in LLMs verwendet?

Große Sprachmodelle (LLMs) wie GPT arbeiten mit Textdaten, um Aufgaben wie das Verfassen von Texten, das Beantworten von Fragen oder die Übersetzung von Sprachen zu bewältigen. Dabei spielen die Begriffe „Tokens“ und „Chunks“ eine zentrale Rolle. In diesem Blogeintrag erklären wir, was es damit auf sich hat und warum sie für die Funktionsweise von LLMs so wichtig sind.

Was sind Tokens?

Ein Token ist eine kleinere Einheit eines Textes, die ein Sprachmodell verarbeitet. Tokens können aus Wörtern, Wortteilen oder sogar einzelnen Zeichen bestehen. Die genaue Definition eines Tokens hängt von der Tokenizer-Strategie ab, die das Modell verwendet. Zum Beispiel:

  • Das Wort „Hallo“ kann als ein einziges Token behandelt werden.
  • Das Wort „Wörterbuch“ könnte in kleinere Tokens wie „Wörter“ und „buch“ zerlegt werden.
  • Satzzeichen wie „,“ oder „.“ werden oft als eigene Tokens gezählt.

Die Anzahl der Tokens in einem Text hängt also davon ab, wie der Text zerlegt wird.

Warum sind Tokens wichtig?

LLMs verarbeiten Text nicht als Ganzes, sondern in Form von Tokens. Jedes Token dient als Eingabe für das Modell, das dann berechnet, wie wahrscheinlich das nächste Token ist. Dieser Prozess wird „Autoregressive Modellierung“ genannt. Hier einige wichtige Aspekte:

  • Begrenzte Tokenanzahl: Modelle wie GPT haben eine maximale Anzahl von Tokens, die sie in einem Schritt verarbeiten können. Diese Begrenzung wird „Kontextfenster“ genannt. Bei GPT-4 beträgt dieses Kontextfenster beispielsweise bis zu 32.768 Tokens.
  • Kosten und Geschwindigkeit: Die Verarbeitung von mehr Tokens erfordert mehr Rechenleistung und erhöht die Kosten sowie die Antwortzeit.

Was sind Chunks?

Chunks sind Gruppen von Tokens, die so gebildet werden, dass sie in das Kontextfenster des Modells passen. Stellen Sie sich vor, Sie haben einen sehr langen Text, der mehr Tokens enthält, als das Modell auf einmal verarbeiten kann. In solchen Fällen wird der Text in kleinere Abschnitte, also Chunks, zerlegt, die jeweils die Tokenbegrenzung des Modells nicht überschreiten. Diese Chunks werden dann einzeln verarbeitet.

Wie werden Chunks erstellt?

Die Erstellung von Chunks erfolgt oft durch algorithmische Ansätze, die darauf abzielen, sinnvolle Abschnitte zu bewahren, z. B.:

  • Nach Sätzen oder Absätzen: Ein Text wird entlang grammatikalischer Grenzen geteilt.
  • Nach Tokenanzahl: Ein Chunk enthält eine bestimmte Anzahl von Tokens, z. B. 1000 Tokens.
  • Themenbasiert: Abschnitte mit ähnlichem Inhalt werden gruppiert.

Warum sind Chunks wichtig?

  • Langtexte verarbeiten: Chunks ermöglichen es, auch sehr lange Texte mit einem LLM zu analysieren oder zu generieren.
  • Effizienz: Die Aufteilung in kleinere Teile optimiert die Rechenleistung und Speicheranforderungen.
  • Kohärenz: Durch sinnvolle Chunk-Bildung kann das Modell den Kontext innerhalb eines Chunks besser verstehen.

Fazit

Tokens und Chunks sind fundamentale Konzepte, die die Funktionsweise von großen Sprachmodellen bestimmen. Während Tokens die kleinsten Einheiten eines Textes darstellen, dienen Chunks dazu, längere Texte in verarbeitbare Teile zu zerlegen. Ein Verständnis dieser Begriffe hilft nicht nur dabei, die Funktionsweise von LLMs besser zu verstehen, sondern auch deren Grenzen und Optimierungspotenziale zu erkennen. Ob Sie also ein Entwickler oder ein interessierter Nutzer sind – Tokens und Chunks sind Schlüsselbegriffe, die Ihre Arbeit mit Sprachmodellen bereichern können.