Llama 2-ის ეფექტური განთავსება AWS Inferentia2-ზე Hugging Face Optimum Neuron-ის მეშვეობით
Hugging Face-ის ბლოგზე ადრე წარდგენილი AWS Inferentia2-ის გაფართოების შედეგად, ახლა შესაძლებელია დიდი ენობრივი მოდელების (LLM) განთავსება ტექსტის გენერაციისთვის AWS Inferentia2 ინსტანციებზე Optimum Neuron-ის გამოყენებით. სტატია დეტალურად აღწერს Llama 2-ის განთავსების პროცესს, გთავაზობთ რეკომენდაციებს Hugging Face Neuron Deep Learning AMI-ზე ან Amazon SageMaker-ზე განთავსების შესახებ და განმარტავს მოდელების კომპილაციასა და ექსპორტს. ასევე, მოცემულია Inferentia2-ზე ტექსტის გენერაციის ეფექტურობის ა
Hugging Face-ის ბლოგზე წინა პუბლიკაციაში ჩვენ წარვადგინეთ AWS Inferentia2, AWS Inferentia-ს მეორე თაობის აქსელერატორი, და განვმარტეთ, თუ როგორ შეიძლებოდა optimum-neuron-ის გამოყენება Hugging Face-ის მოდელების სწრაფად განთავსებისთვის სტანდარტული ტექსტური და ვიზუალური ამოცანებისთვის AWS Inferentia 2 ინსტანციებზე. AWS Neuron SDK-თან ინტეგრაციის შემდგომი ნაბიჯის ფარგლებში, ახლა შესაძლებელია 🤗 optimum-neuron-ის გამოყენება დიდი ენობრივი მოდელების (LLM) განთავსებისთვის ტექსტის გენერაციისთვის AWS Inferentia2-ზე. ამ დემონსტრაციისთვის Llama 2-ზე უკეთეს მოდელს ვერ ავირჩევდით, რომელიც Hugging Face hub-ზე ერთ-ერთი ყველაზე პოპულარული მოდელია.
ჩვენი რეკომენდაციაა Hugging Face Neuron Deep Learning AMI (DLAMI)-ის გამოყენება. DLAMI მოიცავს ყველა საჭირო ბიბლიოთეკას წინასწარ შეფუთულ მდგომარეობაში, მათ შორის Optimum Neuron, Neuron Drivers, Transformers, Datasets და Accelerate. ალტერნატიულად, შეგიძლიათ გამოიყენოთ Hugging Face Neuron SDK DLC, რათა განათავსოთ მოდელები Amazon SageMaker-ზე. შენიშვნა: დაელოდეთ მომავალ პუბლიკაციას, რომელიც SageMaker-ზე განთავსებას მიეძღვნება. და ბოლოს, ეს კომპონენტები ასევე შესაძლებელია ხელით დაინსტალირდეს ახალ Inferentia2 ინსტანციაზე optimum-neuron-ის ინსტალაციის ინსტრუქციების მიხედვით.
როგორც optimum-neuron-ის დოკუმენტაციაშია განმარტებული, მოდელები უნდა იყოს კომპილირებული და ექსპორტირებული სერიალიზებულ ფორმატში, სანამ მათ Neuron მოწყობილობებზე გაუშვებთ. საბედნიეროდ, 🤗 optimum-neuron გთავაზობთ ძალიან მარტივ API-ს სტანდარტული 🤗 transformers მოდელების Neuron ფორმატში ექსპორტისთვის. ამას მცირე განმარტება სჭირდება: თქვენი პარამეტრებისა და inferentia host-ის არჩევანზე დამოკიდებულებით, ამას შეიძლება დასჭირდეს რამდენიმე წუთიდან ერთ საათზე მეტიც. საბედნიეროდ, ამის გაკეთება მხოლოდ ერთხელ დაგჭირდებათ, რადგან შეგიძლიათ შეინახოთ თქვენი მოდელი და შემდეგში ხელახლა ჩატვირთოთ. უკეთესიც, შეგიძლიათ ატვირთოთ ის Hugging Face hub-ზე.
მას შემდეგ, რაც თქვენი მოდელი ექსპორტირებული იქნება, შეგიძლიათ ტექსტის გენერირება transformers ბიბლიოთეკის გამოყენებით, როგორც ეს დეტალურად არის აღწერილი წინა პუბლიკაციაში. შენიშვნა: მოდელისთვის მრავალი შეყვანის მოთხოვნის გადაცემისას, მიღებული ტოკენების თანმიმდევრობა უნდა იყოს შევსებული მარცხნიდან ნაკადის დასასრულის ტოკენით. ექსპორტირებულ მოდელებთან ერთად შენახული ტოკენაიზერები შესაბამისად არის კონფიგურირებული. მხარდაჭერილია შემდეგი გენერაციის სტრატეგიები: ლოგიტების წინასწარი დამუშავების/ფილტრების უმეტესობა (მაგალითად, გამეორების ჯარიმა) მხარდაჭერილია. მათთვის, ვისაც სიმარტივე უყვარს, არსებობს კიდევ უფრო მარტივი გზა LLM მოდელის გამოსაყენებლად AWS Inferentia 2-ზე optimum-neuron pipelines-ის მეშვეობით. მათი გამოყენება ისეთივე მარტივია, როგორც:
მაგრამ რამდენად ეფექტურია ტექსტის გენერაცია Inferentia2-ზე? მოდით გავარკვიოთ! ჩვენ ავტვირთეთ hub-ზე Llama 2 7B და 13B მოდელების წინასწარ კომპილირებული ვერსიები სხვადასხვა კონფიგურაციით: შენიშვნა: ყველა მოდელი კომპილირებულია მაქსიმალური თანმიმდევრობის სიგრძით 2048. Llama 2 7B "ბიუჯეტური" მოდელი განკუთვნილია inf2.xlarge ინსტანციაზე განთავსებისთვის, რომელსაც აქვს მხოლოდ ერთი Neuron მოწყობილობა და საკმარისი CPU მეხსიერება მოდელის ჩასატვირთად. ყველა სხვა მოდელი კომპილირებულია inf2.48xlarge ინსტანციაზე არსებული ბირთვების სრული მოცულობის გამოსაყენებლად. შენიშვნა: გთხოვთ, იხილოთ inferentia2 პროდუქტის გვერდი ხელმისაწვდომი ინსტანციების დეტალებისთვის.
ჩვენ შევქმენით ორი „ლატენტურობაზე“ ორიენტირებული კონფიგურაცია Llama 2 7B და Llama 2 13B მოდელებისთვის, რომლებსაც შეუძლიათ ერთდროულად მხოლოდ ერთი მოთხოვნის დამუშავება, მაგრამ სრული სიჩქარით. ასევე შევქმენით ორი „გამტარუნარიანობაზე“ ორიენტირებული კონფიგურაცია ოთხამდე მოთხოვნის პარალელურად მომსახურებისთვის. მოდელების შესაფასებლად, ჩვენ ვაგენერირებთ ტოკენებს საერთო თანმიმდევრობის სიგრძემდე 1024, დაწყებული 256 შეყვანის ტოკენიდან (ანუ, ჩვენ ვაგენერირებთ 256, 512 და 768 ტოკენს). შენიშვნა: „ბიუჯეტური“ მოდელის მაჩვენებლები მოცემულია, მაგრამ გრაფიკებში არ არის შეტანილი უკეთესი წაკითხვადობისთვის.
კოდირების დრო არის შეყვანის ტოკენების დამუშავებისა და პირველი გამომავალი ტოკენის გენერაციისთვის საჭირო დრო. ეს არის ძალიან მნიშვნელოვანი მეტრიკა, რადგან ის შეესაბამება იმ ლატენტურობას, რომელსაც მომხმარებელი უშუალოდ აღიქვამს გენერირებული ტოკენების სტრიმინგისას. ჩვენ ვამოწმებთ კოდირების დროს კონტექსტის გაზრდილი ზომებისთვის: 256 შეყვანის ტოკენი დაახლოებით შეესაბამება ტიპურ კითხვა-პასუხის გამოყენებას, ხოლო 768 უფრო მეტად დამახასიათებელია Retrieval Augmented Generation (RAG) გამოყენების შემთხვევისთვის. „ბიუჯეტური“ მოდელი (Llama2 7B-B) განთავსებულია inf2.xlarge ინსტანციაზე, ხოლო სხვა მოდელები განთავსებულია inf2.48xlarge ინსტანციაზე. კოდირების დრო გამოხატულია წამებში.
ჩვენ ვხედავთ, რომ ყველა განთავსებული მოდელი აჩვენებს შესანიშნავ რეაგირების დროს, ხანგრძლივი კონტექსტების შემთხვევაშიც კი. ბოლოდან ბოლომდე ლატენტურობა შეესაბამება 1024 ტოკენის თანმიმდევრობის სიგრძემდე მისასვლელად საჭირო მთლიან დროს. შესაბამისად, ის მოიცავს კოდირების და გენერაციის დროს. „ბიუჯეტური“ მოდელი (Llama2 7B-B) განთავსებულია inf2.xlarge ინსტანციაზე, ხოლო სხვა მოდელები განთავსებულია inf2.48xlarge ინსტანციაზე. ლატენტურობა გამოხატულია წამებში.
ყველა მაღალი კლასის ინსტანციაზე განთავსებული მოდელი აჩვენებს კარგ ლატენტურობას, მათ შორის ისეთებიც, რომლებიც რეალურად გამტარუნარიანობის ოპტიმიზაციისთვის არის კონფიგურირებული. „ბიუჯეტური“ მოდელის ლატენტურობა მნიშვნელოვნად მაღალია, მაგრამ მაინც მისაღებია. გამტარუნარიანობის შესაფასებლად ჩვენ ვიყენებთ იმავე კონვენციას, რასაც სხვა ბენჩმარკები, კერძოდ, ბოლოდან ბოლომდე ლატენტურობის გაყოფას შეყვანისა და გამომავალი ტოკენების ჯამზე. სხვა სიტყვებით, ჩვენ ვყოფთ ბოლოდან ბოლომდე ლატენტურობას batch_size * sequence_length-ზე, რათა მივიღოთ გენერირებული ტოკენების რაოდენობა წამში. „ბიუჯეტური“ მოდელი (Llama2 7B-B) არის
თეგები:
#ხელოვნური ინტელექტი
#llm
#მანქანური სწავლება
#ღრმა სწავლება
#hugging face
#ღრუბლოვანი გამოთვლები
#წარმადობა
#ტექსტის გენერაცია
#sagemaker
#llama 2
#aws inferentia2
#optimum neuron
#dlami
წყარო: huggingface.co
AI-ით გადამუშავებული
მსგავსი სტატიები
ხელოვნური ინტელექტი
Anthropic-ის Claude-ის აღზევება Apple App Store-ის რეიტინგებში პენტაგონთან მოლაპარაკებების ფონზე
ხელოვნური ინტელექტი
ტრამპის ადმინისტრაცია Anthropic-ს სანქციებს უწესებს ხელოვნური ინტელექტის გამოყენებაზე უარის გამო: ექსპერტი ინდუსტრიის უსაფრთხოების ხარვეზებზე საუბრობს
ხელოვნური ინტელექტი