TokDrift: Quando i LLM parlano in sottoparole ma il codice parla in grammatica
TokDrift: When LLM Speaks in Subwords but Code Speaks in Grammar
October 16, 2025
Autori: Yinxi Li, Yuntian Deng, Pengyu Nie
cs.AI
Abstract
I modelli linguistici di grandi dimensioni (LLM) per il codice si basano su tokenizer sub-parola, come la codifica byte-pair (BPE), appresi da un mix di testo in linguaggio naturale e codice di programmazione, ma guidati da statistiche piuttosto che dalla grammatica. Di conseguenza, frammenti di codice semanticamente identici possono essere tokenizzati in modo diverso a seconda di fattori superficiali come gli spazi bianchi o la denominazione degli identificatori. Per misurare l'impatto di questo disallineamento, introduciamo TokDrift, un framework che applica regole di riscrittura che preservano la semantica per creare varianti di codice che differiscono solo nella tokenizzazione. Su nove LLM per il codice, inclusi quelli di grandi dimensioni con oltre 30 miliardi di parametri, anche piccoli cambiamenti di formattazione possono causare sostanziali variazioni nel comportamento del modello. L'analisi strato per strato mostra che il problema ha origine nelle prime fasi di embedding, dove la segmentazione sub-parola non riesce a catturare i confini dei token grammaticali. I nostri risultati identificano la tokenizzazione disallineata come un ostacolo nascosto alla comprensione e alla generazione affidabile del codice, evidenziando la necessità di una tokenizzazione consapevole della grammatica per i futuri LLM per il codice.
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.