Naukowcy z arXiv CS.LG zbadali mechanizm stojący za tym, że modele kodowe preferują Python, gdy prompt nie wskazuje konkretnego języka. Uruchomili kompleksowy eksperyment obejmujący osiem metod analizy - ablację średnią, patching aktywacji, ekstrakcję obwodów oraz steering - na 55 konfiguracjach dziesięciu otwartych modeli kodowych, trzech języków docelowych (Rust, C#, PHP) i dwóch budżetów komponentów.

Wyniki pokazały, że preferecja Pythona jest znacząca i rośnie wraz z rozmiarem modelu. Co zaskakujące, po fine-tuningu instrukcji ta preferencja wzrasta - średnio o 12% na każdym wersjonowanym checkpoincie instrukcji w porównaniu z wersjami bazowymi. Jednak badacze odkryli, że mierzona wielkość tej preferencji w dużej mierze zależy od parametrów sondy stosowanej w eksperymencie. Zastąpienie wyrównanych promptów równoległymi funkcjami z XLCoST drastycznie zmieniło pomiary z około 1,6 do zaledwie 0,01.

Kluczvym odkryciem jest to, że lokalizacja preferencji zależy od budżetu przeszukiwania komponentów. Z budżetem 12 komponentów tylko 1 z 15 ustawień przyniosła obwód, który pokonał losową kontrolę o tym samym rozmiarze. Zwiększenie budżetu do 40 komponentów poprawiło wynik do 6 z 15. Dodatkowo, interwencje takie jak patching i steering, które wcześniejsze badania raportowały jako całkowicie nieudane, czasem jednak zadziałały - patching zmienił preferencję Python w 2 z 45 ustawień, a steering wpłynął na najprawdopodobniejszy następny token w 9 z 45 przypadkach.