TokDrift: Quando o LLM Fala em Subpalavras, mas o Código Fala em Gramática
TokDrift: When LLM Speaks in Subwords but Code Speaks in Grammar
October 16, 2025
Autores: Yinxi Li, Yuntian Deng, Pengyu Nie
cs.AI
Resumo
Modelos de linguagem de grande escala (LLMs) para código dependem de tokenizadores de subpalavras, como a codificação de pares de bytes (BPE), aprendidos a partir de uma mistura de texto em linguagem natural e código de linguagem de programação, mas guiados por estatísticas em vez de gramática. Como resultado, trechos de código semanticamente idênticos podem ser tokenizados de maneira diferente dependendo de fatores superficiais, como espaços em branco ou nomenclatura de identificadores. Para medir o impacto desse desalinhamento, introduzimos o TokDrift, uma estrutura que aplica regras de reescrita que preservam a semântica para criar variantes de código que diferem apenas na tokenização. Em nove LLMs de código, incluindo modelos grandes com mais de 30 bilhões de parâmetros, até mesmo pequenas alterações de formatação podem causar mudanças substanciais no comportamento do modelo. Análises camada por camada mostram que o problema se origina nos embeddings iniciais, onde a segmentação de subpalavras falha em capturar os limites dos tokens gramaticais. Nossas descobertas identificam a tokenização desalinhada como um obstáculo oculto para a compreensão e geração confiável de código, destacando a necessidade de tokenização consciente da gramática para futuros LLMs de código.
English
Large language models (LLMs) for code rely on subword tokenizers, such as
byte-pair encoding (BPE), learned from mixed natural language text and
programming language code but driven by statistics rather than grammar. As a
result, semantically identical code snippets can be tokenized differently
depending on superficial factors such as whitespace or identifier naming. To
measure the impact of this misalignment, we introduce TokDrift, a framework
that applies semantic-preserving rewrite rules to create code variants
differing only in tokenization. Across nine code LLMs, including large ones
with over 30B parameters, even minor formatting changes can cause substantial
shifts in model behavior. Layer-wise analysis shows that the issue originates
in early embeddings, where subword segmentation fails to capture grammar token
boundaries. Our findings identify misaligned tokenization as a hidden obstacle
to reliable code understanding and generation, highlighting the need for
grammar-aware tokenization for future code LLMs.