Eine genaue Tokenzahl braucht eine Kodierung und einen klaren Umfang

Zwei Zähler können unterschiedliche Ergebnisse liefern, ohne defekt zu sein. Prüfen Sie vor dem Vergleich, welche Kodierung sie verwenden und was sie mitzählen.

Zuerst die Einheit klären

Wörter sind Leseeinheiten; UTF-8-Bytes messen eine kodierte Darstellung. Tokens hängen von einer bestimmten Kodierung ab. Ein festes Verhältnis gilt nicht für alle Wörter oder Zeichen.

ToolRoof zählt den unveränderten Text mit cl100k_base und zeigt Tokens sowie Bytes. Genauigkeit gilt für diese Kodierung, nicht für jedes Modell. Eine andere Modellwahl in Ihrer Anwendung ändert diesen Zähler nicht.

Sichtbarer Text ist nicht die ganze Anfrage

Eine API-Anfrage kann Nachrichtenrollen, Werkzeugdefinitionen, Dateien und weitere Struktur enthalten. Eine korrekte Absatzmessung erfasst deshalb nicht automatisch die gesamte Anfrage.

Nahe einer Grenze nutzen Sie die passende Anfragezählung oder den Nutzungsbericht des Anbieters. Ein fester Zuschlag garantiert nicht, alle fehlenden Bestandteile abzudecken.

Quellen: OpenAI — Plain-text counts versus complete request token counts

Den gemessenen Text unverändert aufbewahren

Leerzeichen, Zeilenenden und Zeichenrepräsentationen gehören zur Eingabe. Bewahren Sie die gemessene Fassung auf, damit Vergleiche reproduzierbar bleiben.

Der Zähler normalisiert Unicode nicht und ersetzt keine Ziffern. Die Grenze beträgt 20000 UTF-16-Codeeinheiten, nicht unbedingt ebenso viele sichtbare Zeichen oder Tokens. Ungültiger Text wird abgelehnt statt still verändert.

Beispiel: ähnliches Aussehen, andere Darstellung

Unter cl100k_base benötigt hello world 11 UTF-8-Bytes und 2 Tokens. Byteumfang und Tokenzahl sind unterschiedliche Größen.

é als U+00E9 ergibt 1 Token und 2 Bytes. Ein e mit anschließendem U+0301 sieht ähnlich aus, ergibt aber 2 Tokens und 3 Bytes. Das bewertet keine Sprache als besser: Es zeigt, warum Originaltext und Kodierung zur Messung gehören.

Quellen