AI a cloud v produkcii: prečo väčšina AI riešení skončí len pri deme?

AI nástroje dnes vznikajú rýchlo a v demách fungujú presvedčivo – najmä ak začínate na zelenej lúke. Rozdiel sa ukáže vo chvíli, keď sa majú stať súčasťou reálneho produktu, ktorý má históriu, závislosti a množstvo väzieb.

AWS Community Day v Košiciach pre mňa nebol o novinkách, ale o realite. O tom, čo z týchto technológií funguje v produkcii a kde majú zmysel zmeny aplikovateľné aj na existujúce riešenia. Toto sú tri veci, ktoré som si ako člen devops tímu a bývalý backend vývojár na Crossuite z konferencie (okrem nálepiek a diára :) odniesol.

1. AI má najväčší prínos v konkrétnych, jasne definovaných úlohách

Na konferencii sa naprieč viacerými prednáškami opakoval jeden moment – rozdiel medzi tým, čo dnes vieme s AI rýchlo postaviť, a tým, čo sa dá reálne prevádzkovať.

Riešenia postavené na LLM modeloch, agentoch či nástrojoch ako Amazon Bedrock fungovali veľmi presvedčivo. Zlom prišiel vo chvíli, keď sa diskusia presunula k reálnemu nasadeniu – konkrétne k tomu, ako tieto riešenia zapadajú do existujúcich systémov, ako sa sleduje ich správanie a ako sa riadi ich výstup.

Kľúčová myšlienka:

AI má zmysel vtedy, keď je užitočná, nie keď je trendy.

Na Crossuite sa nám tento prístup potvrdzuje. AI zapájame do konkrétnych krokov, napríklad pri spracovaní dát alebo práci s textom, kde má jasný vstup aj výstup a prináša okamžitý efekt. Stáva sa tak prirodzenou súčasťou produktu s jasným prínosom pre jeho fungovanie.

2. Menej kódu, viac riadeného flow

Pri serverless témach sa opakovane ukazoval posun k jednoduchšej a prehľadnejšej architektúre. Silný moment priniesla prednáška Tomáša Sabola, ktorá jasne pomenovala, ako sa dnes mení práca s AWS Lambda.

Lambda ostáva silný nástroj na spracovanie business logiky, no mení sa spôsob, akým ju v architektúre používame. Najväčší prínos prináša vtedy, keď rieši konkrétny problém, zatiaľ čo riadenie toku systému preberajú iné časti architektúry, napríklad natívne AWS nástroje ako API Gateway, EventBridge či Step Functions.

V prednáške zaznelo zaujímavé odporúčanie:

Čím menej logiky je schovanej v samotných Lambda funkciách, tým čitateľnejší a stabilnejší systém vzniká.

Namiesto „lepenia“ služieb kódom sa zodpovednosť presúva do architektúry, kde je flow explicitne definovaný a lepšie kontrolovateľný. Takýto prístup vedie k menšiemu množstvu vlastného kódu a systému, ktorý sa jednoduchšie ladí, škáluje aj ďalej rozvíja. Architektúra tak zostáva čitateľná aj pri rastúcej komplexite.

Spolu so mnou sa konferencie zúčastnili aj kolegovia Ady a Mišo (na momentke z podujatia v žltom).

3. Karpenter ukazuje, že škálovanie je vyriešený problém. Náklady nie.

Prednáška Viktora Vedmicha o Karpenteri bola zaujímavá tým, že neriešila samotné škálovanie Kubernetes klastra, ale to, čo sa deje okolo neho. Pre účely prezentácie pripravil dve demá.

Jedno menšie, s klastrom, ktorý pozostával z 10 podov. Pomocou vizualizačného nástroja zobrazoval dianie v klastri – Karpenter dynamicky pridával a uberal uzly a presúval pody medzi nimi. Bolo to pôsobivé a ľahko zapamätateľné.

Ambície druhého dema siahali vyššie. Na výzvu do publika na stanovenie konečného počtu podov padol návrh „5000“. Viktor spustil skripty a na pozadí prednášky sa mali začať v klastri vytvárať stovky podov. Po približne 15 minútach však bolo zrejmé, že sa tak nestalo. V priebehu dema sa vyskytla malá chybička a proces zastal na začiatku. Aj to sa občas stane. Demo síce nevyšlo, ale v Crossuite vieme, že Karpenter funguje.

Počas prednášky zazneli veľmi užitočné tipy, ako sa dá Karpenter ďalej vylepšiť pomocou konfigurácie. Kombináciou Spot a On-Demand inštancií (napríklad v pomere 50/50) a využitím konsolidačných techník je možné ďalej znížiť náklady na prevádzku klastra.

Karpenter už máme nasadený aj na Crossuite. Prednáška ma teda utvrdila v tom, že základy máme postavené dobre a zároveň ukázala, že aj tu sa dá ísť ešte ďalej. Rozdelenie workloadu medzi Spot a On-Demand inštancie by mohlo priniesť ďalšie zníženie prevádzkových nákladov bez dopadu na stabilitu aplikácie.

Čo si z toho beriem do praxe

Po návrate z konferencie som mal pocit, že veľa z tých tém už riešime aj u nás, no zaujímavé bolo vidieť ich pomenované a rozobraté do detailu.

Pri AI, serverlesse aj infraštruktúre sa opakovala jedna vec:

Rozdiel nerobia veľké rozhodnutia, ale to, ako sú tie menšie veci nastavené a ako sa k nim vraciame v čase.

