2024.12.06.

Az AI infrastruktúra üzemeltetésének kihívásai: optimalizálás és skálázás

Szerző:

Kategóriák:

A mesterséges intelligencia térnyerésének következtében egyre több vállalat szembesül az AI rendszerek üzemeltetésének kihívásaival. A LogiNet Systems-nél végzett kutatásunk során megvizsgáltuk, milyen szempontokat kell figyelembe venni egy hatékony AI infrastruktúra kialakításakor és üzemeltetésekor.

Mikor van szükség saját AI infrastruktúrára?

Mielőtt belemerülnénk az optimalizációs kérdésekbe, fontos tisztázni, hogy mikor van egyáltalán szükség saját AI infrastruktúrára. Ha a vállalatunk csak alkalmanként használ AI szolgáltatásokat, akkor a felhőalapú API-k tökéletesen megfelelhetnek, azonban amikor az adatok bizalmas jellege, a válaszidők kritikussága, vagy a nagy mennyiségű AI művelet költségoptimalizációja megkívánja, érdemes saját infrastruktúrában gondolkodni.

Fotón: Horváth Bálint (LogiNet Systems) és Fosztó Szabolcs (LogiNet Systems) a BankTechShow-n | Kép forrása: FinTech Group (készítette: Kovács Dávid)

Infrastruktúra-választás, és a teljesítményre való hatása

Az infrastruktúra kialakításánál három fő megközelítést különböztetünk meg: az on-premise, a cloud és a hibrid megoldásokat. Az on-premise megoldások teljes kontrollt és kiszámítható költségeket biztosítanak, azonban jelentős kezdeti beruházást és szakértői csapatot igényelnek. A cloud megoldások gyors kezdést és rugalmas skálázhatóságot kínálnak de hosszútávon költségesebbek lehetnek. A hibrid megoldások mindkét megközelítés előnyeit ötvözik, bár komplexebb architektúrát eredményeznek.

Skálázási stratégiák és párhuzamosítás

A skálázás típusának megválasztása kritikus a teljesítmény szempontjából. A horizontális skálázás során több szervert vonunk be a feldolgozásba, míg a vertikális skálázásnál egy szerveren belül próbáljuk optimalizálni a folyamatokat.

A párhuzamosítási stratégiák hatékonysága számos tényezőtől függ. A tensor párhuzamosítás esetében a GPU-k közötti kommunikáció sebessége kulcsfontosságú – az NVLink kapcsolat sebessége például jelentősen befolyásolja, hogy hány GPU-ig érdemes skálázni. A modell mérete és architektúrája szintén meghatározó. Nagyobb modelleknél a pipeline párhuzamosítás lehet előnyösebb, mivel csökkenti a GPU-k közötti adatmozgatás szükségességét, leginkább olyan esetekben, amikor folyamatos terhelés mellett az első GPU-k terhelése nem lassítja be az egész folyamatot. Mivel a párhuzamosítás ezen két típusának a korlátai más jellegűek, ezért esetenként ennek a kettőnek a kombinációja lehet a jó választás.

Méréseink szerint megfelelő párhuzamosítási stratégiával akár 1.8-szoros sebességnövekedésre is számíthatunk. Ez is elérhető tensor párhuzamosítással, míg pipeline párhuzamosítással 1.38-szoros gyorsulást mértünk. Ez jelentős teljesítménynövekedést jelent, különösen ha figyelembe vesszük, hogy egy nagyobb rendszernél ez akár több ezer kérés/perc különbséget is jelenthet. Természetesen a vonatkozó számok egy adott – de valós use case – mellett értendőek.

blank

Fotón: Fosztó Szabolcs, a LogiNet Systems, senior PHP fejlesztője a BankTechShow-n | Kép forrása: FinTech Group (készítette: Kovács Dávid)

Teljesítmény és költségoptimalizáció – egy dinamikus megközelítés

A teljesítmény optimalizációja szorosan összefügg a költséghatékonysággal. Minden infrastruktúra és modell esetében létezik egy optimális működési pont, ahol a legjobb ár-érték arányt érhetjük el. A válaszidő optimalizálása különösen kritikus interaktív alkalmazásoknál: méréseink szerint megfelelő konfigurációval és terheléselosztással akár 100-200 ms-os válaszidők is elérhetők, ami emberi interakció szempontjából már közel valós idejűnek tekinthető. Valós use-case-ben egyetlen NVIDIA H100 GPU-val a csúcsterhelésben 21 párhuzamos kérést sikerült 220-340 ms FTL (first token latency) mellett kiszolgálni.

