Your input is 9,000 tokens but max_length is 8,192. What are your truncation options?
Truncation drops tokens from an over-long input so it fits `max_length`; HF strategies are `longest_first`, `only_first`, `only_second`, `do_not_truncate`. Silent truncation is the recurring production bug.
Imagine a backpack that fits ten books. Someone hands you fifteen. You have to leave some behind, but you cannot leave any specific book at random. A smart traveler thinks about which books matter: the map at the top stays, the trip notes at the bottom stay, and the duplicates in the middle get left at the hotel. Truncation in tokenization is the same calculation. The backpack is the model's context window. The books are tokens. The strategy is the rule for which tokens to leave behind. And if you never tell the traveler the bag was overstuffed, they leave things behind silently and you only notice at the destination.
Concept explanation~2 min read
Everything you need to truly understand this topic: intuition, mechanics, step by step explanation, code, formulas, and worked example. Click to expand.
Concept explanation~2 min read
Everything you need to truly understand this topic: intuition, mechanics, step by step explanation, code, formulas, and worked example. Click to expand.
Truncation is the tokenizer's answer to a hard constraint: the model has a maximum context length, and any input over that limit has to either be cut or rejected. The interesting questions are which side to cut from, which API surface implements the cut, and how to make sure the cut does not happen silently.
This explanation defines truncation, walks the four HuggingFace strategies, explains why chat applications need a custom strategy on top, and closes on the production observability work that keeps silent truncation from quietly degrading a system.
What truncation is and what forces it
Every model has a maximum context length. For Llama 3 it is 8k for the base 8B model and 128k for the long context fine tunes. GPT-5.5 ships with a 1M token API context in 2026; Claude Opus 4.7 also offers 1M tokens; Gemini 3.1 Pro offers 2M. These are hard architectural and serving limits, not soft suggestions: an input that exceeds the limit cannot be processed at all.
The tokenizer is the layer that enforces this. The application calls tokenizer(text, truncation=True, max_length=N) and the tokenizer guarantees the returned input_ids will be at most N. To honor that guarantee, tokens above N are dropped.
Truncation also kicks in for budgets smaller than the model's full limit. Production systems usually keep some headroom for the response, so even a 128k model might be configured to truncate inputs at 100k to leave 28k for generation. The same machinery applies.
Situations where this technique stops working.
2–4 min · Everything important, quickly.
Real products, models, and research that use this idea.
- HuggingFace `tokenizer(text, truncation=True, max_length=8192)` uses `longest_first` by default and returns `overflowing_tokens` if you ask for them.
- LangChain and LlamaIndex chat memory implementations apply manual middle truncation against a token budget computed from the model's `context_length`.
What an interviewer would ask next. Try answering before peeking at the approach.
QWhy is `longest_first` the default and when is it the wrong choice?
It was designed for question plus context pairs in pretraining era encoder workloads where both sides are roughly equally important and you want them both present. It is wrong when one side is structurally precious (the question) and the other side is the place to absorb cuts (the context).
Red flags & common mistakes
The phrases that signal junior thinking. Click to expand.
Red flags & common mistakes
The phrases that signal junior thinking. Click to expand.
Calling `tokenizer(text, truncation=True)` and never logging when truncation fires. The tokenizer silently drops tokens past `max_length` and answers degrade with no obvious signal.
60 second bullets to scan on the way to the call.
Define truncation and why
max_lengthmakes it necessary.Name the four HuggingFace truncation strategies and what each one does.
Primary sources. Browse if you want the original framing.
Same topic, related formats. Practice these next.