Kľúčová bola pre mňa najmä téma infraštruktúry. Škálovanie dnes funguje dobre, no to, ako efektívne systém beží medzi jednotlivými záťažami, je oblasť, kde má zmysel venovať pozornosť detailom.

Najčastejšie otázky o AI, cloude a produkčnom nasadení

Prečo veľa AI riešení skončí len pri deme?

Mnohé AI riešenia fungujú presvedčivo v izolovanom prostredí alebo na zelenej lúke. Problém prichádza vo chvíli, keď sa majú stať súčasťou reálneho produktu s existujúcou architektúrou, dátami, integráciami a prevádzkovými nárokmi. Práve tam sa ukáže, čo je skutočne pripravené na produkciu.

Kedy má AI v produkte najväčší prínos?

Najväčší prínos má AI v konkrétnych, jasne definovaných úlohách. Dobre funguje tam, kde má presný vstup, očakávaný výstup a jasný účel, napríklad pri spracovaní dát, práci s textom alebo podpore vybraných krokov v procese.

Čo znamená, že AI má byť užitočná, nie trendy?

Znamená to, že AI by nemala byť nasadená len preto, že je populárna. Zmysel dáva vtedy, keď rieši konkrétny problém, šetrí čas, zvyšuje kvalitu alebo zlepšuje používateľský zážitok. Hodnota nevzniká zo samotnej technológie, ale z jej praktického využitia.

Čo je AWS Lambda a na čo sa používa?

AWS Lambda je cloudová služba, ktorá umožňuje spúšťať kód bez správy serverov. V praxi sa využíva na spracovanie konkrétnej business logiky, reakcie na udalosti, jednoduché API operácie alebo automatizované úlohy.

Prečo sa pri serverless architektúre hovorí o menšom množstve kódu?

Pri modernej serverless architektúre časť zodpovednosti preberajú natívne cloudové služby, napríklad API Gateway, EventBridge alebo Step Functions. Výsledkom je menej integračného kódu, čitateľnejší flow a jednoduchšie riadenie správania systému.

Kedy dáva zmysel použiť AWS Lambda a kedy radšej iné služby?

Lambda dáva zmysel najmä vtedy, keď rieši konkrétnu operáciu alebo business logiku. Ak ide skôr o orchestrace, routing, validáciu alebo workflow medzi viacerými službami, efektívnejšie býva preniesť tieto úlohy na služby ako API Gateway, EventBridge alebo Step Functions.

Čo je Karpenter v Kubernetes a prečo je dôležitý?

Karpenter je nástroj pre Kubernetes, ktorý pomáha dynamicky riadiť infraštruktúru podľa aktuálnej záťaže. Dôležitý je najmä preto, že pomáha lepšie pracovať s kapacitou clusteru, rýchlo reagovať na zmenu záťaže a optimalizovať prevádzkové náklady.

Prečo škálovanie samo o sebe nestačí?

Samotná schopnosť škálovať ešte neznamená, že systém funguje efektívne. Dôležité je aj to, ako sa infraštruktúra správa mimo špičky, ako rýchlo uvoľňuje zdroje, ako sú rozdelené workloady a aké náklady vznikajú pri bežnej prevádzke.

Čo ovplyvňuje náklady Kubernetes klastra v AWS?

Náklady výrazne ovplyvňuje konfigurácia clusteru. Patria sem napríklad NodePools, kombinácia Spot a On-Demand inštancií, konsolidačné stratégie alebo spôsob, akým sú workloady rozdelené medzi jednotlivé typy kapacít.

Čo znamená rozdelenie workloadu medzi Spot a On-Demand inštancie?

Ide o stratégiu, pri ktorej sa časť workloadu spúšťa na lacnejších Spot inštanciách a časť na stabilnejších On-Demand inštanciách. Takýto prístup pomáha znižovať náklady a zároveň zachovať spoľahlivosť prevádzky.

Prečo je dôležité sledovať správanie systému mimo špičky?

Práve mimo špičky sa často ukáže, či je infraštruktúra nastavená efektívne. Ak cluster zbytočne drží kapacitu, nevie uvoľňovať zdroje alebo nevyužíva konsolidáciu, náklady rastú aj vtedy, keď systém nie je pod veľkou záťažou.

Čo si z konferencie môže odniesť backend alebo DevOps vývojár?

Najmä to, že rozdiel v produkcii často nerobia veľké architektonické rozhodnutia, ale nastavenie detailov. Pri AI ide o správne miesto v procese, pri serverless o čitateľný flow a pri infraštruktúre o konfiguráciu, ktorá ovplyvňuje stabilitu aj náklady.

Ako súvisí AI, serverless a infraštruktúra v reálnom produkte?

Všetky tri oblasti sa stretávajú v tom, ako dobre je systém navrhnutý a prevádzkovaný. AI potrebuje jasný účel, serverless potrebuje čitateľné riadenie toku a infraštruktúra potrebuje správnu konfiguráciu, aby bol výsledok stabilný, škálovateľný a ekonomicky udržateľný.

Prečo majú konferencie ako AWS Community Day zmysel aj pre skúsených vývojárov?

Nejde len o nové technológie, ale aj o pomenovanie a prehĺbenie tém, ktoré tímy riešia v praxi. Hodnota je často v detailoch, v konkrétnych skúsenostiach z produkcie a v tom, že človek vie porovnať vlastný prístup s inými reálnymi riešeniami.