Hugging Face: მანქანური სწავლის სამყარო არატექნიკური მომხმარებლებისთვის
ეს გზამკვლევი მიზნად ისახავს მანქანური სწავლის (ML) ფუნდამენტური პრინციპების ხელმისაწვდომად ახსნას არატექნიკური მომხმარებლებისთვის, პითონის ცოდნის საჭიროების გარეშე. იგი დეტალურად განიხილავს Hugging Face-ის ეკოსისტემას, მათ შორის Transformers-ის ბიბლიოთეკას, Hugging Face Hub-ს და Spaces-ს, რომლებიც აადვილებს ML მოდელების გამოყენებასა და განლაგებას. ასევე განმარტებულია LLM-ებისთვის საჭირო GPU-ების დაქირავების პროცესი Hugging Face-ის მეშვეობით, Docker-ის შაბლონების მნიშვნელობა და ძირითადი პროგრამი
შეიძლება გაინტერესებდეთ, როდესაც Hugging Face-ზე ამდენი სახელმძღვანელო უკვე არსებობს, რატომ შევქმენით კიდევ ერთი? პასუხი ხელმისაწვდომობაშია: არსებული რესურსების უმეტესობა ტექნიკურ ცოდნას, მათ შორის პითონის გამოცდილებას, მოითხოვს, რაც ხელს უშლის არატექნიკურ პირებს გაიგონ მანქანური სწავლის (ML) საფუძვლები. როგორც ხელოვნური ინტელექტის (AI) ბიზნეს მხრიდან მოსულმა ადამიანმა, ვაღიარებ, რომ სწავლის სირთულე ბარიერს წარმოადგენს და მსურდა შემეთავაზებინა უფრო ხელმისაწვდომი გზა თანამოაზრეებისთვის. ამიტომ, ეს გზამკვლევი მორგებულია არატექნიკურ აუდიტორიაზე, რომელსაც სურს უკეთ გაიგოს ღია კოდის მანქანური სწავლება პითონის ნულიდან სწავლის გარეშე. ჩვენ არ ვვარაუდობთ წინარე ცოდნას და კონცეფციებს თავიდანვე, დაწვრილებით ავხსნით სიცხადის უზრუნველსაყოფად. თუ ინჟინერი ხართ, ეს გზამკვლევი შესაძლოა ცოტა ძირითადი მოგეჩვენოთ, მაგრამ დამწყებთათვის, ის იდეალური საწყისი წერტილია. მოდით, დავიწყოთ... მაგრამ ჯერ ცოტა კონტექსტი.
Hugging Face Transformers არის ღია კოდის პითონის ბიბლიოთეკა, რომელიც წვდომას აძლევს ათასობით წინასწარ გაწვრთნილ Transformer მოდელს ბუნებრივი ენის დამუშავებისთვის (NLP), კომპიუტერული ხედვისთვის, აუდიო ამოცანებისთვის და სხვა. ის ამარტივებს Transformer მოდელების იმპლემენტაციის პროცესს იმით, რომ აბსტრაგირებას უკეთებს მოდელების გაწვრთნის ან განლაგების სირთულეს დაბალი დონის ML ფრეიმვორკებში, როგორიცაა PyTorch, TensorFlow და JAX. ბიბლიოთეკა არის უბრალოდ მრავალჯერადი გამოყენების კოდის ნაწილების კოლექცია, რომელიც შეიძლება ინტეგრირებული იყოს პროექტებში ფუნქციონალურობის უფრო ეფექტურად განსახორციელებლად საკუთარი კოდის ნულიდან დაწერის გარეშე. აღსანიშნავია, რომ Transformers ბიბლიოთეკა უზრუნველყოფს მრავალჯერადი გამოყენების კოდს მოდელების იმპლემენტაციისთვის ისეთ გავრცელებულ ფრეიმვორკებში, როგორიცაა PyTorch, TensorFlow და JAX. ამ მრავალჯერადი გამოყენების კოდზე წვდომა შესაძლებელია ბიბლიოთეკაში არსებული ფუნქციების (ასევე ცნობილი როგორც მეთოდები) გამოძახებით.
Hugging Face Hub არის თანამშრომლობის პლატფორმა, რომელიც მასპინძლობს ღია კოდის მოდელებისა და მონაცემთა ნაკრებების უზარმაზარ კოლექციას მანქანური სწავლისთვის – წარმოიდგინეთ, რომ ეს არის GitHub ML-ისთვის. Hub ხელს უწყობს გაზიარებასა და თანამშრომლობას იმით, რომ გაგიმარტივებთ სასარგებლო ML აქტივების აღმოჩენას, შესწავლასა და მათთან ურთიერთობას ღია კოდის საზოგადოებიდან. Hub ინტეგრირებულია Transformers-ის ბიბლიოთეკასთან და გამოიყენება მასთან ერთად, რადგან Transformers-ის ბიბლიოთეკის გამოყენებით განლაგებული მოდელები სწორედ Hub-იდან იტვირთება.
Hugging Face-ის Spaces არის სერვისი, რომელიც ხელმისაწვდომია Hugging Face Hub-ზე და უზრუნველყოფს მარტივ გამოსაყენებელ გრაფიკულ ინტერფეისს (GUI) ვებზე განთავსებული ML დემოებისა და აპლიკაციების შესაქმნელად და განლაგებისთვის. სერვისი საშუალებას გაძლევთ სწრაფად შექმნათ ML დემოები, ატვირთოთ საკუთარი აპლიკაციები ჰოსტინგისთვის, ან თუნდაც აირჩიოთ წინასწარ კონფიგურირებული ML აპლიკაციები მყისიერი განლაგებისთვის. ამ სახელმძღვანელოში ჩვენ განვალაგებთ ერთ-ერთ წინასწარ კონფიგურირებულ ML აპლიკაციას, JupyterLab ნოუთბუქს, შესაბამისი Docker კონტეინერის არჩევით. ნოუთბუქები არის ინტერაქტიული აპლიკაციები, რომლებიც საშუალებას გაძლევთ დაწეროთ და გააზიაროთ ცოცხალი შესრულებადი კოდი, რომელიც გადაჯაჭვულია დამატებით თხრობით ტექსტთან. ნოუთბუქები განსაკუთრებით გამოსადეგია მონაცემთა მეცნიერებისა და მანქანური სწავლის ინჟინრებისთვის, რადგან ისინი საშუალებას აძლევს მათ რეალურ დროში ექსპერიმენტი ჩაატარონ კოდთან და მარტივად განიხილონ და გააზიარონ შედეგები.
LLM-ების უმეტესობის გასაშვებად დაგჭირდებათ GPU, რომელიც, სამწუხაროდ, უფასო არ არის. თუმცა, მათი დაქირავება შეგიძლიათ Hugging Face-ისგან. არ ინერვიულოთ, ეს ბევრს არ დაგიჯდებათ. ამ სახელმძღვანელოსთვის საჭირო GPU, NVIDIA A10G, საათში მხოლოდ რამდენიმე დოლარი ღირს.
Docker-ის შაბლონი არის პროგრამული გარემოს წინასწარ განსაზღვრული გეგმა, რომელიც მოიცავს საჭირო პროგრამულ უზრუნველყოფასა და კონფიგურაციებს, რაც დეველოპერებს საშუალებას აძლევს ადვილად და სწრაფად განალაგონ აპლიკაციები თანმიმდევრული და იზოლირებული გზით. ნაგულისხმევად, ჩვენი Space მოყვება უფასო CPU, რაც ზოგიერთი აპლიკაციისთვის საკმარისია. თუმცა, LLM-ების მიერ მოთხოვნილი მრავალი გამოთვლა მნიშვნელოვნად სარგებლობს პარალელურად გაშვებით სიჩქარის გასაუმჯობესებლად, რაც GPU-ებს დიდებულად გამოსდით. ასევე მნიშვნელოვანია ისეთი GPU-ის არჩევა, რომელსაც საკმარისი მეხსიერება აქვს მოდელის შესანახად და თავისუფალი სამუშაო მეხსიერების უზრუნველსაყოფად. ჩვენს შემთხვევაში, 24GB-იანი A10G Small საკმარისია Phi-2-ისთვის.
!pip არის ბრძანება, რომელიც აინსტალირებს პითონის პაკეტებს Python Package Index-იდან (PyPI) – ბიბლიოთეკების ვებ-რეპოზიტორიუმი, რომელიც ხელმისაწვდომია პითონის გარემოში გამოსაყენებლად. ის საშუალებას გვაძლევს გავაფართოვოთ პითონის აპლიკაციების ფუნქციონალურობა მესამე მხარის დანამატების ფართო სპექტრის ინკორპორირებით. Hugging Face არის ბიბლიოთეკა, რომელიც აგებულია სხვა ფრეიმვორკებზე, როგორიცაა Pytorch, Tensorflow და JAX. ამ შემთხვევაში, ჩვენ ვიყენებთ Transformers-ს Pytorch-თან ერთად და ამიტომ გვჭირდება მისი ინსტალაცია მის ფუნქციონალზე წვდომისთვის.
წარმოიდგინეთ კლასები, როგორც კოდის რეცეპტები ე.წ. ობიექტების შესაქმნელად. ისინი სასარგებლოა, რადგან საშუალებას გვაძლევს შევინახოთ ობიექტები თვისებებისა და ფუნქციების კომბინაციით. ეს, თავის მხრივ, ამარტივებს კოდირებას, რადგან კონკრეტული თემებისთვის საჭირო ყველა ინფორმაცია და ოპერაცია ხელმისაწვდომია ერთი ადგილიდან. ჩვენ გამოვიყენებთ ამ კლასებს ორი ობიექტის შესაქმნელად: მოდელის და ტოკენიზატორის ობიექტის. მიუხედავად იმისა, რომ Transformers უკვე დაინსტალირებულია, Transformers-ში არსებული კონკრეტული კლასები ავტომატურად არ არის ხელმისაწვდომი თქვენს გარემოში გამოსაყენებლად. პითონი მოითხოვს, რომ ჩვენ ისინი სპეციალურად შემოვიტანოთ (import).
თეგები:
#ხელოვნური ინტელექტი
#llm
#მანქანური სწავლება
#gpu
#კომპიუტერული ხედვა
#ტრანსფორმერები
#hugging face
#pytorch
#ღია კოდი
#tensorflow
#jax
#nlp
#პითონი
#გზამკვლევი
#არატექნიკური
#დოკერი
#jupyterlab
წყარო: huggingface.co
AI-ით გადამუშავებული