Xeon პროცესორებზე წარმადობის მნიშვნელოვანი ზრდა ჩაშენებული მოდელების ოპტიმიზაციით Optimum Intel-ისა და fastRAG-ის გამოყენებით
ეს ბლოგი დეტალურად აღწერს, თუ როგორ მივაღწიოთ წარმადობის მნიშვნელოვან ზრდას Intel Xeon-ზე დაფუძნებულ CPU-ებზე, ოპტიმიზებული ჩაშენების (embedding) მოდელების ინტეგრირებით არსებულ RAG კონვეიერებში fastRAG-ის გამოყენებით. განხილულია Optimum Intel ბიბლიოთეკის როლი მოდელების დასაჩქარებლად, ისეთი ტექნიკების გამოყენებით, როგორიცაა დაბალბიტიანი კვანტიზაცია და Intel-ის სპეციფიკური გაფართოებების (AVX-512, VNNI, AMX) გამოყენება. სტატია ყურადღებას ამახვილებს BGE მოდელებზე და წარმოგიდგენთ ნაბიჯ-ნაბიჯ სახელმძღ
ამ ბლოგში განვიხილავთ, თუ როგორ მივაღწიოთ წარმადობის მნიშვნელოვან ზრდას Xeon-ზე დაფუძნებულ CPU-ებზე და ვაჩვენებთ, თუ რამდენად მარტივია ოპტიმიზებული მოდელების ინტეგრირება არსებულ RAG კონვეიერებში fastRAG-ის გამოყენებით.
ჩაშენების (Embedding) მოდელები ტექსტურ მონაცემებს მკვრივ ვექტორებად გარდაქმნიან, რაც მათ სემანტიკურ და კონტექსტურ მნიშვნელობას აღწერს. ეს შესაძლებელს ხდის ზუსტი ინფორმაციის მოძიებას სიტყვებისა და დოკუმენტების ურთიერთობების უფრო კონტექსტუალური წარმოდგენის გზით. როგორც წესი, სემანტიკური მსგავსება იზომება კოსინუსის მსგავსებით ჩაშენების ვექტორებს შორის. ყოველთვის უნდა გამოვიყენოთ თუ არა მკვრივი ვექტორები ინფორმაციის მოსაძიებლად? ორი დომინანტური მიდგომა გარკვეულ დათმობებს გულისხმობს:
ჩაშენების მოდელები მრავალ და კრიტიკულ მიზანს ემსახურება RAG აპლიკაციებში:
RAG კონვეიერებში ჩაშენების მოდელის კომპონენტის ოპტიმიზაცია მეტად სასურველია მაღალი ეფექტურობის მისაღწევად, კერძოდ:
Optimum Intel არის ღია კოდის ბიბლიოთეკა, რომელიც აჩქარებს სრულ ჯაჭვურ კონვეიერებს, შექმნილს Hugging Face ბიბლიოთეკებით Intel-ის აპარატურაზე. Optimum Intel მოიცავს მოდელების დასაჩქარებლად რამდენიმე ტექნიკას, როგორიცაა დაბალბიტიანი კვანტიზაცია, მოდელის წონების ოპტიმიზაცია (pruning), დისტილაცია და დაჩქარებული რანტაიმი. Optimum Intel-ში ჩართული რანტაიმი და ოპტიმიზაციები იყენებენ Intel® Advanced Vector Extensions 512 (Intel® AVX-512), ვექტორული ნერვული ქსელის ინსტრუქციებს (VNNI) და Intel® Advanced Matrix Extensions (Intel® AMX) Intel CPU-ებზე მოდელების დასაჩქარებლად. კონკრეტულად, მას აქვს ჩაშენებული BFloat16 (bf16) და int8 GEMM ამაჩქარებლები ყველა ბირთვში, რათა დააჩქაროს ღრმა სწავლის ტრენინგისა და ინფერენსის დატვირთვები. AMX-ით დაჩქარებული ინფერენსი დაინერგა PyTorch 2.0-ში და Intel Extension for PyTorch (IPEX)-ში, სხვადასხვა საერთო ოპერატორების სხვა ოპტიმიზაციებთან ერთად. წინასწარ გაწვრთნილი მოდელების ოპტიმიზაცია მარტივად შეიძლება განხორციელდეს Optimum Intel-ის გამოყენებით; მრავალი მარტივი მაგალითი შეგიძლიათ იხილოთ აქ.
ამ ბლოგში, ჩვენ ყურადღებას ვამახვილებთ ცოტა ხნის წინ პეკინის ხელოვნური ინტელექტის აკადემიის მკვლევრების მიერ გამოშვებულ ჩაშენების მოდელებზე, რადგან მათი მოდელები კონკურენტუნარიან შედეგებს აჩვენებს ფართოდ მიღებულ MTEB ლიდერბორდზე. ბი-ენკოდერის მოდელები არის ტრანსფორმერზე დაფუძნებული ენკოდერები, რომლებიც გაწვრთნილია იმისთვის, რომ მინიმუმამდე დაიყვანონ მსგავსების მეტრიკა, როგორიცაა კოსინუსის მსგავსება, ორ სემანტიკურად მსგავს ტექსტს შორის ვექტორების სახით. მაგალითად, პოპულარული ჩაშენების მოდელები იყენებენ BERT მოდელს, როგორც საბაზისო წინასწარ გაწვრთნილ მოდელს და აზუსტებენ მას დოკუმენტების ჩაშენებისთვის. დაშიფრული ტექსტის წარმომდგენი ვექტორი იქმნება მოდელის გამოსავალიდან; მაგალითად, ეს შეიძლება იყოს [CLS] ტოკენის ვექტორი ან ყველა ტოკენის ვექტორის საშუალო. უფრო რთული ჩაშენების არქიტექტურებისგან განსხვავებით, ბი-ენკოდერები შიფრავენ მხოლოდ ერთ დოკუმენტს, ამიტომ მათ აკლიათ კონტექსტური ურთიერთქმედება დაშიფრულ ობიექტებს შორის, როგორიცაა შეკითხვა-დოკუმენტი და დოკუმენტი-დოკუმენტი. თუმცა, უახლესი ბი-ენკოდერის ჩაშენების მოდელები კონკურენტუნარიან წარმადობას აჩვენებენ და უაღრესად სწრაფია მათი მარტივი არქიტექტურის გამო. ჩვენ ყურადღებას ვამახვილებთ 3 BGE მოდელზე: small, base და large, რომლებიც შედგება შესაბამისად 45M, 110M და 355M პარამეტრებისგან, დაშიფვრით 384/768/1024 ზომის ჩაშენების ვექტორებად. აღსანიშნავია, რომ ქვემოთ მოცემული ოპტიმიზაციის პროცესი უნივერსალურია და შეიძლება გამოყენებულ იქნას სხვა ჩაშენების მოდელებზეც (მათ შორის ბი-ენკოდერებზე, კროს-ენკოდერებზე და ა.შ.).
წარმოგიდგენთ ნაბიჯ-ნაბიჯ სახელმძღვანელოს ჩაშენების მოდელების წარმადობის გაუმჯობესებისთვის, ფოკუსირებით შეყოვნების შემცირებაზე (პაკეტის ზომა 1-ით) და გამტარუნარიანობის გაზრდაზე (გაზომილი წამში დაშიფრული დოკუმენტებით). ეს მეთოდი იყენებს optimum-intel-ს და Intel Neural Compressor-ს მოდელის კვანტიზაციისთვის, ასევე IPEX-ს ოპტიმიზებული რანტაიმისთვის Intel-ზე დაფუძნებულ აპარატურაზე. optimum-intel-ისა და intel-extension-for-transformers-ის დასაყენებლად გაუშვით შემდეგი ბრძანება:
ტრენინგის შემდგომი სტატიკური კვანტიზაცია მოითხოვს კალიბრაციის ნაკრებს წონებისა და აქტივაციების დინამიური დიაპაზონის დასადგენად. კალიბრაცია ხდება მოდელში მონაცემთა ნიმუშების წარმომადგენლობითი ნაკრების გატარებით, სტატისტიკის შეგროვებით და შემდეგ მოდელის კვანტიზაციით შეგროვებული ინფორმაციის საფუძველზე, რათა მინიმუმამდე შემცირდეს სიზუსტის დაკარგვა. ქვემოთ მოცემული ფრაგმენტი გვიჩვენებს კოდის ნიმუშს კვანტიზაციისთვის:
ჩვენს კალიბრაციის პროცესში ვიყენებთ qasper მონაცემთა ნაკრების ქვესიმრავლეს. კვანტიზებული მოდელის ჩატვირთვა შეიძლება განხორციელდეს მარტივად:
წინადადებების ვექტორებად დაშიფვრა შეიძლება განხორციელდეს ანალოგიურად, როგორც ამას Transformers ბიბლიოთეკასთან ვართ მიჩვეულები:
დამატებით და მნიშვნელოვან დეტალებს CPU-ბექენდის დაყენების შესახებ (მანქანის სწორი კონფიგურაცია) ვაძლევთ ქვემოთ, შეფასების განყოფილებაში.
მოდელების წონების დაბალ სიზუსტეზე კვანტიზაცია იწვევს სიზუსტის დაკარგვას, რადგან ჩვენ ვკარგავთ სიზუსტეს fp32 წონებიდან int8-ზე გადასვლისას. ამიტომ, ჩვენი მიზანია შევაფასოთ ოპტიმიზებული მოდელების სიზუსტე მათი შედარებით ორიგინალ მოდელებთან MTEB-ის ორი ამოცანის გამოყენებით:
ქვემოთ მოცემული ცხრილი აჩვენებს თითოეული ამოცანის ტიპის საშუალო სიზუსტეს (მრავალ მონაცემთა ნაკრებზე) (MAP რერანკინგისთვის, NDCG@10 რიტრივალისთვის), სადაც int8 არის ჩვენი კვანტიზებული მოდელი და fp32 არის ორიგინალი მოდელი (შედეგები აღებულია MTEB-ის ოფიციალური ლიდერბორდიდან). კვანტიზებულმა მოდელებმა აჩვენეს 1%-ზე ნაკლები შეცდომის მაჩვენებელი ორიგინალ მოდელთან შედარებით რერანკინგის ამოცანაში და 1.55%-ზე ნაკლები რიტრივალის ამოცანაში. ჩვენ ვადარებთ ჩვენი მოდელების წარმადობას
თეგები:
#მანქანური სწავლება
#ოპტიმიზაცია
#pytorch
#კვანტიზაცია
#rag
#ipex
#xeon
#optimum intel
#cpu
#ჩაშენებული მოდელები
#fastrag
#intel avx-512
#vnni
#intel amx
#bge models
წყარო: huggingface.co
AI-ით გადამუშავებული
მსგავსი სტატიები
ხელოვნური ინტელექტი
Anthropic-ის Claude-ის აღზევება Apple App Store-ის რეიტინგებში პენტაგონთან მოლაპარაკებების ფონზე
ხელოვნური ინტელექტი
ტრამპის ადმინისტრაცია Anthropic-ს სანქციებს უწესებს ხელოვნური ინტელექტის გამოყენებაზე უარის გამო: ექსპერტი ინდუსტრიის უსაფრთხოების ხარვეზებზე საუბრობს
ხელოვნური ინტელექტი