Rotary Position Embedding (RoPE) menerapkan rotasi berbasis posisi pada koordinat query dan key sebelum dot product attention dihitung. Skor yang dihasilkan membawa posisi relatif melalui selisih fase kedua rotasi tersebut, bukan melalui vektor posisi aditif yang ditempelkan pada representasi token.

Perbedaan ini bersifat struktural. RoPE memakai indeks absolut untuk menentukan setiap rotasi, tetapi inner product antara query dan key dapat ditulis sebagai fungsi offset di antara kedua posisi.

Pasangan koordinat membawa frekuensi sudut yang berbeda

RoPE membagi query atau key berdimensi genap menjadi pasangan koordinat dua dimensi. Untuk satu pasangan, posisi m menerapkan rotasi

R(m, theta) =
[ cos(m theta)  -sin(m theta) ]
[ sin(m theta)   cos(m theta) ]

dengan theta sebagai frekuensi sudut untuk pasangan tersebut. Transformasi RoPE penuh berbentuk block diagonal: setiap pasangan menerima indeks posisi yang sama, tetapi umumnya memakai frekuensi berbeda.

Jika q adalah query dan k adalah key, vektor yang sudah diputar pada posisi m dan n menjadi

q_m = R(m) q
k_n = R(n) k

dengan R mewakili kumpulan rotasi block diagonal.

Operasi ini mempertahankan norm Euclidean pada setiap pasangan karena tiap blok rotasi bersifat ortogonal. Posisi mengubah orientasi, bukan panjang vektor, di dalam rotary subspace.

Dot product mereduksi fase absolut menjadi offset

Skor attention memuat

q_m^T k_n
= (R(m) q)^T (R(n) k)
= q^T R(m)^T R(n) k

Untuk rotasi planar,

R(m)^T R(n) = R(n - m)

sehingga komponen posisi di dalam dot product bergantung pada n - m. Indeks absolut tetap menentukan dua rotasi yang dieksekusi, tetapi interaksinya pada inner product memiliki bentuk posisi relatif.

Batas aljabar ini penting. Properti tersebut tidak membuat seluruh hidden state model menjadi translation invariant. Value, residual stream, layer nonlinear, masking, batas konteks, dan komponen model lain tetap memiliki perilakunya masing-masing. Sifat offset relatif berlaku pada interaksi query-key yang menggunakan rotasi.

Banyak frekuensi memberi beberapa fase untuk satu offset

Satu frekuensi sudut bersifat periodik. Jika hanya ada satu pasangan koordinat, offset yang terpisah satu periode penuh akan menghasilkan rotasi yang sama pada pasangan itu. RoPE memakai sekumpulan frekuensi pada banyak pasangan koordinat.

Untuk pasangan i, rotasi relatif ditentukan oleh

(n - m) * theta_i

dan skor attention penuh menggabungkan kontribusi seluruh pasangan. Satu offset token karena itu direpresentasikan melalui beberapa fase dengan laju sudut berbeda.

Jadwal frekuensi merupakan bagian dari geometri posisi. Mengubah base, menskalakan posisi, atau memodifikasi frekuensi tertentu akan mengubah fase yang diterima attention. Perubahan tersebut tidak setara dengan sekadar menaikkan konstanta maximum sequence length pada implementasi.

RoPE mengubah query dan key, bukan mewajibkan rotasi value

Pada konstruksi rotary standar, rotasi posisi diterapkan pada query dan key karena inner product keduanya menentukan kompatibilitas attention. Value tidak perlu menerima rotasi yang sama untuk menghasilkan identitas offset relatif di atas.

Pemisahan ini relevan untuk desain cache pada inference autoregresif. Key yang disimpan harus mengikuti konvensi posisi yang diharapkan oleh dot product dengan query berikutnya. Implementasi dapat menyimpan key sebelum atau sesudah transformasi rotary, tetapi cache dan kernel attention harus menyepakati representasi tersebut. Ketidaksesuaian akan mengubah skor meskipun konten token dan bobot model sama.

Properti arsitektural RoPE tidak menetapkan satu layout cache tertentu. Penyimpanan key yang sudah diputar dan rotasi yang ditunda merupakan pilihan implementasi dengan konsekuensi aliran data berbeda.

Causal mask terpisah dari rotary position

RoPE mengubah skor untuk sebuah pasangan query-key. Mekanisme ini tidak dengan sendirinya melarang token mengakses posisi masa depan.

Pada decoder kausal, mask secara terpisah mengeluarkan pasangan query-key yang tidak diizinkan sebelum probabilitas attention dibentuk. Fase rotary dapat mengodekan offset sebuah pasangan, sementara causal mask menentukan apakah pasangan itu boleh berpartisipasi.

Pemisahan tersebut mencegah position encoding diberi semantik kontrol akses yang bukan tugasnya. RoPE memberi struktur posisi pada skor kompatibilitas; attention mask menentukan pola konektivitas yang diizinkan.

Indeks lebih panjang dapat dihitung tanpa jaminan kualitas konteks

Formula rotasi dapat dievaluasi pada indeks posisi di luar rentang yang muncul saat training. Sinusoid tidak memerlukan lookup table terbatas dengan satu vektor tersimpan untuk setiap indeks yang didukung.

Kemampuan menghitung fase bukan jaminan perilaku model yang stabil pada panjang arbitrer. Pada offset yang lebih besar, setiap frekuensi bergerak ke fase yang dapat berada pada rezim posisi yang tidak cukup terwakili selama training. Cara model memakai fase tersebut bergantung pada parameter dan distribusi data saat training.

Metode perluasan konteks yang mengubah frekuensi RoPE atau skala posisi bekerja pada batas ini. Metode tersebut mengubah pemetaan offset token ke fase sudut sehingga rentang indeks yang lebih panjang menempati wilayah berbeda pada spektrum rotary. Efeknya bergantung pada aturan scaling, model, dan prosedur adaptasi yang dipakai; identitas dasar RoPE saja tidak menetapkan hasil kualitas long-context yang universal.

Kontribusi RoPE dapat dinyatakan secara lebih presisi: posisi ditempatkan di dalam geometri query-key sehingga rotasi absolut bergabung menjadi offset fase relatif pada dot product attention. Kumpulan frekuensi menentukan representasi offset tersebut, sedangkan masking, representasi cache, rentang training, dan bagian transformer lainnya mengatur perilaku sistem yang berbeda.