Rotary position embeddings mengodekan posisi dengan merotasi komponen query dan key memakai sudut yang diturunkan dari indeks token. Ketika model dijalankan melampaui rentang posisi yang dipakai saat optimisasi awal, sudut tersebut dapat masuk ke rezim yang tidak ditemui model sebelumnya. Position interpolation menangani batas ini dengan memetakan sequence yang lebih panjang ke rentang koordinat posisi yang lebih kecil sebelum sudut rotary dihitung.

Mekanisme ini tidak menambahkan token ekstra ke state arsitektural model. Yang berubah adalah koordinat yang diberikan ke transformasi posisi. Perbedaan tersebut penting karena kemampuan runtime menerima input lebih panjang dan mutu perilaku model pada panjang itu merupakan dua hal terpisah.

Interpolasi mengubah skala koordinat posisi

Anggap model semula terkait dengan panjang konteks (L), lalu target konteks menjadi (L’ > L). Interpolasi linear sederhana memetakan posisi token (p) menjadi

[ p’ = p \frac{L}{L’}. ]

Token di dekat akhir sequence yang lebih panjang dengan demikian mendapat koordinat rotary yang masih berada kira-kira dalam rentang koordinat semula. Urutan token tetap terjaga karena pemetaan bersifat monoton, tetapi selisih koordinat antar-token menjadi lebih kecil.

RoPE menerapkan rotasi dengan frekuensi berbeda pada pasangan komponen query dan key. Untuk satu frekuensi rotary (\omega_i), posisi menghasilkan fase yang sebanding dengan

[ \theta_i(p’) = \omega_i p’. ]

Setelah interpolasi, setiap kenaikan posisi menghasilkan kenaikan fase yang lebih kecil dibanding koordinat tanpa scaling. Attention tetap menerima informasi posisi relatif melalui perbedaan fase, tetapi perbedaan tersebut telah dimampatkan.

Geometri relatif berubah meski urutan tetap sama

Rescaling ini kadang digambarkan sebagai memasukkan sequence lebih panjang ke rentang posisi semula. Deskripsi tersebut tepat hanya jika konsekuensi geometrinya tetap diperhatikan. Dua token yang terpisah 1.000 posisi pada sequence hasil ekstensi tidak lagi menghasilkan pemisahan fase rotary yang sama dengan dua posisi berjarak 1.000 pada skala koordinat awal.

Untuk posisi (a) dan (b), perbedaan fase pada frekuensi (\omega_i) menjadi

[ \Delta\theta_i = \omega_i (a-b)\frac{L}{L’}. ]

Faktor (L/L’) diterapkan pada selisih posisi. Urutan relatif tetap bertahan, sedangkan geometri fase yang dipakai attention berubah. Efek ini tidak setara dengan sekadar menaikkan nilai konfigurasi yang membatasi panjang sequence yang diterima.

Dampaknya juga berbeda secara absolut di setiap frekuensi rotary karena tiap pasangan dimensi memakai (\omega_i) masing-masing. Scaling koordinat yang sama diterapkan ke seluruh nilai posisi, tetapi lintasan fasenya tetap bergantung pada frekuensi.

Batas input lebih panjang bukan jaminan mutu

Runtime dapat mengizinkan lebih banyak token setelah penanganan posisi, alokasi cache, implementasi attention, dan batas memori mendukung sequence yang lebih panjang. Kondisi tersebut tidak membuktikan bahwa output model tetap memiliki mutu yang sama di seluruh rentang hasil ekstensi.

Position interpolation mengubah input ke attention dibanding distribusi yang ditemui saat optimisasi awal model. Fine-tuning atau prosedur adaptasi lain dapat mengekspos model ke geometri yang sudah di-rescale. Perilaku akhirnya bergantung pada model, faktor scaling, data adaptasi, konfigurasi optimisasi, dan detail implementasi. Nilai batas konteks pada konfigurasi saja tidak dapat menetapkan mutu output.

Batas ini relevan saat membandingkan metadata model. Dua deployment dapat mencantumkan jumlah token maksimum yang sama sambil memakai aturan positional scaling berbeda atau bobot model yang diadaptasi dengan rezim berbeda. Batas yang sama tidak berarti perilaku posisi juga sama.

Ukuran KV cache tetap mengikuti jumlah token fisik

Position interpolation memampatkan koordinat posisi, bukan jumlah token yang disimpan. Pada inferensi autoregresif, setiap token yang diterima tetap dapat menyumbang state key dan value sesuai desain cache model.

Sequence dengan jumlah token fisik dua kali lebih banyak karena itu dapat memerlukan state cache untuk kira-kira dua kali jumlah posisi token ketika dimensi cache dan precision lainnya tetap. Koordinat rotary yang diberikan ke posisi tersebut tidak mengubah jumlah token fisiknya.

Dua persoalan perlu dipisahkan. Positional scaling mengatur koordinat yang dikonsumsi attention. Kapasitas KV cache mengatur penyimpanan sequence yang benar-benar dilayani. Serving engine memerlukan skema posisi yang valid sekaligus memori yang cukup untuk konteks fisik yang diminta.

Aturan scaling merupakan bagian dari semantik model

Linear position interpolation adalah salah satu pendekatan dalam keluarga RoPE scaling. Skema lain dapat mengubah perilaku frekuensi, menerapkan aturan piecewise, atau memakai parameter khusus model. Nama mekanismenya tidak membuat semua skema tersebut saling dapat dipertukarkan.

Deployment perlu memakai transformasi posisi yang sesuai dengan bobot dan konfigurasi model. Mengubah faktor scaling atau mengganti aturan RoPE mengubah fase yang masuk ke attention, meski tensor shape dan tokenisasi tetap sama.

Batas praktisnya jelas: position interpolation dapat memetakan indeks token yang lebih panjang ke rentang koordinat yang lebih dekat dengan rentang semula, tetapi caranya adalah dengan mengubah jarak fase rotary. Urutan sequence tetap dipertahankan, bukan geometri posisi awal, dan mekanisme ini sendiri tidak menjamin mutu model atau mengurangi state fisik yang diperlukan untuk melayani sequence lebih panjang.