უკან დაბრუნება

როგორ მუშაობს LLM-ები: ტრანსფორმერის შიგნით მოგზაურობა
SiTech AI Team2 წთ. საკითხავი

როგორ მუშაობს LLM-ები: ტრანსფორმერის შიგნით მოგზაურობა

0xkato-ს 1 ივნისის პოსტი თანამედროვე ენის მოდელის შიდა მექანიზმებს გადის — ტოკენები, ჩადგმები, ყურადღება, feed-forward ქსელი და შემდეგი ტოკენის ციკლი — მძიმე მათემატიკის გარეშე.

1 ივნისს ბლოგმა 0xkato გამოაქვეყნა „How LLMs Actually Work“ — მიმოხილვა იმისა, თუ რა ხდება დიდი ენის მოდელის შიგნით. ტექსტის წინასწარი დაშვებაა, რომ თანამედროვე LLM-ები ძირითადად ერთმანეთზე დალაგებული ტრანსფორმერის ბლოკებისგან შედგება, ამიტომ ამ მექანიზმის გაგება უკვე გზის დიდ ნაწილს ფარავს

ტექსტიდან რიცხვებამდე

მოდელები ტექსტს კი არ კითხულობენ, არამედ მთელ რიცხვებს. ტოკენიზაცია შეკითხვას მთელი რიცხვების მიმდევრობად აქცევს, სადაც თითოეული რიცხვი ფიქსირებული ლექსიკონის ერთ ჩანაწერზე მიუთითებს — ლექსიკონში ათიათასობით ან რამდენიმე ასეული ათასი ერთეულია და ესენი, როგორც წესი, ქვესიტყვებია და არა მთლიანი სიტყვები. შემდეგ თითოეული მთელი რიცხვი მნიშვნელობას ჩადგმების მატრიცისგან იღებს — ეს საძიებო ცხრილია, ლექსიკონის თითო ჩანაწერზე თითო სტრიქონით; 7B კლასის ბევრ მოდელში ერთი ტოკენი 4 096 რიცხვად იქცევა, მსგავსი ტოკენები კი მსგავს ვექტორებად ჯდებიან. ჩადგმა პოზიციაზე არაფერს ამბობს, ამიტომ მოდელები პოზიციურ ინფორმაციას ამატებენ — 2017 წლის ორიგინალურ ნაშრომში სინუსისა და კოსინუსის ნიმუშებს, თანამედროვე მოდელების უმეტესობაში კი როტაციულ სქემებს, მაგალითად RoPE-ს.

ყურადღება და feed-forward ქსელი

ყურადღება ის მექანიზმია, რომლითაც ტოკენები ინფორმაციას ცვლიან: თითოეული ტოკენი ქმნის query-ს, key-სა და value-ს, query-ები key-ებს სკალირებული სკალარული ნამრავლით შედარდება, softmax ქულებს ერთის ტოლ ჯამის მქონე წონებად აქცევს და value-ები ამ წონებით საშუალოვდება. ვინაიდან GPT-ს ტიპის მოდელები მარცხნიდან მარჯვნივ აგენერირებენ, მიზეზობრივი ნიღაბი პოზიციას ჯერ არგენერირებული ტოკენებისკენ ყურებას უკრძალავს. მრავალთავიანი ყურადღება ამ ოპერაციებს ერთდროულად ბევრჯერ ასრულებს და თავები ინსტრუქციის გარეშე სპეციალიზდებიან — მკვლევარებმა იპოვეს თავები, რომლებიც გრამატიკას აკონტროლებენ ან ნაცვალსახელებს ხსნიან. ერთ ფენას შეიძლება 32 თავი ჰქონდეს, თანამედროვე მოდელები კი ძირითადად Grouped-Query Attention-ს იყენებენ, სადაც თავების ჯგუფები საერთო key-ებსა და value-ებს იზიარებენ, რაც მეხსიერებაზე დატვირთვას ამცირებს. ყურადღების შემდეგ თითოეული ტოკენი feed-forward ქსელში გადის, რომელიც მას ცალკე ამუშავებს; მკვრივ ტრანსფორმერში პარამეტრების უმეტესობა სწორედ აქაა, ზოგიერთი წამყვანი მოდელი კი ამ ბლოკს Mixture of Experts-ით ცვლის — მაგალითად Mixtral 8x7B-ში ფენაზე რვა ექსპერტია, მაგრამ თითო ტოკენზე მხოლოდ ორი მუშაობს.

წინასწარმეტყველების ციკლი და განსხვავებები

გენერაცია ბოლო ტოკენის საბოლოო ვექტორს იღებს, ლექსიკონის თითო ჩანაწერზე თითო ქულად — logit-ად — აქცევს და softmax-ით ალბათობებად გარდაქმნის. ტემპერატურა, top-k და top-p აკონტროლებენ, რამდენად განსაზღვრულია გამოსავალი, არჩეული ტოკენი კი შეკითხვას ემატება და ციკლი თავიდან იწყება — ჩვეულებრივ KV ქეშის ხელახალი გამოყენებით, რომ მთელი პრეფიქსი არ გადამუშავდეს. საბაზისო მოდელი მხოლოდ შემდეგი ტოკენის წინასწარმეტყველებაზე ვარჯიშობს; ინსტრუქციების შესრულება, უპირატესობები და უსაფრთხოება დამატებითი დახვეწის შედეგია. GPT-ს, Claude-ს, Gemini-სა და LLaMA-ს შორის განსხვავება ზოგადი დიზაინი არ არის — პოსტის მიხედვით, ისინი ერთსა და იმავე ტრანსფორმერულ სივრცეში არიან — არამედ ნასწავლი წონები, კონფიგურაცია და დამატებითი დახვეწა. 2023 წლიდან ეს სტეკი საერთო არჩევანზე შეთანხმდა: pre-norm განლაგება, RMSNorm, RoPE, SwiGLU, Grouped-Query Attention და Mixture of Experts.

გააზიარე ციფრული გამოცდილება

SiTech

SiTech — AI-გაძლიერებული ვებ დეველოპმენტი

ვქმნით სწრაფ, თანამედროვე ვებსაიტებს და AI-ს ვაერთიანებთ ქართული ბიზნესებისთვის. გაქვთ პროექტი ან კითხვა? სიამოვნებით დაგეხმარებით.