Paylanmış Maşınla Öyrənmə Xidməti və Mərkəzləşdirilmiş Model Xidməti
Paylanmış ML xidməti, miqyaslanma və dayanıqlıq üçün çıxarış iş yüklərini birdən çox qovşaq arasında yayır, mərkəzləşdirilmiş model xidməti isə sadəlik və nəzarət üçün vahid sistem üzərində hesablayır. Aralarında seçim trafik nümunələrindən, gecikmə tələblərindən və əməliyyat yetkinliyindən asılıdır.
Seçilmişlər
Paylanmış servis tərəziləri üfüqi, mərkəzləşdirilmiş servis isə yalnız şaquli olaraq istifadə olunur.
Mərkəzləşdirilmiş qurğular daha aşağı əməliyyat mürəkkəbliyi təklif edir, lakin tək bir nasazlıq nöqtəsi yaradır.
Paylanmış arxitekturalar yük balanslaşdırması vasitəsilə trafik artımlarını daha zərif şəkildə idarə edir.
Mərkəzləşdirilmiş xidmət adətən aşağı və orta trafikdə daha ardıcıl gecikmə təmin edir.
Paylanmış ML Servisi nədir?
Miqyas və xəta tolerantlığını idarə etmək üçün birdən çox maşın və ya qovşaq arasında model çıxarışını işlədən xidmət arxitekturası.
Nəticə çıxarma iş yükləri GPU və ya CPU klasterləri arasında bölünür və bu da sorğu həcmi artdıqca üfüqi miqyaslanmaya imkan verir.
NVIDIA Triton Inference Server, Ray Serve və TensorFlow Serving kimi çərçivələr paylanmış yerləşdirmə nümunələrini qutudan çıxarmadan dəstəkləyir.
Yük balanslaşdırıcıları daxil olan sorğuları ən az yüklənmiş qovşaqa yönləndirir və trafik artımları zamanı quyruq gecikməsini azaldır.
Tək bir qovşağın sıradan çıxması bütün xidməti sıradan çıxarmır, çünki qalan qovşaqlar trafiki udur.
Ümumi istifadə hallarına böyük dil model nəticəsi, tövsiyə sistemləri və real vaxt kompüter görmə boru kəmərləri daxildir.
Mərkəzləşdirilmiş Model Xidməti nədir?
Bir maşının və ya kiçik bir klasterin modeli yerləşdirdiyi və bütün nəticə çıxarma sorğularını emal etdiyi ənənəvi xidmət quruluşu.
Bütün çıxarış trafiki tək bir ana hostdan axır və bu da yerləşdirməni və ayıklamanı xeyli asanlaşdırır.
Gecikmə proqnozlaşdırıla bilən olaraq qalır, çünki sorğular heç vaxt xidmət qovşaqları arasında şəbəkə keçidini keçmir.
Resurs planlaşdırması sadədir, çünki tutum bir maşının aparat izinə bərabərdir.
Ümumi platformalara tərs proksi arxasındakı Flask və ya FastAPI tətbiqləri və ya tək qovşaqlı MLflow xidmət nümunəsi daxildir.
Sadəliyin miqyasdan üstün olduğu az trafikli daxili alətlər, toplu tipli API-lər və prototiplər üçün ən uyğundur.
Müqayisə Cədvəli
Xüsusiyyət
Paylanmış ML Servisi
Mərkəzləşdirilmiş Model Xidməti
Memarlıq üslubu
Yük balanslaşdırıcısının arxasındakı birdən çox qovşaq
Tək ev sahibi və ya sıx bağlı klaster
Ölçülənə bilənlik
Üfüqi, düyün sayı ilə demək olar ki, xətti
Şaquli, tək maşınlı aparatla məhdudlaşır
Xəta Dözümlülüyü
Yüksək, sağ qalan fərdi düyün nasazlıqları
Aşağı, tək bir uğursuzluq nöqtəsi
Əməliyyat Mürəkkəbliyi
Daha yüksək, orkestrləşdirmə və monitorinq tələb edir
Daha aşağı, yerləşdirmək və ayıklamaq daha asandır
Tipik Gecikmə Profili
Dəyişkən, məhsuldarlıq üçün optimallaşdırılmışdır
Ardıcıl, proqnozlaşdırıla bilənlik üçün optimallaşdırılmış
Ən Yaxşısı
Yüksək QPS, böyük modellər, istehsal trafiki
Aşağı və orta səviyyəli trafik, prototiplər, daxili alətlər
Xərc Modeli
Daha yüksək baza, tələbə uyğun olaraq miqyaslanır
Daha aşağı baza, sabit tutum
Ümumi Çərçivələr
Triton, Ray Serve, KServe, BentoML
FastAPI, Flask, MLflow, tək düyünlü TF Servis
Ətraflı Müqayisə
Ölçülülük və Ötürmə
Paylanmış xidmət, trafik tək bir maşının idarə edə biləcəyindən artıq olduqda parlayır. Daha çox replika və ya parça əlavə etmək yükü yayır və qəfil sıçrayışlar zamanı belə cavab müddətini sabit saxlayır. Mərkəzləşdirilmiş xidmət, əksinə, hostun təmin edə biləcəyi hər şeydə ötürmə qabiliyyətini məhdudlaşdırır, buna görə də miqyaslandırma daha çox qovşaq əlavə etmək əvəzinə daha böyük bir qutu almaq deməkdir.
Xəta Dözümlülüyü və Etibarlılıq
Paylanmış klasterdəki bir qovşaq sıradan çıxdıqda, trafik avtomatik olaraq yenidən yönləndirilir və xidmət onlayn qalır. Mərkəzləşdirilmiş qurğularda belə bir təhlükəsizlik şəbəkəsi yoxdur, buna görə də aparat nasazlığı və ya nüvə panikası kimsə müdaxilə edənə qədər bütün API-ni oflayn vəziyyətə gətirir. Kritik missiya tətbiqləri üçün bu tək bir nasazlıq nöqtəsi çox vaxt problem yaradır.
Əməliyyat xərcləri
Paylanmış sistemin idarə edilməsi xidmət kəşfini, sağlamlıq yoxlamalarını, avtomatik miqyaslama qaydalarını və bir çox hərəkətli hissələrdə müşahidə olunmanı idarə etmək deməkdir. Mərkəzləşdirilmiş xidmət kiçik komandalar üçün daha əlverişlidir, çünki bir maşındakı tək prosesi izləmək və düşünmək daha asandır. Güzəşt budur ki, bugünkü sadəlik sabah çətinlik yarada bilər.
Gecikmə Xüsusiyyətləri
Paylanmış quraşdırmalar bəzən yük balanslaşdırıcısı vasitəsilə kiçik bir şəbəkə keçidi əlavə edir, lakin onlar həmçinin qovşaq başına növbə dərinliyini azaldır ki, bu da tez-tez yük altında quyruq gecikməsini yaxşılaşdırır. Mərkəzləşdirilmiş xidmət əlavə keçiddən tamamilə qaçınır və aşağı trafikdə çox ardıcıl gecikmə təmin edir. Lakin yüksək trafikdə növbələr tək hostda toplanır və p99 gecikməsi tez bir zamanda azalır.
Xərc və Resurs Səmərəliliyi
Paylanmış xidmət, avtomatik miqyaslama vasitəsilə tutumu tələbata uyğunlaşdırmağa imkan verir, beləliklə, yalnız səssiz dövrlərdə istifadə etdiyiniz şeylərə görə ödəniş edirsiniz. Mərkəzləşdirilmiş xidmət, pik yük üçün əvvəlcədən təminat tələb edir ki, bu da əksər vaxt boş avadanlıq deməkdir. Proqnozlaşdırıla bilən, az həcmli iş yükləri üçün mərkəzləşdirilmiş yanaşma ümumiyyətlə daha ucuzdur.
Üstünlüklər və Eksikliklər
Paylanmış ML Servisi
Üstünlüklər
+Üfüqi miqyaslanma
+Daxili xətaya dözümlülük
+Trafik sıçrayışlarını idarə edir
+Böyük modelləri dəstəkləyir
Saxlayıcı
−Daha yüksək əməliyyat mürəkkəbliyi
−Aşağı trafikdə daha bahalıdır
−Orkestrləşdirmə alətləri tələb olunur
−Sazlama daha çətindir
Mərkəzləşdirilmiş Model Xidməti
Üstünlüklər
+Yerləşdirmək asandır
+Proqnozlaşdırıla bilən gecikmə
+Aşağı baza dəyəri
+Asanlıqla sazlana bilər
Saxlayıcı
−Tək bir uğursuzluq nöqtəsi
−Məhdud şaquli miqyaslama
−Aşağı yükdə boş işləmə qabiliyyəti
−Tikanların altındakı tıxaclar
Yaygın yanlış anlaşılmalar
Əfsanə
Paylanmış xidmət həmişə mərkəzləşdirilmiş xidmətdən daha sürətlidir.
Həqiqət
Sürət iş yükündən və konfiqurasiyadan asılıdır. Aşağı trafikdə paylanmış qurğularda əlavə şəbəkə keçidi əslində gecikmə əlavə edə bilər, yaxşı tənzimlənmiş mərkəzləşdirilmiş server isə daha sürətli cavab verə bilər. Paylanmış xidmət, mütləq xam sürətdə deyil, ağır yük altında ötürmə qabiliyyəti və quyruq gecikməsində üstünlük təşkil edir.
Əfsanə
Mərkəzləşdirilmiş xidmət ümumiyyətlə miqyaslana bilməz.
Həqiqət
Mərkəzləşdirilmiş qurğular daha çox yaddaş və GPU-ya malik daha böyük maşınlara yüksəltməklə şaquli olaraq miqyaslana bilər. Bir çox istehsal sistemi paylanmaya ehtiyac duymazdan əvvəl illərlə mərkəzləşdirilmiş xidməti uğurla işlədir. Məhdudiyyət arxitekturada deyil, aparatdadır.
Əfsanə
Paylanmış xidmət monitorinqə ehtiyacı aradan qaldırır.
Həqiqət
Paylanmış sistemlər əslində daha az yox, daha çox monitorinq tələb edir. Problemləri erkən aşkarlamaq üçün qovşaq başına sağlamlığı, marşrutlaşdırma sorğularını, replika sayını və klaster miqyaslı gecikməni izləməlisiniz. Müşahidə olunmadığı təqdirdə, nasazlıqların diaqnozu daha da çətinləşir.
Əfsanə
Bütün ML modelləri paylanmış xidmətdən faydalanır.
Həqiqət
Trafik az olan kiçik modellər adətən tək bir maşında mükəmməl işləyir. Onların paylanması əhəmiyyətli performans qazancı olmadan xərc və mürəkkəblik artırır. Paylama əsasən böyük modellər, yüksək QPS və ya ciddi mövcudluq tələbləri üçün özünü doğruldur.
Əfsanə
Mərkəzləşdirilmiş xidmət köhnəlmiş bir texnologiyadır.
Həqiqət
Mərkəzləşdirilmiş xidmət, xüsusən də daxili API-lər, toplu çıxarış işləri və erkən mərhələli məhsullar kimi bir çox real dünya yerləşdirmələri üçün standart olaraq qalır. Bu, köhnəlmiş deyil; sadəcə fərqli problemlər dəsti üçün düzgün vasitədir.
Tez-tez verilən suallar
Paylanmış və mərkəzləşdirilmiş ML xidməti arasındakı əsas fərq nədir?
Paylanmış ML xidməti, yük balanslaşdırıcısı vasitəsilə birləşdirilmiş birdən çox maşın arasında nəticə çıxarır, mərkəzləşdirilmiş xidmət isə hər şeyi tək bir hostda idarə edir. Paylanmış yanaşma miqyas və davamlılığa üstünlük verir, mərkəzləşdirilmiş yanaşma isə sadəliyə və proqnozlaşdırıla bilən gecikməyə üstünlük verir.
Paylanmış ML xidmətindən nə vaxt istifadə etməliyəm?
Paylanmış xidmət yüksək sorğu həcmlərini idarə edərkən, bir maşın üçün çox böyük modelləri işlətdiyinizdə və ya yüksək mövcudluğa ehtiyac duyduğunuzda məna kəsb edir. Bu, həmçinin trafik modelləri kəskin olduqda və real vaxt rejimində tələbə uyğun avtomatik miqyaslama istədiyiniz zaman düzgün seçimdir.
Mərkəzləşdirilmiş model xidməti hələ də istehsalda istifadə olunurmu?
Bəli, bir çox istehsal sistemi, xüsusən də daxili alətlər, aşağı trafikli API-lər və toplu nəticə çıxarma üçün hələ də mərkəzləşdirilmiş xidmətdən istifadə edir. Bir çox komanda mərkəzləşdirilmiş xidmətə başlayır və yalnız trafik və ya model ölçüsü problemi yaratdıqda paylanmış sistemə keçir.
Hansı yanaşma daha ucuzdur?
Mərkəzləşdirilmiş xidmət adətən az trafikdə daha ucuzdur, çünki yalnız bir cihaz üçün ödəniş edirsiniz. Paylanmış xidmət, trafik üfüqi miqyaslanmanı əsaslandırdıqdan sonra səmərəli olur, çünki avtomatik miqyaslanma xərci faktiki tələblə uyğunlaşdırmağa imkan verir.
Xəta tolerantlığı ikisi arasında necə fərqlənir?
Paylanmış xidmət fərdi qovşaq nasazlıqlarından xilas olur, çünki trafik sağlam replikalara yönləndirilir. Mərkəzləşdirilmiş xidmət tək bir nasazlıq nöqtəsinə malikdir, buna görə də hər hansı bir aparat və ya proqram təminatı qəzası host bərpa olunana qədər bütün API-ni oflayn vəziyyətə gətirir.
Paylanmış ML xidmətini hansı çərçivələr dəstəkləyir?
Populyar seçimlərə klaster rejimində NVIDIA Triton Inference Server, Ray Serve, KServe, BentoML və TensorFlow Serving daxildir. Bunların əksəriyyəti həmçinin mərkəzləşdirilmiş yerləşdirmələri dəstəkləyir, buna görə də kiçikdən başlaya və daha sonra miqyaslana bilərsiniz.
Paylanmış və mərkəzləşdirilmiş xidməti qarışdıra bilərəmmi?
Əlbəttə. Bir çox komanda aşağı prioritetli iş yükləri üçün mərkəzləşdirilmiş bir quruluş və gecikməyə həssas və ya yüksək trafikli modellər üçün paylanmış bir klaster işlədir. Hibrid arxitekturalar geniş yayılmışdır və hər xidmət üçün dəyəri etibarlılıqla balanslaşdırmağa imkan verir.
Paylanmış xidmət həmişə gecikməni azaldırmı?
Həmişə deyil. Aşağı trafikdə, yük balanslaşdırıcısından keçən əlavə şəbəkə keçidi bir neçə millisaniyə əlavə edə bilər. Lakin, ağır yük altında paylanmış xidmət qovşaq başına növbə dərinliyini azaldır və adətən quyruq gecikməsini əhəmiyyətli dərəcədə yaxşılaşdırır.
Mərkəzləşdirilmiş xidmətdən paylanmış xidmətə necə keçid edə bilərəm?
Modelinizi konteynerləşdirməklə və iki və ya üç replikadan ibarət yük balanslaşdırıcısının arxasına qoymaqla başlayın. Trafiki tədricən dəyişdirməzdən əvvəl sağlamlıq yoxlamaları, avtomatik miqyaslama qaydaları və mərkəzləşdirilmiş qeydiyyat əlavə edin. Əksər xidmət çərçivələri bu keçidi olduqca ağrısız edir.
GPU yaddaşı memarlıq seçimində hansı rol oynayır?
Əgər modeliniz tək bir GPU-nun yaddaşına rahatlıqla uyğun gəlirsə, mərkəzləşdirilmiş xidmət çox vaxt ən sadə yoldur. Model bir GPU-nu keçdikdə və ya bir çox eyni vaxtda sorğuya xidmət etməlisinizsə, modelin bölünməsi və ya tensor paralelliyi ilə paylanmış xidmət zəruri olur.
Hökm
Yüksək sorğu həcmi gözlədiyiniz, xətaya dözümlülüyə ehtiyacınız olduğu və ya tək maşın yaddaşını aşan böyük modellər işlətdiyiniz zaman paylanmış ML xidmətini seçin. Sadəlik və proqnozlaşdırıla bilən gecikmənin xam miqyasdan daha çox əhəmiyyət kəsb etdiyi prototiplər, daxili alətlər və ya az trafikli API-lər üçün mərkəzləşdirilmiş model xidmətindən istifadə edin.