SageMaker Kits de ferramentas de treinamento e inferência - Amazon SageMaker

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á.

SageMaker Kits de ferramentas de treinamento e inferência

Os kits de ferramentas de SageMaker treinamento e SageMaker inferência implementam a funcionalidade de que você precisa para adaptar seus contêineres para executar scripts, treinar algoritmos e implantar modelos. SageMaker Quando instalada, a biblioteca define o seguinte para os usuários:

  • 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. Seu Dockerfile deve copiar o código que precisa ser executado no local esperado por um contêiner compatível com. SageMaker

  • Outras informações que um contêiner precisa a fim de gerenciar implantações para treinamento e inferência.

SageMaker Kits de ferramentas e estrutura de contêiner

Quando SageMaker treina um modelo, ele cria a seguinte estrutura de pastas de arquivos no /opt/ml diretório do contêiner.

/opt/ml ├── input │ ├── config │ │ ├── hyperparameters.json │ │ └── resourceConfig.json │ └── data │ └── <channel_name> │ └── <input data> ├── model │ ├── code │ ├── output │ └── failure

Quando você executa um trabalho de treinamento de modelo, o SageMaker contêiner usa o /opt/ml/input/ diretório, que contém os JSON arquivos que configuram os hiperparâmetros para o algoritmo e o layout de rede usado para treinamento distribuído. O /opt/ml/input/ diretório também contém arquivos que especificam os canais pelos quais SageMaker acessa os dados, que são armazenados no Amazon Simple Storage Service (Amazon S3). A biblioteca de SageMaker contêineres coloca os scripts que o contêiner executará no /opt/ml/code/ diretório. O script deve gravar o modelo gerado pelo algoritmo no diretório /opt/ml/model/. Para obter mais informações, consulte Contêineres com algoritmos de treinamento personalizados.

Quando você hospeda um modelo treinado SageMaker para fazer inferências, você implanta o modelo em um HTTP endpoint. 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 obter 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 SageMaker, 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 você usa GPUs para treinamento, mas seu código de inferência é otimizado paraCPUs.

  • SageMaker exige que os contêineres do Docker sejam executados sem acesso privilegiado.

  • Tanto os contêineres do Docker que você cria quanto os fornecidos por SageMaker podem enviar mensagens para os Stderr arquivos Stdout e. SageMaker envia essas mensagens para os CloudWatch registros da Amazon em sua AWS conta.

Para obter mais informações sobre como criar SageMaker contêineres e como os scripts são executados dentro deles, consulte os repositórios do SageMakerTraining Toolkit e do SageMaker Inference Toolkit em. GitHub Eles também fornecem listas de variáveis ambientais importantes e as variáveis ambientais fornecidas pelos SageMaker contêineres.