Poziční kódování je mechanismus, kterým se do vstupu transformeru vnáší informace o pořadí prvků v sekvenci. Mechanismus pozornosti je totiž sám o sobě permutačně invariantní – pracuje se vstupem jako s množinou, nikoli jako s posloupností, takže bez dodatečného signálu by věty „pes kousl pošťáka“ a „pošťák kousl psa“ byly pro model nerozlišitelné. Původní řešení přičítalo ke každému embeddingu vektor složený ze sinusoid o různých frekvencích, což umožňuje modelu odvodit relativní vzdálenosti jako lineární funkci. Následovaly naučené absolutní pozice a dnes převažují relativní přístupy, zejména rotační poziční kódování (RoPE), které pozici zakóduje otočením vektorů dotazu a klíče v komplexní rovině. Výhodou RoPE je, že skalární součin dvou vektorů pak závisí jen na jejich vzájemné vzdálenosti, a model lépe zobecňuje na délky, které v tréninku neviděl. Právě způsob pozičního kódování zásadně určuje, jak daleko lze kontextové okno bezpečně natáhnout.
Představte si, že dostanete obálku s vystřihanými slovy jedné věty. Máte všechna slova, ale nevíte, v jakém byla pořadí – a smysl se rozpadá. Poziční kódování je jako razítko s číslem, které se otiskne na každý lísteček ještě před tím, než je do obálky nasypete. Model tak vedle významu slova vždy vidí i jeho místo v řadě. Chytřejší varianty nerazítkují absolutní čísla („jsi sedmý“), ale vztahy („jsi tři slova za tímhle“), což modelu pomůže i tehdy, když mu podáte obálku dvakrát delší, než na jaké se učil.