A batch feldolgozás esetében más a helyzet – itt a teljes rendszer áteresztő képessége a kritikus metrika. Egyik tesztrendszerünknél például megfelelő optimalizációval sikerült a kezdeti 111 token/másodperces teljesítményt több mint 1700 token/másodpercre növelni, ami több mint 15-szörös teljesítménynövekedést jelent.

A GPU memória hatékony kihasználása

A GPU memória megfelelő kihasználása kulcsfontosságú a teljesítmény szempontjából. A magas memória kihasználtság lehetővé teszi a KV-cache hatékonyabb működését, csökkenti a CPU-GPU közötti adatmozgatás szükségességét, és optimalizálja a batch feldolgozást.

Tapasztalataink szerint a megfelelően hangolt KV-cache akár 2-3-szoros gyorsulást is eredményezhet a válaszidőkben, különösen hosszabb szövegek feldolgozásánál, ahol jelentős a prompt és válasz hossza.

A cache találati arány optimalizálásával nemcsak a válaszidők csökkenthetők, de a rendszer áteresztő képessége is jelentősen növelhető.

Monitoring és üzemeltetés – a folyamatos optimalizálás kulcsa

A sikeres működéshez elengedhetetlen egy komplex monitoring rendszer. A hardware metrikák mellett a szolgáltatási metrikák folyamatos követése szükséges. A monitoring nem csak a problémák detektálásában segít, hanem lehetővé teszi a proaktív optimalizációt is. Az összegyűjtött adatok alapján azonosíthatjuk a teljesítmény szűk keresztmetszeteit, és előre jelezhetjük a kapacitásbővítési igényeket. Így akár automatizálhatjuk a skálázás folyamatát az előrejelzett igényekhez igazodva.

blank

Fotón: Horváth Bálint, a LogiNet Systems, solution architect munkatársa a BankTechShow-n | Kép forrása: FinTech Group (készítette: Kovács Dávid)

Jövőbeli trendek

Az AI infrastruktúra területén további jelentős fejlődés várható. A hatékonyabb modellek és optimalizációs technikák mellett a költséghatékonyabb hardware megoldások és az intelligensebb erőforrás-menedzsment jelenthetik a fejlődés fő irányait.

A jelenlegi trendek alapján a hibrid megoldások térnyerése várható, amelyek ötvözik az on-premise és cloud megoldások előnyeit.

Az AI infrastruktúra üzemeltetése összetett feladat, amely folyamatos fejlődést és optimalizációt igényel. Tapasztalataink azt mutatják, hogy a megfelelő architektúra kiválasztása és az optimalizációs stratégiák alkalmazása nem csak a teljesítményt növeli, hanem jelentős költségmegtakarítást is eredményezhet. A siker kulcsa a workload alapos ismerete, az ahhoz illeszkedő infrastruktúra és optimalizációs stratégiák megválasztása, valamint a folyamatos monitoring és finomhangolás. Az AI technológia gyors fejlődése miatt ez egy dinamikus folyamat, amely folyamatos figyelmet és szakértelmet igényel.

A cikk szerzője a LogiNet Systems Kft.

A LogiNet Systems web és mobil fejlesztéssel foglalkozó digitális ügynökség, több mint 15 éve foglalkozik egyedi digitális termékek fejlesztésével és ecommerce kereskedelmi fejlesztésekkel.

Teljes körű IT szolgáltatást nyújt, a tervezéstől a megvalósításon át az üzemeltetésig. Fő erősségei közé tartozik a mobil app fejlesztés, a UX-UI Design szolgáltatás, a professzionális, komoly technológiai tudással rendelkező szakember csapat, amely fejlesztési projektjei során az AI-t is alkalmazza és tanácsadói szolgáltatásával üzleti folyamatokat segít digitalizálni a Mesterséges Intelligencia használatával.

Címlapfotón (balról jobbra): Fosztó Szabolcs senior PHP fejlesztő (LogiNet Systems) és Horváth Bálint solution architect (LogiNet Systems) a BankTechShow-n | Kép forrása: FinTech Group (készítette: Kovács Dávid)

Címkék: