
Ինչպես են իրականում աշխատում LLM-ները. ճանապարհորդություն տրանսֆորմերի շերտերով
0xkato-ի հունիսի 1-ի գրառումը անցնում է ժամանակակից լեզվական մոդելի ներքին մեխանիզմներով՝ թոքեններ, էմբեդինգներ, ուշադրություն, ուղիղ կապի ցանց և հաջորդ թոքենի ցիկլ՝ առանց ծանր մաթեմատիկայի։
Հունիսի 1-ին 0xkato բլոգը հրապարակեց «How LLMs Actually Work» գրառումը՝ մի շրջայց, թե ինչ է կատարվում մեծ լեզվական մոդելի ներսում։ Ելակետը սա է․ ժամանակակից LLM-ները հիմնականում իրար վրա դասավորված տրանսֆորմեր բլոկներից են կառուցվում, ուստի այդ մեխանիզմի ըմբռնումը ծածկում է ճանապարհի մեծ մասը
Տեքստից թվեր
Մոդելները տեքստ չեն կարդում, այլ ամբողջ թվային նույնացուցիչներ։ Թոքենիզացիան հարցումը վերածում է ամբողջ թվերի հաջորդականության, որտեղ ամեն թիվ մատնանշում է ֆիքսված բառարանի մի գրառում․ բառարանում տասնյակ հազարից մինչև մի քանի հարյուր հազար միավոր կա, և դրանք, որպես կանոն, ամբողջ բառեր չեն, այլ ենթաբառեր։ Հետո ամեն ամբողջ թիվ իմաստ է ստանում էմբեդինգների մատրիցից՝ որոնման աղյուսակ, որտեղ բառարանային ամեն գրառման համար մեկ տող կա․ 7B դասի շատ մոդելներում մեկ թոքենը վերածվում է 4 096 թվի, իսկ նման թոքենները նման վեկտորներ են ստանում։ Էմբեդինգն ինքը ոչինչ չի ասում դիրքի մասին, ուստի մոդելները դիրքային տեղեկություն են ավելացնում․ 2017-ի օրիգինալ հոդվածում՝ սինուսի ու կոսինուսի նախշեր, ժամանակակից մոդելների մեծ մասում՝ RoPE-ի նման պտտական սխեմաներ։
Ուշադրություն և ուղիղ կապի ցանց
Ուշադրությունը թոքենների միջև տեղեկատվության փոխանակման մեխանիզմն է․ ամեն թոքեն ստեղծում է query, key և value, հարցումները համեմատվում են բանալիների հետ սկալավորված սկալյար արտադրյալով, softmax-ը միավորները վերածում է մեկի գումարով կշիռների, և արժեքները միջինացվում են ըստ այդ կշիռների։ Քանի որ GPT տիպի մոդելները գեներացնում են ձախից աջ, պատճառական դիմակը թույլ չի տալիս դիրքին նայել դեռ չգեներացված թոքեններին։ Բազմագլուխ ուշադրությունը այդ գործողությունները կատարում է զուգահեռաբար, և գլուխները մասնագիտանում են առանց հրահանգի․ հետազոտողները գտել են գլուխներ, որոնք հետևում են քերականությանը կամ լուծում դերանունները։ Մեկ շերտում կարող է 32 գլուխ լինել, իսկ ժամանակակից մոդելները հիմնականում օգտագործում են Grouped-Query Attention, որտեղ գլուխների խմբերը կիսում են բանալիներն ու արժեքները՝ հիշողության ծանրաբեռնվածությունը նվազեցնելու համար։ Ուշադրությունից հետո ամեն թոքեն անցնում է ուղիղ կապի ցանցով, որը մշակում է այն առանձին․ խիտ տրանսֆորմերում պարամետրերի մեծ մասը հենց այնտեղ է, իսկ որոշ առաջատար մոդելներ այդ բլոկը փոխարինում են Mixture of Experts-ով․ օրինակ՝ Mixtral 8x7B-ում շերտում ութ փորձագետ կա, բայց ամեն թոքենի համար աշխատում են միայն երկուսը։
Կանխատեսման ցիկլը և իրական տարբերությունները
Գեներացիան վերցնում է վերջին թոքենի վերջնական վեկտորը, այն վերածում բառարանային ամեն գրառման համար մեկ միավորի՝ լոգիտի, և softmax-ով դրանք դարձնում հավանականություններ։ Ջերմաստիճանը, top-k-ն և top-p-ն որոշում են, թե որքան դետերմինացված կլինի ելքը, իսկ ընտրված ամեն թոքեն ավելանում է մուտքին, և ցիկլը կրկնվում է՝ սովորաբար վերօգտագործելով KV քեշը, որպեսզի ամբողջ նախածանցը նորից չհաշվարկվի։ Բազային մոդելը սովորում է միայն հաջորդ թոքենի կանխատեսումը․ հրահանգներին հետևելը, նախասիրություններն ու անվտանգությունը գալիս են լրացուցիչ մարզումից։ GPT-ի, Claude-ի, Gemini-ի և LLaMA-ի տարբերությունը ընդհանուր ճարտարապետությունը չէ — ըստ գրառման՝ նրանք նույն տրանսֆորմեր ընտանիքի տարածքում են — այլ մարզված կշիռները, կոնֆիգուրացիան և լրացուցիչ մարզումը։ 2023 թվականից այս շերտը համաձայնության է եկել ընդհանուր լուծումների շուրջ՝ pre-norm տեղադրում, RMSNorm, RoPE, SwiGLU, Grouped-Query Attention և Mixture of Experts։
SiTech — AI-ով հզորացված վեբ մշակում
Ստեղծում ենք արագ ու ժամանակակից կայքեր և AI-ը ներդնում իրական բիզնես գործընթացներում։ Ունե՞ք նախագիծ կամ հարց։ Ուրախ կլինենք օգնել։