Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Linee guida per la creazione di modelli per il contenitore di formazione
Questa sezione descrive in dettaglio le linee guida che i fornitori di modelli devono seguire quando creano un algoritmo di modello ML personalizzato per Clean Rooms ML.
-
Usa l'immagine di base del contenitore appropriata supportata dalla formazione sull' SageMaker intelligenza artificiale, come descritto nella SageMaker AI Developer Guide. Il codice seguente consente di estrarre le immagini di base dei contenitori supportate dagli endpoint SageMaker AI pubblici.
ecr_registry_endpoint='763104351884.dkr.ecr.$REGION.amazonaws.com' base_image='pytorch-training:2.3.0-cpu-py311-ubuntu20.04-sagemaker' aws ecr get-login-password --region $REGION | docker login --username AWS --password-stdin $ecr_registry_endpoint docker pull $ecr_registry_endpoint/$base_image -
Quando crei il modello localmente, assicurati di quanto segue in modo da poter testare il tuo modello localmente, su un'istanza di sviluppo, su SageMaker AI Training nel tuo Account AWS e su Clean Rooms ML.
-
Consigliamo di scrivere uno script di addestramento che acceda a proprietà utili sull'ambiente di formazione tramite varie variabili di ambiente. Clean Rooms ML utilizza i seguenti argomenti per richiamare l'addestramento sul codice del modello:
SM_MODEL_DIR,SM_OUTPUT_DIRSM_CHANNEL_TRAIN, e.FILE_FORMATQueste impostazioni predefinite vengono utilizzate da Clean Rooms ML per addestrare il modello ML nel proprio ambiente di esecuzione con i dati di tutte le parti. -
Clean Rooms ML rende disponibili i canali di input per la formazione tramite le
/opt/ml/input/data/directory nel contenitore docker. Ogni canale di ingresso ML è mappato in base al corrispondentechannel-namechannel_namefornito nella richiesta.CreateTrainedModelparser = argparse.ArgumentParser()# Data, model, and output directories parser.add_argument('--model_dir', type=str, default=os.environ.get('SM_MODEL_DIR', "/opt/ml/model")) parser.add_argument('--output_dir', type=str, default=os.environ.get('SM_OUTPUT_DIR', "/opt/ml/output/data")) parser.add_argument('--train_dir', type=str, default=os.environ.get('SM_CHANNEL_TRAIN', "/opt/ml/input/data/train")) parser.add_argument('--train_file_format', type=str, default=os.environ.get('FILE_FORMAT', "csv")) -
Assicuratevi di essere in grado di generare un set di dati sintetico o di test basato sullo schema dei collaboratori che verrà utilizzato nel codice del modello.
-
Assicurati di poter eseguire un lavoro di formazione sull' SageMaker intelligenza artificiale da solo Account AWS prima di associare l'algoritmo del modello a una AWS Clean Rooms collaborazione.
Il codice seguente contiene un file Docker di esempio compatibile con i test locali, i test dell'ambiente di formazione SageMaker AI e Clean Rooms ML
FROM763104351884.dkr.ecr.us-west-2.amazonaws.com/pytorch-training:2.3.0-cpu-py311-ubuntu20.04-sagemaker MAINTAINER $author_name ENV PYTHONDONTWRITEBYTECODE=1 \ PYTHONUNBUFFERED=1 \ LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/usr/local/lib" ENV PATH="/opt/ml/code:${PATH}" # this environment variable is used by the SageMaker PyTorch container to determine our user code directory ENV SAGEMAKER_SUBMIT_DIRECTORY /opt/ml/code # copy the training script inside the container COPY train.py /opt/ml/code/train.py # define train.py as the script entry point ENV SAGEMAKER_PROGRAM train.py ENTRYPOINT ["python", "/opt/ml/code/train.py"]
-
-
Per monitorare al meglio i guasti dei container, consigliamo di esportare i log e di eseguire il debug per motivi di errore. In
GetTrainedModelrisposta, Clean Rooms ML restituisce i primi 1024 caratteri di questo file in.StatusDetails -
Dopo aver completato le modifiche al modello e essere pronti per testarlo nell'ambiente SageMaker AI, esegui i seguenti comandi nell'ordine fornito.
export ACCOUNT_ID=xxx export REPO_NAME=xxx export REPO_TAG=xxx export REGION=xxx docker build -t $ACCOUNT_ID.dkr.ecr.us-west-2.amazonaws.com/$REPO_NAME:$REPO_TAG # Sign into AWS $ACCOUNT_ID/ Run aws configure # Check the account and make sure it is the correct role/credentials aws sts get-caller-identity aws ecr create-repository --repository-name $REPO_NAME --region $REGION aws ecr describe-repositories --repository-name $REPO_NAME --region $REGION # Authenticate Doker aws ecr get-login-password --region $REGION | docker login --username AWS --password-stdin $ACCOUNT_ID.dkr.ecr.$REGION.amazonaws.com # Push To ECR Images docker push $ACCOUNT_ID.dkr.ecr.$REGION.amazonaws.com$REPO_NAME:$REPO_TAG # Create Sagemaker Training job # Configure the training_job.json with # 1. TrainingImage # 2. Input DataConfig # 3. Output DataConfig aws sagemaker create-training-job --cli-input-json file://training_job.json --region $REGIONUna volta completato il processo di SageMaker intelligenza artificiale e sei soddisfatto dell'algoritmo del modello, puoi registrare il registro Amazon ECR con AWS Clean Rooms ML. Usa l'
CreateConfiguredModelAlgorithmazione per registrare l'algoritmo del modello e associarlo a una collaborazione.CreateConfiguredModelAlgorithmAssociation