Alkalmazásplatform AI-számítási feladatokhoz az Azure-ban
A hatékonyság, a műveletek biztonsága és a megbízhatóság maximalizálása érdekében gondosan meg kell fontolnia azt az alkalmazás-üzemeltetési platformot, amelyen az AI-számítási feladat üzembe van helyezve.
Ez a tervezési terület számos olyan alkalmazástípust fed le, amelyek relevánsak lehetnek az AI-számítási feladat szempontjából:
- Feltáró adatelemzés (EDA)
- Modell betanítása és finomhangolása
- Dedukció
Ez a cikk útmutatást nyújt a legjobb platform kiválasztásához az egyes funkciókhoz az üzleti igényeknek megfelelően. Ezekre a függvényekre általános javaslatokat is alkalmazhat.
Ajánlások
Íme a cikkben szereplő javaslatok összegzése.
Ajánlás | Leírás |
---|---|
Eszközök újrafelhasználása. | Először is értékelje ki azokat az eszközöket, amelyeket már használ annak megértéséhez, hogy újra felhasználhatók-e az AI-számítási feladatokhoz. Ha támogatják a szükséges funkciókat, és megfelelnek a megbízhatóságra, a biztonságra, a költségekre és a teljesítményre vonatkozó követelményeknek, előfordulhat, hogy egy új eszköz létrehozása nem éri meg a költségeket és az erőfeszítést. |
Fontolja meg az adatokra és a telepíteni kívánt régiókra vonatkozó megfelelőségi követelményeket. | Előfordulhat, hogy a megfelelőségi követelményeknek való megfelelés érdekében korlátoznia kell a számítási feladat egyes részeiben üzembe helyezett régiókat, vagy el kell különítenie egymástól. Ezzel az információval a tervezési fázisba lépve megvédheti önt attól, hogy később újra kell terveznie. |
Az épület minimalizálása. | A szolgáltatásként nyújtott platform (PaaS) vagy a szolgáltatásként nyújtott szoftver (SaaS) megoldásokkal minimalizálhatja a saját megoldás létrehozása által járó üzemeltetési terheket, például a javítást és az egyéb karbantartásokat. Az új technológiához szükséges 2. napi teher minimalizálása leegyszerűsíti a bevezetést. Számos AI-függvény összetett, ezért nem javasoljuk, hogy saját platformot építsen ki. |
Ismerje meg a kvótákat és a korlátokat. | Ha PaaS- vagy SaaS-megoldások használatát tervezi, ismerje meg az esetleges kvótákat vagy korlátokat. A nagy forgalmi igények kielégítésére való vertikális felskálázást kvóták vagy korlátok befolyásolhatják, ezért előfordulhat, hogy a kockázat minimalizálása érdekében módosítania kell a tervet. |
Üzembe helyezés ugyanabban a régióban. | Próbálja meg üzembe helyezni az összes kapcsolódó erőforrást ugyanabban a régióban a késés csökkentése és a tervezés egyszerűsítése érdekében. |
Gyakorolja a biztonságos üzembe helyezést. | Az AI-számítási feladatok API-jait általában ugyanúgy kell kezelnie, mint a környezet bármely más API-ját. Minden API-t egy átjáró mögé kell helyezni, és minden kódot ugyanolyan biztonságos üzembehelyezési eljárásokkal kell kezelni, mint minden más kódeszközt. |
Teljesítménymutatók létrehozása kísérletezéssel. | Minden AI-számítási feladat eltérő, és a szükséges számítási mennyiség a használati esettől függ. A számítási feladatokhoz optimális számítási mennyiség és számítási típusok meghatározása alapos teljesítményteszt-teszteléssel. Ez az útmutató segít a platform kiválasztásában, de csak a teljesítménytesztek tesztelése után fogja tudni, hogy mely termékváltozatok megfelelőek a számítási feladathoz. |
Az EDA-platformmal kapcsolatos szempontok
Az EDA egy általános előzetes függvény, amelyet az adattudósok a modellezés vagy a statisztikai elemzés előtt hajtanak végre. Ezért fejlesztési fázisnak tekinthető, ami azt jelenti, hogy a megbízhatósági és teljesítménycélok jelentősen alacsonyabbak lehetnek, mint az éles erőforrások esetében, és a termelékenység fenntartása a fontosabb tényező.
Ez a szakasz útmutatást nyújt az EDA platformmegoldás kiválasztásakor figyelembe veendő képességekről.
Funkcionális követelmények
Amikor kiértékel egy EDA-platformot, vegye figyelembe a következő kérdéseket:
Támogatja a platform az átmeneti használatot?
A platformnak támogatnia kell az átmeneti munkaterületeket és a számítást, ami azt jelenti, hogy le kell állítania a szükséges erőforrásokat, amikor nincsenek használatban. Ez a képesség segít a költségek szabályozásában. Az EDA-feladatok általában interaktívak, ezért a felhasználóknak képesnek kell lenniük virtuális gépek indítására és leállítására a feladatok futtatásakor.
Támogatja a platform a számítási opcionálisságot?
A platformnak szükség szerint engedélyeznie kell a GPU-khoz való igény szerinti hozzáférést, és különböző számítási lehetőségeket kell biztosítania a platform megfelelő méretének érdekében.
Támogatja a platform az MLflow-t?
Az EDA platformnak lehetővé kell tennie egy olyan technológia kiválasztását, amely lehetővé teszi az MLflow-val való integrációt a kísérletek nyomon követéséhez. Az MLflow-t modellfejlesztési, üzembehelyezési és felügyeleti protokollként javasoljuk, mert a következő előnyöket nyújtja:
- Kísérletkövetés. Az MLflow lehetővé teszi a kísérletek nyomon követését paraméterek, metrikák és összetevők rögzítésével. Ez a képesség alapvető fontosságú az EDA során, hogy nyomon tudja követni a különböző adat-előfeldolgozási lépéseket és funkciótervezési technikákat, valamint azok modellteljesítményre gyakorolt hatását.
- Reprodukálhatóság. Mivel naplózza a kísérletek összes részletét, az MLflow segít az eredmények reprodukálásában, ami kritikus fontosságú az eredmények ellenőrzéséhez.
- Adatok és modellek verziószámozása. Az MLflow segít az adathalmazok és modellek verziószámozásában, ami megkönnyíti az adatátalakítások és a tesztelt modellek különböző verzióinak kezelését.
- Együttműködésen alapuló munka. Az MLflow egy központosított platformot biztosít, ahol az adattudósok megoszthatják kísérleteiket és eredményeiket, ami megkönnyíti az együttműködést és a tudásmegosztást.
Nem funkcionális követelmények
Vegye figyelembe az alábbi kérdéseket is:
Hogyan segíthet a platform a költségek szabályozásában?
A platformnak lehetővé kell tennie, hogy az adattudósok az ütemezési követelményeknek megfelelően végezzék munkájukat, de megfelelő méretűnek kell lenniük ahhoz, hogy a költségkövetelmények teljesüljenek.
Milyen biztonsági követelményeket kell követnie a platformnak?
Az EDA-fázis során használt adatok valószínűleg éles adatok lesznek, ami megköveteli, hogy kövesse az éles eljárásokat az adatok védelme és a platform monitorozása érdekében. Ennek érdekében a platformnak támogatnia kell az összes szükséges biztonsági vezérlőt, beleértve a következőket:
- Hozzáférés és engedélyezés.
- Titkosítás inaktív és tranzit állapotban.
- Regionális adatvédelmi követelmények.
- Robusztus monitorozási és riasztási funkciók, beleértve a naplózást és az auditálást.
- Privát hálózati hozzáférés tárolólemezképek, adatok és kódegységek központosított adattáraihoz.
Eszközök
Azure Machine Learning számítási példány használata csapatszintű fájlmegosztásokkal EDA-platformként. Ez alól az egyik kivétel, ha a csapata vagy szervezete már használ megfelelő üzemeltetési platformot, például GPU-kompatibilis számítási fürtöket a Databricksben. Ebben az esetben célszerűbb ezen a platformon maradni.
Feljegyzés
Csak akkor hozzon létre teljes EDA-platformot, ha szükséges. A GPU-optimalizált számítás költséges, és nem megfelelő, ha a használati eset nem igényli.
A modell betanítási és finomhangolási platformjának szempontjai
A modell betanítása és finomhangolása során valószínűleg nagy teljesítményű GPU-ra optimalizált számításra lesz szüksége a tevékenységek által igényelt nagy számítási igényű munkához. A megbízhatóság általában nem olyan fontos, mint a teljesítmény, mivel a munka nagy része a színfalak mögött történik. Ha a magas megbízhatóság követelmény, értékelje ki, hogy szükség van-e a számítási feladatok rendelkezésre állási zónák vagy régiók közötti elosztására. A nagy megbízhatóság akkor válik fontossá, ha a modell frissességét gyakran frissítik, amihez a betanítást szigorúbb ütemezés szerint kell elvégezni. Az RTO-nak meg kell határoznia a választott megbízhatósági kialakítást.
Az ebben a szakaszban található útmutatás a modell betanítására és a finomhangolásra egyaránt vonatkozik. Ha nem kell külön platformokat használnia ezekhez a függvényekhez, egyetlen platformot kell használnia.
Funkcionális követelmények
Amikor kiértékeli a modellek betanítására és finomhangolására szolgáló platformokat, vegye figyelembe az alábbi kérdéseket:
Támogatja a platform az átmeneti használatot?
Az EDA-tevékenységekhez hasonlóan a modellbetanítás és a finomhangolás általában nem teljes munkaidőben fut, ezért olyan platformot kell használnia, amely leállítható, ha nincs használatban a költségek szabályozásához. Az EDA-kkal ellentétben azonban a modell betanítása általában kötegelt folyamat, ezért a számításra csak a köteg futtatásakor van szükség, és a következő futtatásig le lehet állítani.
A platform biztosítja a vezénylést?
A modell betanításához és finomhangolásához szükséges számítási feladatok összetettsége miatt javasoljuk a vezénylő használatát.
A megoldás részét képezhetik a környezetében meglévő technológiák?
Ha a meglévő adatplatform rendelkezik gépi tanulási képességekkel, például az Azure Databricks szolgáltatással, használhatja bizonyos lépésekhez, például az adatátalakításhoz és a funkciófejlesztéshez, a betanításhoz, a finomhangoláshoz és a Machine Learning egyéb lépéseihez. A technológiák kombinálásával minimalizálhatja az adatplatformok olyan funkciókhoz való használatával járó költségeket és összetettségeket, amelyekhez nem feltétlenül ideálisak.
Nem funkcionális követelmények
Vegye figyelembe ezt a kérdést is:
Mi az elviselhető kompromisszum a költségek és a teljesítmény között?
A nagy teljesítményű, GPU-ra optimalizált számítási követelményeknek megfelelően győződjön meg arról, hogy teszteli és méri a betanítást és a finomhangolást, hogy meghatározza az ideális termékváltozatot, amely kiegyensúlyozza a teljesítményt a költségekkel szemben.
Eszközök
A modellbetanítási és finomhangolási platformhoz az Azure Machine Learninget javasoljuk, mert a kötegelt számítás támogatásával vezénylési funkciókat biztosít. Két számítási lehetőséget kell kiértékelni:
- A kiszolgáló nélküli számítás olyan rövid, ritkán futó futtatásokhoz ideális, amelyek képesek elviselni a zajos szomszédhatásokat. Választhat standard díjszabást vagy azonnali díjszabást. A kihasználatlan díjszabás csak erősen megszakítható betanításokhoz ajánlott. Ne használjon kiszolgáló nélküli számítást teljes munkaidős műveletekhez. A költségek gyorsan eszkalálhatók.
- A számítási fürtök jelentős vezérlést biztosítanak az elérhető hardverek felett, és párhuzamos vagy elosztott betanításra vannak hangolva.
Feljegyzés
Az alapmodellek esetében a modell üzemeltetési platformjának kiválasztása korlátozhatja a finomhangolási lehetőségeket. Ha például az Azure OpenAI Service-t használja a modell üzemeltetéséhez, a finomhangolási lehetőségeket az Azure OpenAI beépített finomhangolási funkcióira korlátozza.
A modell üzemeltetési és következtetési platformjának szempontjai
A modell üzemeltetési és következtetési függvényei alkotják az AI-számítási feladat kiszolgálórétegét. Ezeket a függvényeket az Ön által használt szoftverre jellemző végpontokkal hajtja végre. A modellkiszolgáló szoftvermegoldások, például az NVIDIA Triton, a TorchServe és a TensorFlow-kiszolgáló lényegében Python SDK-k, amelyek egy API-val rendelkező modell elé kerülnek, és a megoldásra jellemző funkciókat adnak hozzá. Kiválaszthatja az üzemeltetési platformot a választott szoftver alapján, vagy kiválaszthatja a szoftvert a választott üzemeltetési platform alapján.
Ha SaaS- vagy PaaS-megoldásokat használ előre csomagolt modellekkel, például az Azure OpenAI-ban elérhető nagy nyelvi modellekkel, kevés vagy nincs lehetősége egy kiszolgáló szoftver kiválasztására. Ehelyett a felhasználó szolgáltatás egy API-t biztosít. Ez csökkenti a modell üzembe helyezésének folyamatában a rugalmasságot, ami előnyökkel és hátrányokkal járhat. Ez például egyszerűsítheti a számítási feladat fejlesztési folyamatát. Ezzel szemben csökkenti a rugalmasságot abban, hogy az alkalmazás hogyan hívhatja meg és használhatja a modellt.
A kiszolgálóréteg API-jai alapvetően mikroszolgáltatások, ezért ugyanazokat az API-kat kell követnie, amelyeket a környezet más mikroszolgáltatásai esetében is követ. Ezeket tárolóba kell helyezni, más szolgáltatásokból válaszfalra kell helyezni , és saját életciklusukkal kell rendelkezniük, amelyek függetlenek más szolgáltatásoktól és API-któl. Ne feledje azonban, hogy a réteg API-k kiszolgálásához általában lényegesen több GPU-alapú számítási teljesítményre és nagyobb tárolólemezképre van szükség, mint a hagyományos API-k.
Ez a szakasz útmutatást nyújt a modell üzemeltetési és következtetési platformjának kiválasztásakor figyelembe veendő képességekről.
Funkcionális követelmények
Amikor kiértékeli a platformokat a modell üzemeltetése és a következtetés szempontjából, vegye figyelembe az alábbi kérdéseket:
A számítási feladat köteg- vagy online következtetést igényel?
A következtetési végpontok kötegelt vagy online következtetési folyamatokhoz használhatók, és a következtetési módszer segít meghatározni a megfelelő üzemeltetési platformot. A batch-következtetés az átmeneti használatot támogató platformon működik a legjobban, és lehetővé teszi a számítás leállítását, ha nincs használatban. Az online következtetés a legjobban olyan platformon működik, amely támogatja a rugalmas számítási kihasználtságot, amely automatikusan skálázódik a terhelés alapján bármikor.
Támogatja a platform a nyomon követhetőséget?
A nyomon követhetőség kritikus fontosságú a számítási feladatban használt modellek integritásának fenntartásához. Fontos tudni, hogy a modell milyen információkat tartalmaz, például az aktuális verziót, az üzembe helyezést, az üzembe helyezést és a modell adatsorát.
Használjon értelmes címkéket a tárolóregisztrációs adatbázisban lévő képekre, hogy a modell üzemeltetési szolgáltatása lekérjen egy adott verziót, amelyet a csapat könnyen azonosíthat. Ez a megközelítés segít az adatszabályozásban azáltal, hogy csökkenti az éles környezetben használt elavult vagy helytelen modellek kockázatát.
Az üzemeltetési platform központosított erőforrás lesz?
Számos szervezet olyan központosított modell üzemeltetési platformot használ, amelyet a különböző csapatok a saját számítási feladataikhoz használnak. Ha az üzemeltetési platform központosított, érdemes megfontolnia, hogy segítségre van-e szüksége a díjvisszatérítéshez. Ez a funkció lehetővé teszi a platform kihasználtságának nyomon követését csapat és számítási feladat szerint.
Nem funkcionális követelmények
Vegye figyelembe az alábbi kérdéseket is:
Milyen megbízhatósági követelmények vonatkoznak a platformra?
A réteg API-k éles erőforrások, ezért ugyanazokat a megbízhatósági követelményeket kell alkalmaznia rájuk, mint a többi olyan számítási feladatra, amely megfelel a kritikussági értékelésnek. Ha kritikusságuk magas rendelkezésre állást igényel, az üzemeltetési platformnak támogatnia kell a rendelkezésre állási zónákat vagy a többrégiós kialakítást.
Milyen hálózati vezérlők szükségesek a platformhoz?
Határozza meg, hogy magánhálózatra vagy kimenő tűzfalra van-e szüksége a platform védelmének biztosításához.
Mik a platform identitás- és hozzáférési biztonsági követelményei?
Határozza meg a végpontokhoz szükséges identitás- és hozzáférési vezérlőket. Fontolja meg, hogy szüksége van-e natív szerepköralapú hozzáférés-vezérlésre (RBAC) vagy az identitás- és hozzáférési platform beépített támogatására, például a Microsoft Entra ID-ra.
Milyen monitorozási képességeket támogat a platform?
Határozza meg a végpontokhoz szükséges monitorozási képességeket. A platformtól függően előfordulhat, hogy korlátozott hozzáféréssel rendelkezik a naplókhoz és a metrikákhoz, ami korlátozhatja a tevékenységek naplózását vagy a hibák észlelését.
Mik a platform teljesítménykövetelményei?
A következtetés késése gyakori probléma, és a különböző platformok különböző teljesítményprofilokkal rendelkeznek. A segédprogrammodellt használó kiszolgáló nélküli és PaaS-szolgáltatásokat érintheti a zajos szomszéd probléma, és gyakran nincsenek átviteli garanciák. Másrészről ugyanezek a platformok kínálhatnak egy saját üzemeltetésű lehetőséget, amely garantált átviteli sebességet biztosít egy elővásárlási modellel. A kiszámíthatóbb késési viselkedés érdekében megfontolhatja az önkiszolgáló üzemeltetést a Kubernetesben.
Vegye figyelembe azokat a szolgáltatási korlátokat és kvótákat, amelyek hatással lehetnek a teljesítményére, például az Azure OpenAI esetében. Ezek a kvóták és korlátok gyakran agresszíven vannak beállítva, hogy megfeleljenek a kapacitásigényeknek, ezért ha a választott platform nem biztosítja a kívánt teljesítményt, előfordulhat, hogy stratégiákat kell alkalmaznia a számítási igények példányok közötti elosztásához.
A fejlett architektúrák több üzembe helyezést is kombinálhatnak, hogy rögzített átviteli sebességet érjenek el a számítási feladatok nagy részének, és rugalmasabb számítási feladatokhoz kipukkanó képességeket érjenek el.
Eszközök
Kötegelt dedukció
Ha olyan adatokra végez következtetést, amelyek egy olyan platformon találhatók, amely támogatja a modell üzemeltetését, például a Databrickset, fontolja meg a platform használatát a következtetéshez. Ügyeljen arra, hogy elkülönítse a következtetési számítást az adatplatform által végrehajtott egyéb függvényektől.
Alapmodellekhez az Azure OpenAI Batch API-t javasoljuk.
Nem alapmodellek esetén vegye figyelembe az alábbi javaslatokat:
Fontolja meg az Azure Machine Learning-kötegvégpontok használatát a következő forgatókönyvekhez:
Több fájlban elosztott nagy adathalmazon kell következtetést végeznie, és nem kell kis késést igényelnie.
Hosszú ideig futó kötegműveleteket kell végrehajtania nagy adathalmazokon keresztül, és kihasználhatja a párhuzamosítás előnyeit.
Folyamatösszetevőket kell üzembe helyeznie a kötegelt feldolgozáshoz.
Ha Spark-feladatokat kell futtatnia az elosztott adatfeldolgozáshoz, fontolja meg az Azure Synapse Analytics, a Databricks vagy a Machine Learning kiszolgáló nélküli Spark-számítás használatát.
Ha egyik forgatókönyv sem alkalmazható, javasoljuk a Machine Learning-kötegvégpontokat.
Online következtetés
Első lépésként értékelje ki a Platform PaaS-t és a kiszolgáló nélküli megoldásokat. Ezek a szolgáltatások általában a legegyszerűbben bevezethetők és kezelhetők, mivel leegyszerűsítik a tervezést, és minimálisra csökkentik az üzemeltetési terheket. Az Azure OpenAI például jó választás alapmodellekhez.
- 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 még akkor is, ha az Azure OpenAI-t vagy egy másik alapmodell-üzemeltetési megoldást használ.
Vegye figyelembe a Machine Learninget felügyelt számítási fürtökkel, ha a PaaS vagy a kiszolgáló nélküli megoldások nem a legmegfelelőbbek. A Machine Learning által felügyelt számítás támogatja a forgalom felosztását és tükrözését az A/B teszteléséhez, a hibakereséshez és a robusztus naplózáshoz. Mivel a számítást a szolgáltatás felügyeli, a 2. nap műveletei egyszerűbbek a modell önkiszolgáló üzemeltetése esetén. A felügyelt számítás emellett számos számítási konfigurációt és skálázási képességet is kínál.
Ha úgy dönt, hogy a modellt egy, a Machine Learninghez vagy más tárolóalapú platformhoz csatolt Azure Kubernetes Service-fürtön vagy egy másik tárolóalapú platformon üzemelteti, győződjön meg arról, hogy a csomópontkészlet el van különítve a fürt más API-jaitól vagy más számítási feladataitól a kiszámítható teljesítmény elérése és a biztonság optimalizálása érdekében. A költségek csökkentése érdekében ne használjon GPU-alapú vagy GPU-optimalizált számítást az AI számítási feladatain kívül máshoz is. Ehelyett a teljesítménybeli alapkonfigurációt teszteléssel és a számítási kapacitás megfelelő méretével hozza létre, hogy túlkiépítés nélkül megfeleljen a teljesítménykövetelményeknek.
A modellt az infrastruktúra szolgáltatásként (IaaS)-megoldások, például az Azure Adattudomány virtuális gép használatával is üzemeltetheti.
A vezénylési platform szempontjai
Az AI számítási feladatok alkalmazási platformjainak kontextusában az orchestration olyan eszközökre vonatkozik, mint a prompt flow a Machine Learning és a Azure AI Foundry portál. Ezeket az eszközöket úgy tervezték, hogy leegyszerűsítse az AI-alkalmazások teljes fejlesztési ciklusát számos gyakori munkafolyamat-funkció automatizálásával.
Nem funkcionális követelmények
A felhőbeli tulajdonban lévő összes többi éles számítási feladathoz hasonlóan a vezénylési eszközök kiértékelésekor a következő szempontokat kell figyelembe vennie:
Megbízhatóság, biztonság és figyelés. A vezénylési eszközöknek meg kell felelnie az éles számítási feladatok megbízhatósági, biztonsági és monitorozási szabványainak.
Teljesítmény. A vezénylési eszközök nem igényelnek GPU-optimalizált vagy GPU-alapú számítást, fontolja meg az általános célú termékváltozatokat.
Költségoptimalizálás. A vezénylési eszközök mindig rendelkezésre állnak, fontolja meg a rugalmas számítási lehetőségeket a kihasználtsági költségek minimalizálása érdekében.
Eszközök
Előnyben részesítse a polcon kívüli megoldást, például a parancssori folyamatot. Annak meghatározása, hogy képességei megfelelnek-e a vezénylési igényeknek, mielőtt az egyéni üzemeltetést olyan eszközökkel vizsgálja meg, mint a LangChain vagy a Szemantikus Kernel.
Gazdagépvégpontok olyan megoldásokhoz, mint a parancssori folyamat a Machine Learningben számítási példányokkal vagy önkiszolgáló AKS-en.