YaRN: Yet Another RoPE Extensionn Method
Published:


The Problem YaRN Solves
Both linear interpolation and NTK scaling are global — they apply the same transformation to all RoPE frequency dimensions. But different dimensions encode different kinds of positional information:
- High-frequency dims (small wavelength): encode fine-grained local position. They should not be interpolated — compressing their cycles destroys local structure.
- Low-frequency dims (large wavelength): encode long-range position. They can be linearly interpolated without harm.
- Mid-frequency dims: need something in between.
YaRN handles each group differently.
Visual: How YaRN Treats Different Frequency Bands
The Three Zones
YaRN divides the \(d/2\) frequency dimensions into three groups based on their wavelength \(\lambda_i = 2\pi/\theta_i\) relative to the training length \(L\) and target length \(L'\):
Default hyperparameters: \(\alpha = 1\), \(\beta = 32\) (tuned empirically). The ramp function smoothly interpolates between the two strategies across the mid-frequency range.
The Ramp Function
For each dimension \(i\), YaRN defines a blending factor \(r(i)\):
r(i) = 0 if high-frequency (no change)
r(i) = 1 if low-frequency (full interpolation)
r(i) = smooth ramp otherwise
The effective frequency for dimension \(i\) becomes:
Where \(s = L'/L\) is the scale factor. When \(r(i) = 0\): \(\theta_i\) unchanged (high-freq). When \(r(i) = 1\): \(\theta_i / s\) (full interpolation). In between: a blend.
This gives each dimension group the treatment it needs, rather than applying a single global rule.
The Attention Temperature Fix
A subtlety that NTK scaling ignores: when you change RoPE frequencies, the distribution of attention logits shifts. Longer contexts naturally produce larger dot products, and the softmax temperature becomes miscalibrated.
YaRN addresses this with a learned attention temperature correction:
Where \(t = 0.1 \cdot \ln(s) + 1\) (with \(s = L'/L\)). For \(s = 4\) (4× context extension), \(t \approx 1.138\).
This dampens attention logits slightly, keeping the softmax distribution well-calibrated at longer contexts. Without this correction, models tend to “spread” attention too uniformly at long range — a well-known failure mode.
Worked Example: YaRN on LLaMA-2 (4k → 32k)
Model: LLaMA-2 7B, \(L = 4096\), \(L' = 32768\), scale \(s = 8\). Head dim \(d = 128\), so \(d/2 = 64\) frequency pairs. Default \(\alpha = 1\), \(\beta = 32\).
Wavelength for dimension \(i\):
Classify each dimension:
- \(\lambda_i < L \cdot \alpha = 4096\) → high-freq, no change (\(r = 0\))
- \(\lambda_i > L' \cdot \beta = 32768 \times 32 = 1{,}048{,}576\) → low-freq, full interpolation (\(r = 1\))
- Otherwise → mid-freq ramp
For \(i = 60\) (near highest freq): \(\lambda_{60} = 2\pi \cdot 10000^{60/64} \approx 42{,}000\). Since \(42{,}000 > 4096\) but \(< 1{,}048{,}576\) → mid-freq ramp.
For \(i = 10\) (low-freq): \(\lambda_{10} = 2\pi \cdot 10000^{10/64} \approx 590\). Since \(590 < 4096\) → high-freq, unchanged.
For \(i = 0\) (lowest freq): \(\lambda_0 = 2\pi \cdot 10000^{0} = 6.28\). Since \(6.28 < 4096\) → high-freq, unchanged.
Temperature correction for \(s = 8\):
All attention logits are divided by an extra factor of \(1.208\) on top of \(\sqrt{d_k}\), keeping softmax sharper at 32k context than without the correction.
Why YaRN Became So Popular
It hits a practical sweet spot: much better than naive interpolation, easier to deploy than fully model-specific search, and cheap enough that many RoPE-based LLMs adopted it as the default long-context extension recipe.
Training Recipe
YaRN requires minimal fine-tuning:
- Modify RoPE with the three-zone frequency scheme
- Apply attention temperature correction
- Fine-tune for ~400 steps on long-context data (compared to thousands for full context extension training)
This makes YaRN practical: you can take an existing model (e.g., LLaMA-2 7B trained at 4096 tokens) and extend it to 128k context with a short fine-tuning run.
Results vs Other Methods
| Method | 2k→8k quality | 2k→32k quality | Fine-tuning steps |
|---|---|---|---|
| Linear interpolation | Good | Degrades | ~1000 |
| NTK scaling | Good | Moderate | 0 (but better with some) |
| YaRN | Best | Best | ~400 |
YaRN consistently outperforms both methods on long-context benchmarks (SCROLLS, LongBench) at the same scale, with less fine-tuning than linear interpolation.
Models Using YaRN
- Mistral 7B v0.2 (context extension from 8k to 32k)
- Qwen2 series (various context lengths)
- LLaMA-2 fine-tuned variants (community-produced 32k/64k/128k models)
YaRN is the standard method for context extension in the open-source community.
Comparison of Context Extension Methods
| Method | High-freq | Low-freq | Temperature | Fine-tune | Quality |
|---|---|---|---|---|---|
| Linear interp | Broken | Good | No | ~1000 steps | Moderate |
| NTK scaling | Good | Good | No | 0 | Good |
| NTK (dynamic) | Good | Good | No | 0 | Good |
| YaRN | Preserved | Good | Yes | ~400 | Best |
Summary
YaRN improves on earlier RoPE extension methods by:
- Treating different frequency bands differently (local, transitional, long-range)
- Correcting attention temperature to maintain focus at long context
- Requiring minimal fine-tuning (~400 steps)
It is the current community standard for extending the context of open-weight models, used in Mistral and many LLaMA derivatives.
References
- Peng, B., Quesnelle, J., Fan, H., & Shippole, E. (2023). YaRN: Efficient Context Window Extension of Large Language Models. ICLR 2024 (YaRN: combines NTK-Aware Scaling with attention temperature correction and frequency-interpolation to extend context with minimal fine-tuning).
- Su, J., Lu, Y., Pan, S., Murtadha, A., Wen, B., & Liu, Y. (2021). RoFormer: Enhanced Transformer with Rotary Position Embedding. arXiv 2021 (RoPE: the base positional encoding that YaRN extends for long-context models).
- Chen, S., Wong, S., Luo, L., & Tian, Y. (2023). Extending Context Window of Large Language Models via Positional Interpolation. arXiv 2023 (Position Interpolation: the predecessor approach that YaRN improves upon by addressing the frequency-dimension asymmetry).
