As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Kits de ferramentas de treinamento e inferência do SageMaker
Os kits de ferramentas de treinamento do SageMaker
-
Os locais para armazenar código e outros recursos.
-
O ponto de entrada que contém o código a ser executado quando o contêiner é iniciado. O arquivo do Docker deve copiar o código que precisa ser executado no local esperado por um contêiner compatível com o SageMaker AI.
-
Outras informações que um contêiner precisa a fim de gerenciar implantações para treinamento e inferência.
Estrutura de contêineres dos kits de ferramentas do SageMaker AI
Quando o SageMaker AI treina um modelo, ele cria a estrutura de pastas de arquivos a seguir no diretório /opt/ml do contêiner.
/opt/ml ├── input │ ├── config │ │ ├── hyperparameters.json │ │ └── resourceConfig.json │ └── data │ └── <channel_name> │ └── <input data> ├── model │ ├── code │ ├── output │ └── failure
Quando você executa uma tarefa de treinamento de modelo, o contêiner do SageMaker AI usa o diretório /opt/ml/input/, que contém os arquivos JSON que configuram os hiperparâmetros do algoritmo e o layout da rede usado para treinamento distribuído. O diretório /opt/ml/input/ também contém arquivos que especificam os canais pelos quais o SageMaker AI acessa os dados, que são armazenados no Amazon Simple Storage Service (Amazon S3). A biblioteca dos contêineres do SageMaker AI coloca os scripts que o contêiner vai executar no diretório /opt/ml/code/. O script deve gravar o modelo gerado pelo algoritmo no diretório /opt/ml/model/. Para ter mais informações, consulte Contêineres com algoritmos de treinamento personalizados.
Ao hospedar um modelo treinado no SageMaker AI para fazer inferência, você implantará o modelo para um endpoint HTTP. O modelo faz previsões em tempo real como resposta às solicitações de inferência. O contêiner deve conter uma pilha de serviços para processar essas solicitações.
Em um contêiner de hospedagem ou de transformação em lote, os arquivos do modelo estão localizados na mesma pasta em que estavam gravados durante o treinamento.
/opt/ml/model │ └── <model files>
Para ter mais informações, consulte Contêineres com código de inferência personalizado.
Contêineres únicos versus múltiplos
É possível fornecer imagens do Docker separadas para o algoritmo de treinamento e código de inferência ou usá-las em uma única imagem do Docker para ambas. Ao criar imagens do Docker para uso com o SageMaker AI, considere o seguinte:
-
Fornecer duas imagens do Docker pode aumentar os requisitos de armazenamento e o custo, pois bibliotecas comuns podem ser duplicadas.
-
Em geral, os contêineres menores são iniciados mais rapidamente para treinamento e hospedagem. Os modelos são treinados mais rapidamente, e o serviço de hospedagem pode reagir a aumentos no tráfego expandindo automaticamente com mais agilidade.
-
Talvez seja possível gravar um contêiner de inferência significativamente menor que o contêiner de treinamento. Isso é especialmente comum quando GPUs são usadas para treinamento, mas seu código de inferência é otimizado para CPUs.
-
O SageMaker AI exige que os contêineres do Docker sejam executados sem acesso privilegiado.
-
Tanto os contêineres do Docker que você cria quanto aqueles fornecidos pelo SageMaker AI podem enviar mensagens aos arquivos
StdouteStderr. O SageMaker AI envia essas mensagens aos logs do Amazon CloudWatch em sua conta da AWS.
Para ter mais informações sobre como criar contêineres do SageMaker AI e como os scripts são executados dentro deles, consulte os repositórios do SageMaker AI Training Toolkit