Gazdakód-szerver az Amazon SageMaker PlatoBlockchain Data Intelligence-en. Függőleges keresés. Ai.

Gazdakód-szerver az Amazon SageMakeren

A gépi tanulási (ML) csapatoknak rugalmasságra van szükségük az integrált fejlesztői környezet (IDE) kiválasztásához, amikor egy projekten dolgoznak. Lehetővé teszi, hogy produktív fejlesztői tapasztalatot szerezzen, és gyors innovációt végezzen. Akár több IDE-t is használhat egy projekten belül. Amazon SageMaker lehetővé teszi az ML-csapatok számára, hogy teljesen felügyelt, felhőalapú környezetből dolgozzanak Amazon SageMaker Studio, SageMaker notebook példányok, vagy a helyi gépről használja helyi mód.

A SageMaker egy kattintással biztosítja a Jupyter és az RStudio számára az ML modellek építését, betanítását, hibakeresését, üzembe helyezését és figyelését. Ebben a bejegyzésben megosztjuk a megoldások a fogadásért kód-szerver a SageMakeren.

A kódszerverrel a felhasználók futhatnak VS kód távoli gépeken, és elérheti egy webböngészőben. Az ML-csapatok számára a SageMaker-en található kódszerver minimális változtatásokat tesz lehetővé a helyi fejlesztési élményben, és lehetővé teszi a kódolást bárhonnan, méretezhető felhőalapú számítástechnikai eszközökön. A VS Code segítségével beépített Conda-környezeteket is használhat az AWS-re optimalizált TensorFlow-val és PyTorch-al, a felügyelt Git-tárolókkal, a helyi móddal és a SageMaker által biztosított egyéb funkciókkal a kézbesítés felgyorsítása érdekében. Az informatikai rendszergazdák számára lehetővé teszi a felügyelt, biztonságos IDE-k kiépítésének szabványosítását és felgyorsítását a felhőben, hogy gyorsan beépítsék és engedélyezzék az ML-csapatok projektjeit.

Megoldás áttekintése

Ebben a bejegyzésben a Studio-környezetek (A lehetőség) és a notebook példányok (B lehetőség) telepítésével foglalkozunk. Mindegyik lehetőségnél végigjárunk egy manuális telepítési folyamatot, amelyet az ML csapatok futtathatnak a környezetükben, és egy automatizált telepítést, amelyet az informatikai rendszergazdák állíthatnak be számukra a AWS parancssori interfész (AWS CLI).

A következő diagram a SageMaker kódszerverének üzemeltetéséhez szükséges architektúra áttekintését mutatja be.

Megoldásunk felgyorsítja a kódszerver telepítését és beállítását az Ön környezetében. Működik a JupyterLab 3 (ajánlott) és a JupyterLab 1 esetében is, amelyek a Studio és SageMaker notebook példányokon belül futnak. Shell szkriptekből áll, amelyek a következőt teszik az opció alapján.

A Studio esetében (A lehetőség) a shell szkript a következőket teszi:

A SageMaker jegyzetfüzet-példányok esetén (B lehetőség) a shell szkript a következőket teszi:

  • Telepíti a kódszervert.
  • Hozzáad egy kódszerver parancsikont a Jupyter notebook fájl menüjéhez és a JupyterLab indítóhoz az IDE gyors eléréséhez.
  • Dedikált Conda-környezetet hoz létre a függőségek kezelésére.
  • Telepíti a Piton és a Dokkmunkás kiterjesztések az IDE-n.

A következő szakaszokban az A és B lehetőség megoldásának telepítési folyamatát mutatjuk be. Győződjön meg arról, hogy rendelkezik hozzáféréssel a Studio vagy egy notebook példányhoz.

A lehetőség: Host code-server a Studio-ban

Ha kódszervert szeretne üzemeltetni a Studio-ban, hajtsa végre a következő lépéseket:

  1. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Rendszerterminál a Studio indítójában.
    ml-10244-studio-terminal-click
  2. A kódszerver megoldás telepítéséhez futtassa a következő parancsokat a rendszerterminálon:
    curl -LO https://github.com/aws-samples/amazon-sagemaker-codeserver/releases/download/v0.1.5/amazon-sagemaker-codeserver-0.1.5.tar.gz
    tar -xvzf amazon-sagemaker-codeserver-0.1.5.tar.gz
    
    cd amazon-sagemaker-codeserver/install-scripts/studio
     
    chmod +x install-codeserver.sh
    ./install-codeserver.sh
    
    # Note: when installing on JL1, please prepend the nohup command to the install command above and run as follows: 
    # nohup ./install-codeserver.sh

    A parancsok végrehajtása néhány másodpercet vesz igénybe.

  3. Töltse be újra a böngésző oldalát, ahol láthatja a Kódszerver gombot a Studio indítójában.
    ml-10244-kód-szerver-gomb
  4. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Kódszerver egy új böngészőlap megnyitásához, amely lehetővé teszi a kódszerver elérését a böngészőből.
    A Python-bővítmény már telepítve van, és elkezdhet dolgozni az ML-projektben.ml-10244-vscode

