MLOps és GenAIOps AI-számítási feladatokhoz az Azure-ban
Az AI számítási feladatai az adatok gondnokolására és az adatok felhasználására összpontosítanak. A műveletek biztosítják a hatékonyságot a számítási feladatokhoz előnyben részesítő minőségi, megbízhatósági, biztonsági, etikai és egyéb szabványok eléréséhez és fenntartásához.
A számítási feladatok három fő területre sorolhatók: alkalmazásfejlesztés, adatkezelés és AI-modellek kezelése. Minden kategóriának olyan iparágilag bevált működési módszereket kell alkalmaznia, mint a DevOps, a DataOps, az MLOps és a GenAIOps.
A DevOps-tevékenységek az alkalmazásfejlesztési életciklus teljes felügyeletét lefedik automatizált folyamatos integrációs és folyamatos üzembehelyezési (CI/CD) folyamatokon és monitorozáson keresztül. Az AI-számítási feladatok esetében azonban az adatfolyam az egyik alapvető összetevő. A DevOps specializációja, a DataOps az adatéletciklus felügyeletére összpontosít olyan folyamatok racionalizálásával, mint az adatkinyerés, az átalakítás és a betöltés (ETL/ELT). A DataOps-szakemberek általában mérik az adatfolyam teljesítményét, valamint az adattisztítás hatékonyságát, és figyelik a folyamatot az anomáliák esetén.
Az AI-számítási feladatok eredendően nem determinisztikusak. Számos AI-modell hajlamos arra, hogy különböző válaszokat adjon ugyanahhoz a vizsgálathoz a következtetés során. Ezeknek a számítási feladatoknak olyan folyamatokra van szükségük, amelyek képesek kezelni és alkalmazkodni az AI-kimenetek kiszámíthatatlanságához. A DataOps az MLOps-ra terjed ki, amely a gépi tanulási munkafolyamatokat a modell betanításához és teszteléséhez alakítja ki. A GenAIOps, az MLOps speciális részhalmaza generatív AI-megoldásokat céloz meg. Ez olyan feladatokat foglal magában, mint a modellek felderítése és az előre betanított modellek finomítása bővített adatokkal.
A működési tevékenységek gyakran átfedésben vannak, és a különböző módszertanok különböző fokokra vonatkoznak. A diszkriminatív AI-ben például a DataOps jelentős szerepet játszik, míg a DevOps-tevékenységek kevésbé kiemelkedőek. Ezzel szemben a generatív AI-ben az üzemeltetési kiválóság nagyobb mértékben támaszkodik a DevOpsra, mint a DataOpsra.
Ettől függetlenül az általános cél a képesség-teljesítés a fejlesztési életciklus során hatékony műveletekkel. A várt eredmények a következők:
- Megismételhető folyamatok konzisztens eredménnyel.
- A modellek tartós pontossága az idő függvényében.
- Hatékony szabályozás, amely minimalizálja a kockázatokat.
- Változáskezelési folyamatok a modelleltolódáshoz való alkalmazkodáshoz.
Az automatizálás és a monitorozás kulcsfontosságú üzemeltetési stratégiák e célok eléréséhez.
Emellett szabványosított folyamatokat kell létrehoznia az AI-összetevőkhöz, a rutin-, a nem tervezett és a vészhelyzeti műveletekhez, és megfelelő nyomkövetési mechanizmusokkal kell rendelkeznie. Ezen folyamatok nélkül a következő kockázatokat kell futtatnia:
- Ismétlődő hibák és az adatfeldolgozás, a modell üzemeltetése, az adatkezelés alapjai és egyéb feladatok nem reprodukálhatósága.
- Gyenge minőségű vagy elavult adatok a modell betanításához és finomításához.
- A végfelhasználók rendszerbeli bizalmának befolyásolása a legrosszabb esetben jogi, megfelelőségi vagy biztonsági problémákhoz vezet.
A létrehozott folyamatokat a megfelelő eszközökkel kell implementálnia. Speciális eszközök állnak rendelkezésre az AI-/ gépi tanulási munkafolyamatok környezetek közötti kezelésére.
Ez a cikk a műveletek tervezési stratégiájával foglalkozik, és eszközjavaslatokat nyújt.
Ajánlások
Íme a cikkben szereplő javaslatok összegzése.
Ajánlás | Leírás |
---|---|
Hatékony számítási feladatok üzemeltetési életciklusának megtervezése. | Az AI-számítási feladatok összetevői alapján a különböző üzemeltetési szakaszok érvényesek lesznek az életciklusára. Fontos, hogy tisztában legyen a forgatókönyvhöz kapcsolódó ajánlott eljárásokkal és a megvalósításukhoz elérhető eszközökkel. Szánjon időt arra, hogy megismerje és megvalósítsa a számítási feladat összes összetevőjére vonatkozó főbb javaslatokat. ▪ DataOps ▪ MLOps ▪ GenAIOps ▪ Ellenőrző |
Mindent automatizál. | Az automatizálás biztosítja az ismétlést és a hatékonyságot a számítási feladatok életciklusában. Bár a DevOps-folyamatok kulcsfontosságú szerepet vállalnak ebben, a modellek hatékony létrehozásához, teszteléséhez, érvényesítéséhez és üzembe helyezéséhez további lépésekre van szükség. ▪ Automatizálás |
Ahol csak lehetséges, használja az üzembehelyezési folyamatokat. | Az üzembehelyezési folyamatok segíthetnek az ismétlődő infrastruktúra üzembe helyezésében, vagy a kód folyamatos integrálásában. Emellett kiváló eszköz a modellek létrehozásához és/vagy érvényesítéséhez, mielőtt előlépteti őket az éles környezetben. Az üzembehelyezési folyamatok implementálása segít a megbízhatóság és a munkaterhelés általános felhasználói élményének javításában. ▪ Üzembehelyezési folyamatok |
A modellek sodródásának és romlásának megakadályozása. | Védenie kell a modellek romlása és sodródása ellen, miközben strukturált folyamattal is rendelkezik, amely segít az új modellmódosítások szabályozott módon történő elfogadásában. A modellkarbantartással kapcsolatos javaslatok követése segít a megfelelőség megőrzésében, a váratlan felhasználói élmények elkerülésében és egy naprakészebb szolgáltatás biztosításában. ▪ Modellkarbantartás |
Számítási feladatok üzemeltetési életciklusa
Ez a kép bemutatja az AI-modellek működési fázisait, beleértve az adatgyűjtést, az adatok tisztítását az inkonzisztenciák és hibák kiküszöbölése érdekében, valamint az adatok elemezhető formátummá alakítását. Ezek a szakaszok mind a diszkriminatív modellek, mind a generatív modellekben lévő adatok alapozása szempontjából relevánsak. A betanítási generatív modellek konkrét használati esete azonban nem jelenik meg ebben a képen. Ez a használati eset nem tartozik a jelen cikk hatókörébe.
Az MLOps és a GenAIOps fázisai hasonlóak. A fő különbség az, hogy a GenAIOps esetében a fókusz a betanításról a megfelelő modell kiválasztására, a gyors tervezésre és a tartományspecifikus ismeretek beépítésére kerül a retrieveal augmented generation (RAG) finomhangolásával vagy implementálásával.
Még az üzembe helyezés és a monitorozás fázisai is meglehetősen hasonlóak.
A következő szakaszok a gyakori üzemeltetési eljárásokat ismertetik. Az életciklus minden szakaszát lefedik, az előgyártástól a termelésig.
DataOps
Az adatok különböző éles adatforrásokból lesznek összesítve, majd előre feldolgozva eltávolítják a hibákat és az inkonzisztenciákat, és kezelik a hiányzó értékeket. Végül átalakítjuk és normalizáljuk a betanításhoz vagy bővítéshez megfelelő formátumba. A tervezés szempontjait a Betanítási adatok és a Földelés adatcikkek ismertetik.
Az ebben a szakaszban zajló adatműveleti folyamatoknak hatékonynak kell lenniük, mivel a több forrásból és összetett adatfolyamokból származó nagy mennyiségű adat kezelése kihívást jelenthet. A szükséges módszereknek biztosítaniuk kell, hogy ez a fázis kiváló minőségű adatokat állítson elő. Figyelje meg ezt a szakaszt az elfogadható minőségi sáv felé történő előrehaladás nyomon követéséhez.
Azt is biztosítania kell, hogy az adatok biztonságosak legyenek, mivel az adatok éles környezetből származnak. Győződjön meg arról, hogy az alacsonyabb környezetek, például a Dev/Test, ugyanolyan biztonságosak, mint az éles környezetek, hogy megelőzzék a biztonsági problémákat.
Feljegyzés
A rossz minőségű adatok kezelése azáltal, hogy a kezdeti fázisokban nagy mennyiségű adattisztításba fektet be. Használja ki a jól ismert elemzési mintákat, például a medalliont, az adathálót és a funkciótárolókat a felsőbb rétegbeli feldolgozási feladatok elvégzéséhez. Ha a felsőbb rétegbeli fázisok hatástalanok, javítania kell a minőséget az alsóbb rétegbeli fázisokban, ami megnöveli a számítási feladatok költségeit, mivel az adatok előkészítése minden fázisban megtörténik.
Az adatfeldolgozási feladatokkal kapcsolatos információkért tekintse meg az alábbi cikkeket:
Eszközök
Javasoljuk, hogy szabványosítsa a számítási feladat adatvezénylési eszközeit. Az eszközöknek képesnek kell lenniük olyan adatfolyam biztosítására, amely csoportosíthatja a tevékenységeket, és beépített automatizálással rendelkezik.
Az Azure Data Factory-folyamat kezdeti választás lehet. Számos adatforrást képes hatékonyan csatlakoztatni és feldolgozni. Az Azure Synapse Analytics is megfontolható, amely egyesíti a big data és az adatraktározást, és támogatja a data lake-eket, az Apache Sparkot és az Azure Synapse SQL-t. Integrálható az ETL-hez készült Data Factoryvel is.
A betanítási adatok előkészítéséhez az Azure Machine Learning-folyamatok speciális funkciókat biztosítanak, amelyek automatizálhatják az olyan feladatokat, mint az adatgyűjtés és -feldolgozás.
Az olyan nyílt forráskódú technológiák, mint a Pandas (az adatok előkészítéséhez) és a Scrapy népszerű választás.
MLOps
A modellbetanítás a megfelelő algoritmusok kiválasztásának és előre feldolgozott előzményadatok és megfigyelések biztosításának folyamata, amelyek lehetővé teszik a modell számára a minták megismerését és az előrejelzések készítését.
A modell (funkciófejlesztés) és a hiperparaméter-finomhangolás betanítása iteratív folyamatok, és költségesek. Az egyes iterációk során az adatelemzők adat-, kód- és paraméterek kombinációjával követik nyomon az eredményeket. Ismételje meg a folyamatokat a kísérletek nyomon követéséhez minimális manuális erőfeszítéssel, amíg el nem éri a megfelelő pontossági szintet.
Egy másik működési kihívás a speciális számítási erőforrások kiépítése és skálázása, ahol kísérleteket végeznek. Emellett hatékonyan kell csomagolnia és közzétennie a modelleket .
A Teams a felhasználói felületalapú fejlesztéssel kezdhet a kihívások csökkentése érdekében, és ahogy magabiztosabbá válnak, áttérhetnek egy kódalapú megközelítésre.
Eszközök
Javasoljuk, hogy olyan eszközöket használjon, amelyek nyomon követhetik a gépi tanulási kísérleteket olyan részletek rögzítésével, mint a kódverziók, a környezetek, a paraméterek, a futtatások és az eredmények. Az MLflow egy ilyen nyílt forráskódú keretrendszer. Fontolja meg az MLflow-kompatibilis Azure Machine Learning-munkaterületek használatát, és olyan egyszerűsített munkafolyamatot biztosít, amely lehetővé teszi az adattudósok számára a termelékenység és a reprodukálhatóság kezelését a projektjeikben. A kódfejlesztés forráskövetéssel való kezeléséhez integrálja a gépi tanulási folyamatot a forrásvezérlővel, például a GitHubbal, vagy használjon fájlmegosztásokat.
Az üzemeltetési számítás a munkafolyamat-vezénylő kiválasztását is befolyásolhatja. Ha az alkalmazást az Azure Kubernetes Service (AKS) üzemelteti, fontolja meg a Kubeflow használatát.
Ha az Azure Machine Learninget fontolgatja, javasoljuk, hogy kezdje az Azure Well-Architected Framework machine learning-perspektívájával , hogy biztosan tisztában legyen azzal, hogy a termék hogyan segíthet a számítási feladat jól kiépített keretrendszerével kapcsolatos minőségi problémák megoldásában.
A folyamat előnye a személyes idő optimalizálása. Az adattudósoknak általában speciális eszközökre és SDK-kra van szükségük a felderítő adatelemzés (EDA) hatékony elvégzéséhez és a munkaállomásaik kísérletezéséhez. Annak kiértékelése, hogy az Azure Machine Learning előre összeállított beállításai megfelelőek-e. Ha nem, tárolja a munkaállomás konfigurációját, vagy tartsa karban a jóváhagyott virtuálisgép-rendszerképeket ehhez a munkához. A kiindulási pontként használható képek egyik példája a Adattudomány virtuális gép (DSVM).
Bizonyos esetekben előfordulhat, hogy a szabályzat nem engedélyezi a virtuális gépek használatát. Keressen alternatív megoldásokat, például a Microsoft Dev Box és az Azure Virtual Desktop hozzáadását. A Docker használatával előre összeállított rendszerképeket tartalmazó gépeket is elindíthat.
Mivel azonban ez a szakasz kiforrott, és kiterjesztett kísérletekre van szüksége, lépjen a felügyelt számítási példányokra, és előnyben részesítse a munkafolyamat részeként integrált beállításokat. Értékelje ki, hogy az Azure Machine Learning számítási példányait használhatja-e betanításra és következtetésre fejlesztési és tesztelési célokra. A számítási fürtök nagy adatkészleteket és összetett modelleket képesek kezelni.
Az Azure Machine Learning az SDK-val és az alacsony kódszámú lehetőségekkel, például az automatizált gépi tanulással és a vizuális tervezőjével egyaránt kínál kódalapú megoldásokat. A Python SDK több módszert is kínál a modellek betanítása, amelyek mindegyike különböző funkciókkal rendelkezik. A Machine Learning emellett támogatja a fejlett optimalizálási és elosztott számítástechnikai technológiákat, például az ONNX Runtime Training ORTModule-ját, a DeepSpeedet és a LoRA-t a betanítási folyamat felgyorsítása érdekében.
GenAIOps
Ebben a szakaszban a legfontosabb tevékenységek a meglévő modellek felderítésével és kiértékelésével kezdődnek, hogy azonosítsák az adott használati esethez előre betanított modelleket. Ez egy iteratív folyamat. Miután megtalálta a megfelelő modellt, hasznos lehet a tartományspecifikus alapok finomítása, amely iteratív lépéseket is magában foglal, és bizonyos szintű vezénylést igényel.
A modellek integrálása és üzembe helyezése speciális eszközöket és eljárásokat igényel, amelyek túlmutatnak a hagyományos MLOps-képességeken, beleértve a modellek vezénylését, a vektorindexeket, a parancssorokat és a kódblokkokat.
Eszközök
A felderítési feladatok kezeléséhez használja ki a különböző szolgáltatók modelljeit tartalmazó modellkatalógusokat. Az Azure AI Foundry portál modellkatalógusa lehetővé teszi a válogatott gyűjtemények közül való kiértékelést és a modellek hatékony üzembe helyezését.
Az Azure Machine Learning parancssori folyamata segíthet a vezénylési kód fejlesztésében, lehetővé téve a prototípus-tervezést, a kísérletezést, az iterálást és a gyors tervezést. Ezek a folyamatok üzembe helyezhetők az Azure Machine Learning által felügyelt végpontokon. Értékelje ki, hogy futtathatja és üzembe helyezheti-e a folyamatokat a meglévő CI/CD-folyamat technológiájával.
Telepítés
Ebben a szakaszban a modell üzembe lesz helyezve egy üzemeltetési és következtetési platformon vagy az AI-számítási feladatok kiszolgálórétegében. Az API-kat méretezhető tárolóként kell csomagolni. A tárolóplatform lehet felügyelt számítási vagy egyéni üzemeltetési platform. Az üzemeltetési eljárásoknak biztosítaniuk kell a biztonságos üzembe helyezést és lehetővé kell tenni a visszaállítást.
Kezdje a szolgáltatásként nyújtott platformmal (PaaS) és olyan kiszolgáló nélküli megoldásokkal, mint az Azure OpenAI Service, hogy egyszerűbbé tegye a bevezetést és a felügyeletet. Fontolja meg az Azure Machine Learning Kiszolgáló nélküli API használatát a végponthozzáférés összesítéséhez. A felügyelt számítási fürtök a speciális igényeknek megfelelő megoldást jelentenek. Az AKS önkiszolgáló üzemeltetése egy másik lehetőség. Győződjön meg arról, hogy megfelelően méretezi a számítást, és megfelelő elkülönítést tart fenn más számítási feladatoktól. Megfontolhat olyan lehetőségeket is, mint például a modell teljes körű üzemeltetése infrastruktúraként szolgáltatásként (IaaS). Az IaaS rugalmasságot biztosít, de működési terhet is jelenthet. Ezeket a lehetőségeket az Alkalmazásplatform ismerteti.
Ez a szakasz az utolsó esélyt mutatja a problémák elhárítására, mielőtt a modellt éles környezetbe helyezené. A tesztelési folyamatoknak tartalmazniuk kell az érvényesítési lépéseket annak ellenőrzéséhez, hogy a modell úgy van-e konfigurálva, hogy az előrejelzéseket a várt módon adja meg.
A modellt integrálnia kell a meglévő éles környezetbe a progresszív expozíciós folyamatok követésével és a párhuzamos üzembe helyezésekkel. A kanári modell gyakori módja az új modellek bevezetésének. Ezzel a módszerrel a felhasználói bázis fokozatosan növekszik. A kék-zöld üzembe helyezés egy másik módszer.
Eszközök
Az Azure Machine Learning-folyamatokat vagy az Azure Pipelinest használhatja a modellek következtetésre történő üzembe helyezéséhez. A Machine Learning számos funkciót kínál az egyszerűsített műveletekhez, beleértve a csomópontok kiépítését, az operációs rendszer frissítését, az automatikus skálázást, a monitorozást és az izolált virtuális hálózatokat.
A Machine Learning a kék-zöld üzembe helyezést is támogatja, amely lehetővé teszi, hogy egyetlen végpont több üzembe helyezést tartalmazzon.
Ha más üzemeltetési platformokat használ, például az Azure Container Appst vagy a Azure-alkalmazás Szolgáltatást, ön a felelős a műveletekért, beleértve a kiépítést és a skálázást is. Ilyen esetekben az Azure DevOps, a GitHub-folyamatok vagy a CI/CD-technológia kiválasztása használható.
Figyelés
A monitorozás kulcsfontosságú stratégia, és minden szakaszban alkalmazható. Ez egy folyamatban lévő folyamat, amely a minőségi kapuk bemeneteként szolgál, és biztosítja, hogy az AI-számítási feladatokat szigorúan tesztelik a konzisztencia és a megbízhatóság fenntartása érdekében a fejlesztési életciklus során. A modelleket mind működési, mind adatelemzési szempontból figyelni kell.
Határozottan javasoljuk, hogy a DataOps belső hurok monitorozási folyamata mérje az elfogadási minőségi sáv közelségét, és ellenőrizze az anomáliákat.
Az előre betanított modellek esetében fontos az adateltolódás és a teljesítmény monitorozása is, elsődlegesen a relevanciára összpontosítva. Értékelje ki a bemeneteket (kéréseket) és a kimeneteket (befejezéseket), hogy azok relevánsak és pontosak legyenek. Emellett vegye figyelembe a biztonsági kockázatokat, például a modell viselkedésének rosszindulatú kérésekkel történő manipulálására tett kísérleteket. Győződjön meg arról, hogy van olyan alapos sátormód ráció, amely mindkét irányban vizsgálja az adatokat, és kiszűri a nem megfelelő tartalmakat. Ezeket a szempontokat a ResponsibleAI tervezési területén ismertetjük.
Az üzembe helyezés után monitorozási műveletekre van szükség az olyan problémák megoldásához, mint a modell romlása. A modellek elavulttá válhatnak az adatok változásai vagy külső változások miatt, amelyek miatt a modell irreleváns eredményeket eredményezhet. Proaktív intézkedésként automatizált folyamatokat használjon a folyamatos monitorozáshoz, és értékelje ki és képezze át a pontosságot és a relevanciát. Emellett az infrastruktúra és a számítási feladatok metrikáit is figyelnie kell, ahogy bármely más számítási feladat esetén is, az optimális teljesítmény és megbízhatóság biztosítása érdekében. További információ: Tesztelés a modell romlása esetén.
Eszközök
Olyan eszközökbe fektethet be, amelyekkel könnyebben gyűjthet metrikákat a következtetési végpontokból, például az Azure Machine Learning Data Collectorből.
A modell teljesítményének, az adateltolódásnak, valamint a generatív AI biztonságának és minőségének megfigyelhetőségére is szüksége van.
További információval a következő cikkek szolgálnak:
Automation
Az AI-számítási feladatok összetettek, mivel az általános életciklus számos szerepkört, gyakori módosítást és összefüggő lépést foglal magában. A manuális folyamatok hajlamosak lehetnek a hibákra és az inkonzisztenciákra. Az adatfeldolgozási modellek üzemeltetésének automatizálása segít az ismétlődés és a hatékonyság biztosításában. Az automatizálás nem mindig szükséges, de hatékonyan kezelheti ezeket az összetettségeket. Íme néhány használati eset, amelyekben az automatizálás mérsékelheti a kockázatokat:
A hagyományos kódtelepítéstől eltérően az AI/machine learning nemdeterminista modelljei és megoldásai iteratív kísérletezést és betanítást igényelnek. Ha több csapat is együttműködik, az automatizálás, mint a szabványosított folyamatok kényszerítése segíthet fenntartani a konzisztenciát, a reprodukálhatóságot és a hatékony együttműködést az adattudósok, mérnökök és üzemeltetési csapatok között.
A modell életciklusa két fő betanítási típust foglal magában:
Az online betanítás gyakran, néha naponta tartalmazza a friss adatokat a modellbe, hogy a döntések a legfrissebb információkon alapuljanak. Ez a betanítás integrálva van a számítási feladatba, így a modell folyamatosan frissül a normál folyamat részeként.
Az offline betanítás ritkábban tanítja be a modellt, ami hosszabb különbséget tesz lehetővé a frissítések között. A betanítási folyamat elkülönül a fő számítási feladattól, és aszinkron módon történik. Miután az új modell elkészült, a rendszer integrálva lesz.
A megbízhatóság akkor sérülhet meg, ha a frissítések ritkán jelennek meg. Ha egy frissítés hiányzik, jelentős problémák nélkül elhalasztható. Ez a fogalom a földelési adatokra is vonatkozik. Ha például RAG-ot használ, el kell döntenie, hogy a legutóbbi adatokat kell-e használnia, vagy a kissé régebbi adatok elegendőek-e. Mindkét forgatókönyvben ki kell egyensúlyozni a naprakész információk szükségességét a frissítési gyakoriság gyakorlatiasságával. Az online betanítást automatizálással kell elvégeznie a szükséges gyakoriság és megbízhatóság miatt. Az offline betanításhoz a szükséges gyakoriság miatt költség-haszon elemzéssel kell igazolnia az automatizálást. Emellett offline betanítást is végezhet kevésbé költséges erőforrások, például offline hardverek használatával.
A hagyományos DevOps-folyamatokat általában strukturális változások befolyásolják. Az AI-ben és a gépi tanulásban azonban a modellek éles adatokra vannak betanítve. A modell romlása jelentős kockázatot jelent, és ha nem figyelik, idővel csökkenhet a teljesítmény. A teljesítménymetrikák, a riasztások és a modell újratanításának automatizált gyűjtése és elemzése szükséges a modell hatékonyságának fenntartásához. Az automatizálást olyan módon használhatja, amely segít észlelni az adatok és a modellfüggőségek változásait, így bármikor áttekintheti az aktuális állapotot.
A modellek két különböző megközelítéssel taníthatók be.
- A modellek betanítása a fejlesztési környezetben történik teljes éles adatokkal , és csak az összetevő előléptetése környezeteken keresztül történik. Ez a megközelítés csökkentheti a számítási költségeket, de szigorúbb biztonságot igényel az alacsonyabb környezetekben lévő éles adatok kezeléséhez, és előfordulhat, hogy nem minden szervezetben lehetséges.
- A modell minden környezetben be van tanítva. A kód-előléptetés segíthet a stabilitásban, mivel a betanítási kódot az alacsonyabb környezetekben ellenőrzik és tesztelik, de növelik a számítási költségeket.
Mindkét megközelítés mellett és elleni is szólnak érvek. A megfelelő megközelítés kiválasztása a szervezet prioritásaitól és a számítási feladatok szoftverfejlesztési életciklusának (SDLC) gyakorlatától függ. A módszertől függetlenül elengedhetetlen a modell alapos tesztelése és kiértékelése az éles üzembe helyezés előtt
Az automatizálási kódnak adatsorokat kell tartalmaznia az auditálás támogatásához az adatfeldolgozási szakaszok egyértelmű nyilvántartásával. Ez a rekord segít kezelni az elvárásokat, és lehetővé teszi a döntések meghozatalának bemutatását, hogy kezelni tudja az eredményekkel kapcsolatos aggodalmakat.
Üzembe helyezési folyamatok
A mi- és gépi tanulási számítási feladatokban a modellfejlesztés magában foglalja a modellek létrehozását, érvényesítését és előléptetését a modell üzemeltetési platformjaihoz. Fontos, hogy olyan üzembehelyezési folyamatokat használjon, amelyek leegyszerűsítik az adatfeldolgozással, a szolgáltatásfejlesztéssel, a modell betanításával vagy bővítésével, valamint az éles környezetben történő üzembe helyezéssel kapcsolatos összetett munkafolyamatokat. Tekintettel az AI nem determinisztikus jellegére, amely átlátszatlansá teszi a folyamatokat, minőségi teszteket kell beépítenie a kiadási folyamatokba és a monitorozási rendszerekbe.
Bár az MLOps és a GenAIOps eltérő AI-tevékenységeket és alapvető technológiákat igényelhet, az alapul szolgáló fogalmak továbbra is hasonlóak maradnak a DevOpséhoz. Javasoljuk, hogy alkalmazza a meglévő DevOps-folyamatok ajánlott eljárásait. Integrálhatja az AI-tevékenységeket a számítási feladat meglévő folyamataiba.
Az AI-számítási feladatok általában hagyományos kódtelepítéseket foglalnak magukban. Dönthet úgy, hogy a kóddal együtt vagy külön kezeli a modell üzembe helyezését a saját életciklusában. Az előbbi megközelítés előnyösebb. Készüljön fel arra, hogy modelleket és következtetési végpontokat csomagoljon a számítási feladatok üzembe helyezésével, hogy az AI-műveletek elsősorban az adatelőkészítésre, a betanításra/finomhangolásra, az adatkezelés alapozására és a monitorozásra koncentráljanak.
Értékelje át, hogy a következő eszközök hogyan alakíthatók át a teljes MLOps- és GenAIOps-életciklusra az előkészítéstől az éles üzemig:
- Infrastruktúra kódként (IaC) eszközök
- CI/CD-folyamatok
- A problémák nyomon követésére és azonosítására szolgáló megfigyelhetőségi verem
Eszközök
Az Azure Pipelines és a GitHub Actions munkafolyamatait a CI/CD-hez gyakran használt gépi tanulási modellekre is kiterjesztheti. Segítenek a gépi tanulási infrastruktúra, az egyéni számítási feladatok összetevői, a vezénylési kód és a modellek üzembe helyezésében. Az Azure Machine Learning-folyamatokat kombinálhatja az Azure DevOps vagy a GitHub-folyamatokkal. További információ: Az Azure Pipelines használata az Azure Machine Learning használatával.
Két fő tényező befolyásolja az eszközök megfelelő kombinációjának kiválasztását: a használati esetet és a képességeket. Az Azure Machine Learning-folyamatok például kiválóan alkalmasak az adattudósok által végzett vezénylésre. Gazdag funkciókészlettel rendelkezik, amely támogatja az újrafelhasználást, a gyorsítótárazást és egyebeket. Eszközválasztási lehetőségekért lásd : Melyik Azure-folyamattechnológiát érdemes használni?.
Modellkarbantartás
Az AI/ML-környezet versenyképes a folyamatos innovációval. Gyakran jelennek meg új modellek, új használati esetek jelennek meg, és új adatforrások válnak elérhetővé. Ennek eredményeképpen a modell romlása gyakori kihívás.
A modell teljesítménycsökkenésének vagy időbeli eltérésének megakadályozása érdekében automatizált folyamatokat kell implementálnia a folyamatos monitorozáshoz, kiértékeléshez és újratanításhoz. Példa:
Modellkatalógus karbantartása. Automatizálja az új modellek felderítésének és a katalógus frissítésének folyamatát.
Alkalmazkodjon az új használati esetekhez. Az új használati esetek hozzáadódnak a számítási feladatokra vonatkozó követelményekhez, előre jelezheti a lekérdezéseket, és ennek megfelelően módosíthatja az adatfeldolgozási logikát.
Új adatforrások beépítése. Ha az új adatforrások növelhetik a modell prediktív teljesítményét vagy relevanciáját, frissítse az adatbetöltési folyamatot, hogy ezekhez a forrásokhoz csatlakozzon és adatokat kérjen le.
Mérje fel a jogszabályi követelményeknek való megfelelést. Ha alkalmazkodik az új képességekhez, győződjön meg arról, hogy a változások a szervezeti vagy külső megfelelőségi szabványok korlátain belül is érvényesek maradnak.
Implementáljon egy formális folyamatot a folyamatos fejlődés nyomon követéséhez, és az önfejlesztést alfolyamatként beépítse az adott ciklusba.
Folyamatos fejlődés
Rendszeresen felülvizsgálja és fejleszti a műveleteket, és ösztönzi az innovációt.
Az MLOps érettségi modell a manuális folyamatoktól a teljes automatizálásig halad. Kezdje a manuális buildekkel és monitorozással, és az átfogó metrikák által indokolt fázisokban foglalja bele az automatizált alkalmazásépítéseket, a betanítási környezeteket és az üzembe helyezést. További információ: MLOps lejárati modell.
A GenAIOps fejlettségi szintjei az alapmodellekről a strukturált üzembe helyezésre váltanak, fokozatosan automatizált optimalizálási technikákkal. További információ: A GenAIOps érettségi szintjének előrehozása.