From Language Models over Tokens to Language Models over Characters

Tim Vieira, Benjamin LeBrun, Mario Giulianelli, Juan Luis Gastaldi, Brian DuSell +3 more
2/12/2026

No confident code implementation found for this paper. 3 possible matches can be shown below.

Abstract

Modern language models are internally -- and mathematically -- distributions over $\it{token}$ strings rather than $\it{character}$ strings, posing numerous challenges for programmers building user applications on top of them. For example, if a prompt is specified as a character string, it must be tokenized before passing it to the token-level language model. Thus, the tokenizer and consequent processing are very sensitive to the specification of the prompt (e.g., whether the prompt ends with a space or not). This paper presents algorithms for converting token-level language models to character-level ones. We present both exact and approximate algorithms. In the empirical portion of the paper, we benchmark the practical runtime and approximation quality. Across four publicly available language models, we find that -- even with a small computation budget -- our method is able to accurately approximate the character-level distribution at reasonably fast speeds, and that a significant improvement in the language model's compression rate (bits/byte) is achieved.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. 3 weaker matches are hidden by default — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{vieira2026from,
  title  = {From Language Models over Tokens to Language Models over Characters},
  author = {Tim Vieira and Benjamin LeBrun and Mario Giulianelli and Juan Luis Gastaldi and Brian DuSell and John Terilla and Timothy J. O'Donnell and Ryan Cotterell},
  year   = {2026},
  eprint = {2412.03719},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/2412.03719},
  journal = {ICML 2024 2024}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2412.03719.svg)](https://codeofpaper.com/paper/2412.03719)

Discussion