Zubnet AIAprenderWiki › BPE
Fundamentos

BPE

Byte Pair Encoding, Subword Tokenization
El algoritmo más común para construir vocabularios de tokenizer. BPE empieza con bytes o caracteres individuales y fusiona iterativamente el par adyacente más frecuente en un nuevo token. Después de miles de fusiones, las palabras comunes se vuelven tokens únicos («the», «function») mientras que las palabras raras se dividen en piezas de subpalabras («un» + «common»). Usado por GPT, Claude, Llama y la mayoría de LLMs modernos.

Por qué importa

BPE es la razón por la que tu tokenizer funciona como lo hace. Explica por qué las palabras comunes son baratas (un token), por qué las raras son caras (muchos tokens), y por qué el texto no inglés cuesta más (menos fusiones asignadas a pares de caracteres no ingleses). Entender BPE te ayuda a predecir conteos de tokens, optimizar prompts y entender por qué distintos tokenizers producen resultados distintos para el mismo texto.

Deep Dive

The algorithm: (1) start with a base vocabulary of individual bytes (256 entries) or characters, (2) scan the training corpus and count every adjacent pair of tokens, (3) merge the most frequent pair into a new token and add it to the vocabulary, (4) repeat steps 2–3 until the vocabulary reaches the target size (typically 32K–128K). The merge order defines a priority: "th" might be merge #50 while "ing" is merge #200, meaning "th" is a more fundamental unit in this tokenizer.

SentencePiece

SentencePiece (Google) is a popular BPE implementation that treats the input as raw bytes rather than pre-tokenized words. This means it can handle any language without language-specific preprocessing — no need for word segmentation in Chinese or morphological analysis in Turkish. Most modern LLMs use SentencePiece or a similar byte-level BPE variant. The alternative, WordPiece (used by BERT), is similar but uses a slightly different merge criterion.

The Training Corpus Matters

BPE merges reflect the training corpus's statistics. A tokenizer trained on English code gets efficient merges for "function," "return," and "const" but fragments Hindi or Arabic text. This is why multilingual tokenizers need balanced training corpora — the merge table must allocate enough merges to every language's common patterns. Llama 3's tokenizer explicitly trained on more balanced multilingual data, improving non-English token efficiency by 2–3x compared to Llama 2.

Conceptos relacionados

← Todos los términos
← BLEU & ROUGE Bria →