Megnyithatja projektmappáját a VS Code-ban, és kiválaszthatja az előre elkészített Conda környezetet a Python-szkriptek futtatásához.

ml-10244-vscode-conda

Automatizálja a kódszerver telepítését a Studio tartomány felhasználói számára

Rendszergazdaként automatizálhatja a telepítést a Studio felhasználói számára az a életciklus konfiguráció. Megtehető az összes felhasználó profiljához egy Studio domain alatt, vagy bizonyos profilokhoz. Lát Az Amazon SageMaker Studio testreszabása az életciklus-konfigurációk segítségével fül alatt találsz.

Ehhez a bejegyzéshez életciklus-konfigurációt hozunk létre a install-codeserver szkriptet, és csatolja egy meglévő Studio-tartományhoz. A telepítés a tartomány összes felhasználói profiljára megtörténik.

Az AWS CLI-vel és megfelelő jogosultságokkal konfigurált terminálról futtassa a következő parancsokat:

curl -LO https://github.com/aws-samples/amazon-sagemaker-codeserver/releases/download/v0.1.5/amazon-sagemaker-codeserver-0.1.5.tar.gz
tar -xvzf amazon-sagemaker-codeserver-0.1.5.tar.gz

cd amazon-sagemaker-codeserver/install-scripts/studio

LCC_CONTENT=`openssl base64 -A -in install-codeserver.sh`

aws sagemaker create-studio-lifecycle-config 
    --studio-lifecycle-config-name install-codeserver-on-jupyterserver 
    --studio-lifecycle-config-content $LCC_CONTENT 
    --studio-lifecycle-config-app-type JupyterServer 
    --query 'StudioLifecycleConfigArn'

aws sagemaker update-domain 
    --region  
    --domain-id  
    --default-user-settings 
    '{
    "JupyterServerAppSettings": {
    "DefaultResourceSpec": {
    "LifecycleConfigArn": "arn:aws:sagemaker:::studio-lifecycle-config/install-codeserver-on-jupyterserver",
    "InstanceType": "system"
    },
    "LifecycleConfigArns": [
    "arn:aws:sagemaker:::studio-lifecycle-config/install-codeserver-on-jupyterserver"
    ]
    }}'

# Make sure to replace ,  and  in the previous commands with
# the Studio domain ID, the AWS region and AWS Account ID you are using respectively.

A Jupyter Server újraindítása után a Kódszerver gomb jelenik meg a Studio indítójában.

B lehetőség: Kódkiszolgáló állomása egy SageMaker notebook példányon

A kódszerver SageMaker jegyzetfüzetpéldányon való üzemeltetéséhez hajtsa végre a következő lépéseket:

  1. Indítson el egy terminált a Jupyter vagy a JupyterLab segítségével a notebook példányához.
    Ha Jupytert használ, válassza terminál a Új menüben.
    Gazdakód-szerver az Amazon SageMaker PlatoBlockchain Data Intelligence-en. Függőleges keresés. Ai.
  2.  A kódszerver megoldás telepítéséhez futtassa a következő parancsokat a terminálon:
    curl -LO https://github.com/aws-samples/amazon-sagemaker-codeserver/releases/download/v0.1.5/amazon-sagemaker-codeserver-0.1.5.tar.gz
    tar -xvzf amazon-sagemaker-codeserver-0.1.5.tar.gz
    
    cd amazon-sagemaker-codeserver/install-scripts/notebook-instances
     
    chmod +x install-codeserver.sh
    chmod +x setup-codeserver.sh
    sudo ./install-codeserver.sh
    sudo ./setup-codeserver.sh

    A kódszerver és a bővítmények telepítése állandó a notebook példányon. Ha azonban leállítja vagy újraindítja a példányt, akkor a következő parancsot kell futtatnia a kódszerver újrakonfigurálásához:

    sudo ./setup-codeserver.sh

    A parancsok futtatása néhány másodpercet vesz igénybe. Bezárhatja a terminál lapot, ha a következőket látja.

    ml-10244-terminál-kimenet

  3. Most töltse be újra a Jupyter oldalt, és ellenőrizze a Új menü újra.
    A Kódszerver opciónak most elérhetőnek kell lennie.
    Gazdakód-szerver az Amazon SageMaker PlatoBlockchain Data Intelligence-en. Függőleges keresés. Ai.

A kódszervert a JupyterLabból is elindíthatja egy dedikált indítógombbal, amint az a következő képernyőképen látható.

