Az összes iparágban a gépi tanulási (ML) modellek egyre mélyebbek, a munkafolyamatok egyre összetettebbek, és a munkaterhelések nagyobb léptékben működnek. Jelentős erőfeszítéseket és erőforrásokat fektetnek a modellek pontosabbá tételére, mivel ez a befektetés közvetlenül jobb termékeket és tapasztalatokat eredményez. Másrészt ezeknek a modelleknek a termelésben való hatékony működése nem triviális vállalkozás, amelyet gyakran figyelmen kívül hagynak, annak ellenére, hogy kulcsfontosságú a teljesítmény- és költségvetési célok eléréséhez. Ebben a bejegyzésben bemutatjuk, hogyan Exafunction és AWS Inferentia működjenek együtt az éles ML modellek egyszerű és költséghatékony üzembe helyezése érdekében.
Exafunkció egy induló vállalkozás, amely arra összpontosít, hogy lehetővé tegye a vállalatok számára, hogy a lehető leghatékonyabban hajtsák végre az ML-t. Egyik termékük az ExaDeploy, egy könnyen használható SaaS-megoldás az ML-munkaterhelések nagyarányú kiszolgálására. Az ExaDeploy hatékonyan hangszereli az ML munkaterhelést vegyes erőforrások (CPU és hardveres gyorsítók) között, hogy maximalizálja az erőforrás-kihasználást. A hatékony és megbízható telepítés érdekében gondoskodik az automatikus méretezésről, a számítási helymegosztásról, a hálózati problémákról, a hibatűrésről és sok másról is. AWS Inferentia alapú Amazon EC2 Inf1 példányok célja, hogy a legalacsonyabb következtetésenkénti költséget biztosítsák a felhőben. Az ExaDeploy mostantól támogatja az Inf1-példányokat, amelyek lehetővé teszik a felhasználók számára, hogy mind a hardveralapú megtakarításokat a gyorsítókból, mind pedig a szoftver alapú megtakarításokat az optimalizált erőforrás-virtualizációból és -hangszerelésből – nagy méretekben elérjék.
Megoldás áttekintése
Hogyan oldja meg az ExaDeploy a telepítés hatékonyságát
A számítási erőforrások hatékony kihasználása érdekében mérlegelnie kell a megfelelő erőforrás-allokációt, az automatikus skálázást, a számítási helymeghatározást, a hálózati költségek és késleltetések kezelését, a hibatűrést, a verziószámítást és a reprodukálhatóságot stb. A léptékben minden hiányosság lényegesen befolyásolja a költségeket és a késleltetést, és sok nagyvállalat belső csapatok és szakértelem kialakításával orvosolta ezeket a hiányosságokat. A legtöbb vállalat számára azonban nem praktikus az általánosítható szoftverek kidolgozásának pénzügyi és szervezési többletköltségei felvállalása, amely nem a vállalat kívánt alapvető kompetenciája.
Az ExaDeploy célja, hogy megoldja ezeket a telepítési hatékonysággal kapcsolatos problémákat, beleértve azokat is, amelyek a legbonyolultabb munkaterheléseknél, például az autonóm jármű és a természetes nyelvi feldolgozás (NLP) alkalmazásoknál tapasztalhatók. Egyes nagy kötegelt ML-munkaterheléseknél az ExaDeploy több mint 85%-kal csökkentette a költségeket a várakozási idő vagy a pontosság feláldozása nélkül, az integrációs idő pedig mindössze egy mérnöki munkanap. Bebizonyosodott, hogy az ExaDeploy több ezer egyidejű hardvergyorsító erőforráspéldányt képes automatikusan skálázni és kezelni a rendszer romlása nélkül.
Az ExaDeploy főbb jellemzői a következők:
- A felhőben fut: Egyik modellje, bemenete vagy kimenete sem hagyja el a magánhálózatát. Továbbra is használja felhőszolgáltatói kedvezményeit.
- Megosztott gyorsítóerőforrások: Az ExaDeploy optimalizálja a használt gyorsítókat azáltal, hogy lehetővé teszi több modell vagy munkaterhelés megosztását a gyorsítóerőforrások megosztására. Azt is képes azonosítani, ha több munkaterhelés telepíti-e ugyanazt a modellt, majd megoszthatja a modellt ezekben a munkaterhelésekben, ezáltal optimalizálva a használt gyorsítót. Automatikus újraegyensúlyozási és csomópont-leürítési képességei maximalizálják a kihasználtságot és minimalizálják a költségeket.
- Skálázható kiszolgáló nélküli telepítési modell: Az ExaDeploy automatikus skálázása a gyorsító erőforrás-telítettsége alapján. Dinamikusan 0-ra vagy akár több ezer erőforrásra skálázható.
- Különféle számítási típusok támogatása: A mélytanulási modelleket az összes főbb ML-keretrendszerből, valamint tetszőleges C++-kódot, CUDA-kerneleket, egyéni műveleteket és Python-függvényeket tölthet le.
- Dinamikus modellregisztráció és verziószámítás: Új modellek vagy modellverziók regisztrálhatók és futtathatók a rendszer újraépítése vagy újratelepítése nélkül.
- Pont-pont végrehajtás: Az ügyfelek közvetlenül csatlakoznak a távoli gyorsítóerőforrásokhoz, ami alacsony késleltetést és nagy átviteli sebességet tesz lehetővé. Akár távolról is tárolhatják az állapotot.
- Aszinkron végrehajtás: Az ExaDeploy támogatja a modellek aszinkron végrehajtását, amely lehetővé teszi az ügyfelek számára, hogy párhuzamosítsák a helyi számítást a távoli gyorsító erőforrás-munkával.
- Hibatűrő távoli csővezetékek: Az ExaDeploy lehetővé teszi az ügyfelek számára, hogy a távoli számításokat (modellek, előfeldolgozás stb.) dinamikusan csővezetékekké állítsák össze hibatűrési garanciával. Az ExaDeploy rendszer a pod- vagy csomópont-hibákat automatikus helyreállítással és újrajátszással kezeli, így a fejlesztőknek soha nem kell a hibatűrés biztosításán gondolkodniuk.
- Kivételes felügyelet: Az ExaDeploy Prometheus mérőszámokat és Grafana irányítópultokat biztosít a gyorsító erőforrás-használatának és egyéb rendszermetrikák megjelenítéséhez.
Az ExaDeploy támogatja az AWS Inferentiát
Az AWS Inferentia-alapú Amazon EC2 Inf1 példányokat a mélytanulási specifikus következtetési munkaterhelésekhez tervezték. Ezek a példányok akár 2.3-szoros átvitelt és akár 70%-os költségmegtakarítást biztosítanak a GPU-következtetési példányok jelenlegi generációjához képest.
Az ExaDeploy mostantól támogatja az AWS Inferentiát, és együttesen felszabadítja a megnövelt teljesítményt és költségmegtakarítást, amelyet a célra épített hardveres gyorsítás és az optimalizált erőforrás-irányítás révén érhetünk el. Nézzük meg az ExaDeploy és az AWS Inferentia kombinált előnyeit egy nagyon gyakori modern ML-munkaterhelés figyelembevételével: a kötegelt, vegyes számítási munkaterheléseket.
A hipotetikus munkaterhelés jellemzői:
- 15 ms csak CPU elő-/utófeldolgozás
- Modellkövetkeztetés (15 ms GPU-n, 5 ms AWS Inferentián)
- 10 ügyfél, mindegyik 20 ms-onként kér le
- A CPU:Inferentia:GPU hozzávetőleges relatív költsége 1:2:4 (a c2.xlarge, inf5.xlarge és g1dn.xlarge Amazon EC4 On-Demand árazásán alapul)
Az alábbi táblázat bemutatja, hogyan alakulnak az egyes lehetőségek:
felépítés | Szükséges források | Költség | Késleltetés |
GPU ExaDeploy nélkül | 2 CPU, 2 GPU kliensenként (összesen 20 CPU, 20 GPU) | 100 | 30 ms |
GPU ExaDeploy-tal | 8 GPU megosztva 10 kliens között, kliensenként 1 CPU | 42 | 30 ms |
AWS Inferentia ExaDeploy nélkül | 1 CPU, 1 AWS Inferentia kliensenként (összesen 10 CPU, 10 Inferentia) | 30 | 20 ms |
AWS Inferentia az ExaDeploy segítségével | 3 AWS Inferentia megosztva 10 kliens között, kliensenként 1 CPU | 16 | 20 ms |
ExaDeploy az AWS Inferentián példa
Ebben a részben áttekintjük az ExaDeploy konfigurálásának lépéseit egy példán keresztül, amely egy BERT PyTorch modellen lévő inf1 csomópontokat tartalmaz. A bert-base modell átlagosan 1140 minta/másodperces átviteli sebességet tapasztaltunk, ami azt mutatja, hogy az ExaDeploy ehhez az egyetlen modellhez, egyetlen terheléses forgatókönyvhöz kevés vagy egyáltalán nem vezetett be többletköltséget.
1 lépés: Állítson be egy Amazon Elastic Kubernetes szolgáltatás (Amazon EKS) klaszter
Egy Amazon EKS-fürt hozható létre velünk Terraform AWS modul. Példánkban egy an inf1.xlarge
az AWS Inferentia számára.
2 lépés: Az ExaDepoy beállítása
A második lépés az ExaDeploy beállítása. Általánosságban elmondható, hogy az ExaDeploy telepítése inf1 példányokon egyszerű. A telepítés többnyire ugyanazt az eljárást követi, mint a grafikus feldolgozóegység (GPU) példányain. Az elsődleges különbség az, hogy a modellcímkét GPU-ról AWS Inferentiára kell cserélni, és újra kell fordítani a modellt. Például a g4dn-ről az inf1-példányokra való áttéréshez az ExaDeploy alkalmazásprogramozási felületeivel (API-k) mindössze körülbelül 10 kódsort kellett módosítani.
- Az egyik egyszerű módszer az Exafunction használata Terraform AWS Kubernetes modul or Helm diagram. Ezek telepítik az alapvető ExaDeploy-összetevőket az Amazon EKS-fürtben való futtatáshoz.
- Fordítsa le a modellt soros formátumba (pl. TorchScript, TF mentett modellek, ONNX stb.). Az AWS Inferentia esetében követtük ez a bemutató.
- Regisztrálja a lefordított modellt az ExaDeploy modul tárolójában.
- Készítse elő a modell adatait (azaz ne
ExaDeploy-specific
).
- Futtassa a modellt távolról az ügyféltől.
ExaDeploy és AWS Inferentia: Jobb együtt
Az AWS Inferentia kitágítja az átviteli sebesség határait a modellkövetkeztetéshez, és a legalacsonyabb következtetésenkénti költséget biztosítja a felhőben. Ennek ellenére a vállalatoknak megfelelő hangszerelésre van szükségük ahhoz, hogy széles körben élvezhessék az Inf1 ár-teljesítmény előnyeit. Az ML-szolgáltatás összetett probléma, amelyet házon belül kezelve olyan szakértelemre van szükség, amely nem tartozik a vállalat céljai közé, és gyakran késlelteti a termékek ütemezését. Az ExaDeploy, amely az Exafunction ML telepítési szoftvermegoldása, iparágvezetővé vált. Még a legösszetettebb ML-munkaterheléseket is kiszolgálja, miközben zökkenőmentes integrációs élményt és támogatást nyújt egy világszínvonalú csapattól. Az ExaDeploy és az AWS Inferentia együttesen nagyobb teljesítményt és költségmegtakarítást eredményezett a nagyszabású következtetési munkaterheléshez.
Következtetés
Ebben a bejegyzésben megmutattuk, hogy az Exafunction hogyan támogatja az AWS Inferentiát a teljesítmény-ML-hez. További információért az Exafunction segítségével történő alkalmazások építésével kapcsolatban látogassa meg a webhelyet Exafunkció. Az Inf1-re vonatkozó mély tanulási munkaterhelések kiépítésének bevált gyakorlataiért látogasson el ide Amazon EC2 Inf1 példányok.
A szerzőkről
Nicholas Jiang, szoftvermérnök, Exafunction
Jonathan Ma, szoftvermérnök, Exafunction
Prem Nair, szoftvermérnök, Exafunction
Anshul Ramachandran, szoftvermérnök, Exafunction
Shruti Koparkar, idősebb termékmarketing-menedzser, AWS
- AI
- ai művészet
- ai art generátor
- van egy robotod
- mesterséges intelligencia
- mesterséges intelligencia tanúsítás
- mesterséges intelligencia a bankszektorban
- mesterséges intelligencia robot
- mesterséges intelligencia robotok
- mesterséges intelligencia szoftver
- AWS Inferentia
- AWS gépi tanulás
- blockchain
- blokklánc konferencia ai
- coingenius
- társalgási mesterséges intelligencia
- kriptokonferencia ai
- Ügyfélmegoldások
- dall's
- mély tanulás
- google azt
- gépi tanulás
- Plató
- plato ai
- Platón adatintelligencia
- Platón játék
- PlatoData
- platogaming
- skála ai
- szintaxis
- zephyrnet