მოდელების პროდუქციაში განთავსება, როგორც წესი, უამრავ სირთულესთან არის დაკავშირებული. ეს მოიცავს მოდელის კონტეინერში შეფუთვას, ინფრასტრუქტურის უზრუნველყოფას, პროგნოზირების API-ის შექმნას, მის დაცვას, მასშტაბირებას, მონიტორინგს და სხვა. მოდით, პირდაპირ ვთქვათ: მთელი ამ „სანტექნიკის“ აწყობა ძვირფას დროს გვართმევს რეალური მანქანური სწავლების სამუშაოდან. სამწუხაროდ, ამ პროცესში საშინელი შეცდომებიც შეიძლება მოხდეს. ჩვენ ვცდილობთ ამ პრობლემის გადაჭრას ახლად გაშვებული Hugging Face Inference Endpoints-ით. იმ მიზნით, რომ მანქანური სწავლება მაქსიმალურად მარტივი გავხადოთ, უმაღლესი ხარისხის სტანდარტების შენარჩუნებით, ჩვენ შევქმენით სერვისი, რომელიც საშუალებას გაძლევთ, მანქანური სწავლების მოდელები უშუალოდ Hugging Face hub-იდან განათავსოთ თქვენს საყვარელ ღრუბლოვან სერვისზე მართულ ინფრასტრუქტურაზე, სულ რამდენიმე დაწკაპუნებით. მარტივი, უსაფრთხო და მასშტაბირებადი: თქვენ შეგიძლიათ გქონდეთ ყველაფერი. მოდით გაჩვენებთ, როგორ მუშაობს ეს! Inference Endpoints-ის მიერ მხარდაჭერილი ამოცანების სიის დათვალიერებისას, გადავწყვიტე გამენთავსებინა Swin-ის გამოსახულების კლასიფიკაციის მოდელი, რომელიც ახლახან დავარეგულირე AutoTrain-ის გამოყენებით food101 მონაცემთა ნაკრებზე. თუ გაინტერესებთ, როგორ ავაწყე ეს მოდელი, ეს ვიდეო გაჩვენებთ მთელ პროცესს. ჩემი მოდელის გვერდიდან ვიწყებ, ვაწკაპუნებ „Deploy“-ზე (განთავსება) და ვირჩევ „Inference Endpoints“-ს. ეს პირდაპირ გადამიყვანს Endpoint-ის შექმნის გვერდზე. გადავწყვიტე ჩემი მოდელის უახლესი ვერსია განვათავსო ერთ GPU ინსტანციაზე, AWS-ზე, eu-west-1 რეგიონში. სურვილისამებრ, შემეძლო ავტომატური მასშტაბირების დაყენება და მოდელის საბაჟო კონტეინერში განთავსებაც კი. შემდეგ უნდა გადავწყვიტო, ვის ექნება წვდომა ჩემს Endpoint-თან. ყველაზე ნაკლებად უსაფრთხოდან ყველაზე უსაფრთხომდე, სამი ვარიანტია: მოდით, ჯერ დაცული Endpoint განვათავსოთ, შემდეგ კი — პირადი. მე უბრალოდ ვირჩევ „Protected“-ს (დაცული) და ვაწკაპუნებ „Create Endpoint“-ზე (Endpoint-ის შექმნა). რამდენიმე წუთის შემდეგ, Endpoint მზად არის და მისი URL ხილვადია. შემიძლია დაუყოვნებლივ შევამოწმო იგი სურათის ატვირთვით „inference widget“-ში. რა თქმა უნდა, შემიძლია Endpoint-ის პირდაპირ გამოძახება რამდენიმე სტრიქონი Python კოდით და ვახდენ ავთენტიფიკაციას ჩემი Hugging Face API ტოკენით (თქვენსას იპოვით თქვენს ანგარიშის პარამეტრებში hub-ზე). როგორც მოსალოდნელია, პროგნოზირებული შედეგი იდენტურია. „Analytics“ (ანალიტიკა) ჩანართზე გადასვლისას, ვხედავ Endpoint-ის მეტრიკას. ზოგიერთი ჩემი მოთხოვნა წარუმატებელი აღმოჩნდა, რადგან განზრახ გამოვტოვე „Content-Type“ სათაური. დამატებითი დეტალებისთვის, შემიძლია გადავამოწმო სრული ჟურნალები „Logs“ (ჟურნალები) ჩანართში. ახლა, მოდით, გავზარდოთ ჩვენი უსაფრთხოების დონე და განვათავსოთ პირადი Endpoint. ზემოთ მოცემული ნაბიჯების გამეორებით, ამჯერად ვირჩევ „Private“-ს (პირადი). ეს ხსნის ახალ ფანჯარას, რომელიც მთხოვს AWS ანგარიშის იდენტიფიკატორს, რომელშიც Endpoint ხილვადი იქნება. შევიყვან შესაბამის ID-ს და ვაწკაპუნებ „Create Endpoint“-ზე. არ ხართ დარწმუნებული თქვენს AWS ანგარიშის ID-ში? აი, AWS CLI-ის ერთი სტრიქონი თქვენთვის: `aws sts get-caller-identity --query Account --output text` რამდენიმე წუთის შემდეგ, Inference Endpoints-ის მომხმარებლის ინტერფეისი აჩვენებს VPC სერვისის სახელს. ჩემი არის: `com.amazonaws.vpce.eu-west-1.vpce-svc-07a49a19a427abad7`. შემდეგ ვხსნი AWS კონსოლს და გადავდივარ „VPC Endpoints“ გვერდზე. შემდეგ ვაწკაპუნებ „Create endpoint“-ზე VPC Endpoint-ის შესაქმნელად, რაც ჩემს AWS ანგარიშს საშუალებას მისცემს, წვდომა ჰქონდეს ჩემს Inference Endpoint-თან AWS PrivateLink-ის მეშვეობით. მოკლედ, უნდა შევიყვანო ზემოთ ნაჩვენები VPC სერვისის სახელი, ავირჩიო VPC და ქვექსელ(ებ)ი, რომლებსაც მიეცემათ Endpoint-თან წვდომის უფლება და მივუერთო შესაბამისი უსაფრთხოების ჯგუფი (Security Group). არაფერი საშიში: უბრალოდ მივყვები Inference Endpoints-ის დოკუმენტაციაში მოცემულ ნაბიჯებს. როგორც კი შევქმნი VPC Endpoint-ს, ჩემი კონფიგურაცია ასე გამოიყურება. Inference Endpoints-ის მომხმარებლის ინტერფეისზე დაბრუნების შემდეგ, პირადი Endpoint ერთი-ორი წუთის შემდეგ ირთვება. მოდით, შევამოწმოთ! Amazon EC2 ინსტანციის გაშვებით ერთ-ერთ ქვექსელში, რომელსაც ნებადართული აქვს VPC Endpoint-ზე წვდომა, ვიყენებ inference endpoint URL-ს ჩემი სატესტო სურათის პროგნოზირებისთვის. სულ ეს არის. ტესტირების დასრულების შემდეგ, ვშლი შექმნილ Endpoint-ებს არასასურველი ხარჯების თავიდან ასაცილებლად. ასევე ვშლი VPC Endpoint-ს AWS კონსოლში. Hugging Face-ის მომხმარებლები უკვე იყენებენ Inference Endpoints-ს. მაგალითად, Phamily-მ, ქრონიკული მოვლისა და პროაქტიული მოვლის #1 შიდა პლატფორმამ, გვითხრა, რომ Inference Endpoints ეხმარება მათ HIPAA-თან თავსებადი Transformer-ის განთავსების გამარტივებასა და დაჩქარებაში. Inference Endpoints-ის წყალობით, შეგიძლიათ პროდუქციაში გამოსაყენებელი, მასშტაბირებადი, უსაფრთხო Endpoint-ები განათავსოთ წუთებში, სულ რამდენიმე დაწკაპუნებით. რატომ არ სცდით? ჩვენ უამრავი იდეა გვაქვს სერვისის გასაუმჯობესებლად და მოხარული ვიქნებით თქვენი უკუკავშირის მისაღებად Hugging Face-ის ფორუმზე. გმადლობთ წაკითხვისთვის და გაერთეთ Inference Endpoints-ით! მეტი სტატია ჩვენი ბლოგიდან · დარეგისტრირდით ან შეხვიდეთ კომენტარისთვის.