ml-10244-jupyterlab-code-server-button

Kiválasztása Kódszerver megnyit egy új böngészőlapot, amely lehetővé teszi a kódszerver elérését a böngészőből. A Python- és a Docker-bővítmények már telepítve vannak, és elkezdhet dolgozni az ML-projektben.

ml-10244-notebook-vscode

Automatizálja a kódszerver telepítését egy notebook példányra

Rendszergazdaként automatizálhatja a kódszerver telepítését a életciklus konfiguráció példány-létrehozáskor fut, és automatizálja a telepítést úgy, hogy egy példány indításkor fut.

Itt létrehozunk egy példa notebook példányt és életciklus-konfigurációt a AWS CLI Az on-create konfig fut install-codeserverés on-start fut setup-codeserver.

Az AWS CLI-vel és megfelelő jogosultságokkal konfigurált terminálról futtassa a következő parancsokat:

curl -LO https://github.com/aws-samples/amazon-sagemaker-codeserver/releases/download/v0.1.5/amazon-sagemaker-codeserver-0.1.5.tar.gz
tar -xvzf amazon-sagemaker-codeserver-0.1.5.tar.gz

cd amazon-sagemaker-codeserver/install-scripts/notebook-instances

aws sagemaker create-notebook-instance-lifecycle-config 
    --notebook-instance-lifecycle-config-name install-codeserver 
    --on-start Content=$((cat setup-codeserver.sh || echo "")| base64) 
    --on-create Content=$((cat install-codeserver.sh || echo "")| base64)

aws sagemaker create-notebook-instance 
    --notebook-instance-name  
    --instance-type  
    --role-arn  
    --lifecycle-config-name install-codeserver

# Make sure to replace , ,
# and  in the previous commands with the appropriate values.

A kódszerver telepítése most már automatizált a notebook példányhoz.

Következtetés

A kód-szerver A SageMaker-en tárolt ML-csapatok futtathatják a VS Code-ot skálázható felhőalapú számítástechnikán, bárhonnan kódolhatnak, és felgyorsíthatják ML-projektjeiket. Az informatikai rendszergazdák számára lehetővé teszi számukra, hogy szabványosítsák és felgyorsítsák a felügyelt, biztonságos IDE-k kiépítését a felhőben, hogy gyorsan beépíthessék és engedélyezzék az ML-csapatokat projektjeikben.

Ebben a bejegyzésben megosztottunk egy megoldást, amellyel gyorsan telepítheti a kódszervert mind a Studio, mind a notebook példányokon. Megosztottunk egy manuális telepítési folyamatot, amelyet az ML-csapatok önállóan futtathatnak, és egy automatizált telepítést, amelyet az informatikai rendszergazdák állíthatnak be számukra.

Ha tovább szeretne tanulni, látogasson el ide AWSome SageMaker a GitHubon, hogy megtalálja a SageMakerrel való munkához szükséges összes releváns és naprakész erőforrást.


A szerzőkről

Gazdakód-szerver az Amazon SageMaker PlatoBlockchain Data Intelligence-en. Függőleges keresés. Ai.Giuseppe Angelo Porcelli az Amazon Web Services vezető gépi tanulási specialistája. Több éves szoftvermérnöki háttérrel, ML háttérrel, bármilyen méretű ügyfelekkel dolgozik, hogy mélyen megértse üzleti és műszaki igényeiket, és olyan mesterséges intelligencia és gépi tanulási megoldásokat tervezzen, amelyek a lehető legjobban használják ki az AWS felhőt és az Amazon Machine Learning veremét. Különböző területeken dolgozott projekteken, beleértve az MLOps-t, a Computer Vision-t, az NLP-t és az AWS-szolgáltatások széles körét. Szabadidejében Giuseppe szívesen focizik.

Gazdakód-szerver az Amazon SageMaker PlatoBlockchain Data Intelligence-en. Függőleges keresés. Ai.Sofian Hamiti az AWS AI/ML-specialista megoldástervezője. Segíti az ügyfeleket a különböző iparágakban, hogy felgyorsítsák az AI/ML-útjukat azáltal, hogy segít nekik a végpontok közötti gépi tanulási megoldások kidolgozásában és üzemeltetésében.

Gazdakód-szerver az Amazon SageMaker PlatoBlockchain Data Intelligence-en. Függőleges keresés. Ai.Eric Pena az AWS Artificial Intelligence Platforms csapatának vezető műszaki termékmenedzsere, az Amazon SageMaker interaktív gépi tanuláson dolgozik. Jelenleg a SageMaker Studio IDE-integrációira összpontosít. Az MIT Sloan egyetemen szerzett MBA diplomát, a munkán kívül pedig szívesen kosárlabdázik és futballozik.

Időbélyeg:

Még több AWS gépi tanulás