View a markdown version of this page

Use modelos SageMaker AI-Provided de projeto - SageMaker Inteligência Artificial da Amazon

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

Use modelos SageMaker AI-Provided de projeto

Importante

Em 28 de outubro de 2024, os AWS CodeCommit modelos foram removidos. Para novos projetos, selecione entre os modelos de projeto disponíveis que usam repositórios Git de terceiros.

A Amazon SageMaker AI fornece modelos de projeto que criam a infraestrutura necessária para criar uma solução MLOps para integração contínua e implantação contínua (CI/CD) de modelos de ML. Use esses modelos para processar dados, extrair recursos, treinar e testar modelos, registrar os SageMaker modelos no Registro de Modelos e implantar os modelos para inferência. Você pode personalizar o código inicial e os arquivos de configuração para atender aos seus requisitos.

nota

Outros perfis são necessários para usar modelos de projeto. Para obter uma lista completa das funções necessárias e instruções sobre como criá-las, consulte Conceder as permissões necessárias ao SageMaker Studio para usar projetos. Se você não tiver as novas funções, receberá a mensagem de erro Não CodePipeline está autorizado a desempenhar AssumeRole na função arn:aws:iam: :xxx: role/service - role/AmazonSageMakerServiceCatalogProductsCodePipelineRole ao tentar criar um novo projeto e não conseguir continuar.

SageMaker Os modelos de projeto de IA oferecem a seguinte opção de repositórios de código, ferramentas de automação de fluxo de trabalho e estágios de pipeline:

  • Repositório de código: repositórios Third-party Git, como e Bitbucket GitHub

  • CI/CD automação do fluxo de trabalho: AWS CodePipeline ou Jenkins

  • Estágios do pipeline: construção e treinamento do modelo, implantação do modelo ou ambos

A discussão a seguir fornece uma visão geral de cada modelo que você pode escolher ao criar seu projeto de SageMaker IA. Você também pode visualizar os modelos disponíveis no Studio (ou Studio Classic) seguindo Create a Project em Project walkthrough.

Para obter instruções passo a passo sobre como criar um projeto real, você pode seguir um dos passo a passo do projeto:

Tópicos
    • Repositório de código: Third-party Git.

      nota

      Estabeleça a AWS CodeStar conexão da sua AWS conta com seu GitHub usuário ou organização. Adicione uma tag com a chave sagemaker e o valor true a essa AWS CodeStar conexão.

    • CI/CD automação do fluxo de trabalho: AWS CodePipeline

    Criação e treinamento de modelos

    Este modelo fornece os seguintes recursos:

    • Associações com repositórios do Git de um cliente especificado. O repositório contém um código de amostra que cria um pipeline de SageMaker IA da Amazon em código Python e mostra como criar e atualizar SageMaker o pipeline de IA. Esse repositório também tem um caderno Python de amostra que você pode abrir e executar no Studio (ou Studio Classic).

    • Um AWS CodePipeline pipeline que tem etapas de origem e construção. A etapa de origem destina-se ao repositório do Git de terceiros. A etapa de construção obtém o código desse repositório, cria e atualiza o pipeline de SageMaker IA, inicia a execução do pipeline e aguarda a conclusão da execução do pipeline.

    • Um AWS CodeBuild projeto para preencher os repositórios Git com as informações do código inicial. Isso requer uma AWS CodeStar conexão da sua com Conta da AWS a sua conta no host do repositório Git.

    • Um bucket do Amazon S3 para armazenar artefatos, inclusive artefatos, CodePipeline e quaisquer CodeBuild artefatos gerados a partir do pipeline de IA é executado. SageMaker

    Implantação de modelos

    Este modelo fornece os seguintes recursos:

    • Associações com repositórios do Git de um cliente especificado. O repositório contém código de amostra que implanta modelos em endpoints em ambientes de preparação e produção.

    • Um AWS CodePipeline pipeline que tem etapas de origem, construção, implantação até preparação e implantação até produção. A etapa de origem aponta para o repositório Git de terceiros e a etapa de criação obtém o código desse repositório e gera CloudFormation pilhas para implantação. As etapas de implantação para preparação e implantação para produção implantam as CloudFormation pilhas em seus respectivos ambientes. Há uma etapa de aprovação manual entre as etapas de criação da preparação e produção, de modo que um engenheiro de MLOps deve aprovar o modelo antes de ser implantado na produção.

    • Um AWS CodeBuild projeto para preencher os repositórios Git com as informações do código inicial. Isso requer uma AWS CodeStar conexão da sua com Conta da AWS a sua conta no host do repositório Git.

    • Um bucket do Amazon S3 para armazenar artefatos, inclusive artefatos, CodePipeline e quaisquer CodeBuild artefatos gerados a partir do pipeline de IA é executado. SageMaker

    Criação, treinamento e implantação de modelos

    Este modelo fornece os seguintes recursos:

    • Associações com um ou mais repositórios Git especificados pelo cliente.

    • Um AWS CodePipeline pipeline que tem etapas de origem, construção, implantação até preparação e implantação até produção. A etapa de origem aponta para o repositório do Git de terceiros e a etapa de criação obtém o código desse repositório e gera pilhas do CloudFormation para implantar. As etapas de implantação até preparação e implantação até produção implantam as pilhas do CloudFormation nos respectivos ambientes. Há uma etapa de aprovação manual entre as etapas de criação da preparação e produção, de modo que um engenheiro de MLOps deve aprovar o modelo antes de ser implantado na produção.

    • Um AWS CodeBuild projeto para preencher os repositórios Git com as informações do código inicial. Isso requer uma AWS CodeStar conexão da sua AWS conta com a sua conta no host do repositório Git.

    • Um bucket do Amazon S3 para armazenar artefatos, inclusive artefatos, CodePipeline e quaisquer CodeBuild artefatos gerados a partir do pipeline de IA é executado. SageMaker

    Conforme mencionado anteriormente, consulte Project Walkthrough Using Third-party Git Repos para ver uma demonstração que usa esse modelo para criar um projeto real.

    • Repositório de código: Third-party Git.

      nota

      Estabeleça a AWS CodeStar conexão da sua AWS conta com seu GitHub usuário ou organização. Adicione uma tag com a chave sagemaker e o valor true a essa AWS CodeStar conexão.

    • CI/CD automação do fluxo de trabalho: AWS CodePipeline

    Os modelos a seguir incluem um SageMaker modelo adicional do Amazon Model Monitor que fornece os seguintes tipos de monitoramento:

    Construção de modelos, treinamento, implantação e Amazon SageMaker Model Monitor

    Esse modelo é uma extensão do modelo MLOps para criação, treinamento e implantação de modelos com o uso de repositórios Git. CodePipeline Ele inclui os componentes de criação, treinamento e implantação do modelo e um modelo adicional do Amazon SageMaker Model Monitor que fornece os seguintes tipos de monitoramento:

    Monitorar um modelo implantado

    Você pode usar esse modelo para uma solução MLOps para implantar um ou mais monitores de qualidade de dados, qualidade do modelo, viés do modelo e explicabilidade do modelo de SageMaker IA da Amazon para monitorar um modelo implantado em um endpoint de inferência de IA. SageMaker Este modelo fornece os seguintes recursos:

    • Associações com um ou mais repositórios Git especificados pelo cliente. O repositório contém exemplos de código Python que obtém as linhas de base usadas pelos monitores do SageMaker Amazon Model Registry e atualiza os parâmetros do modelo para os ambientes de preparação e produção. Ele também contém um CloudFormation modelo para criar os Amazon SageMaker Model Monitors.

    • Um AWS CodePipeline pipeline que tem etapas de origem, criação e implantação. A etapa de origem aponta para o CodePipeline repositório. A etapa de criação obtém o código desse repositório, obtém a linha de base do Registro de modelo e atualiza os parâmetros do modelo para os ambientes de preparação e produção. As etapas de implantação implantam os monitores configurados nos ambientes de preparação e produção. A etapa de aprovação manual, dentro do DeployStaging estágio, exige que você verifique se o endpoint de SageMaker IA de produção está InService antes de aprovar e passar para o DeployProd estágio.

    • Um AWS CodeBuild projeto para preencher os repositórios Git com as informações do código inicial. Isso requer uma AWS CodeStar conexão da sua com Conta da AWS a sua conta no host do repositório Git.

    • O modelo usa o mesmo bucket do Amazon S3 criado pelo modelo de MLOps para criação, treinamento e implantação de modelos para armazenar as saídas dos monitores.

    • Duas regras de EventBridge eventos da Amazon iniciam o Amazon SageMaker Model Monitor AWS CodePipeline toda vez que o endpoint de SageMaker IA de teste é atualizado.

    • Repositório de código: Third-party Git.

      nota

      Estabeleça a AWS CodeStar conexão da sua AWS conta com seu GitHub usuário ou organização. Adicione uma tag com a chave sagemaker e o valor true a essa AWS CodeStar conexão.

    • CI/CD automação do fluxo de trabalho: Jenkins

    Criação, treinamento e implantação de modelos

    Este modelo fornece os seguintes recursos:

    • Associações com um ou mais repositórios Git especificados pelo cliente.

    • Código inicial para gerar pipelines do Jenkins que têm etapas de fonte, criação, implantação para preparação e implantação para produção. A etapa de fonte destina-se ao repositório Git especificado pelo cliente. A etapa de construção obtém o código desse repositório e gera duas CloudFormation pilhas. As etapas de implantação implantam as CloudFormation pilhas em seus respectivos ambientes. Há uma etapa de aprovação entre a etapa de preparação e a etapa de produção.

    • Um AWS CodeBuild projeto para preencher os repositórios Git com as informações do código inicial. Isso requer uma AWS CodeStar conexão da sua AWS conta com a sua conta no host do repositório Git.

    • Um bucket do Amazon S3 para armazenar artefatos do projeto de IA e SageMaker do SageMaker pipeline de IA.

    O modelo cria a associação entre seu projeto e os repositórios de controle de origem, mas você precisa realizar etapas manuais adicionais para estabelecer a comunicação entre sua AWS conta e o Jenkins. Para ver as etapas detalhadas, consulte Criar SageMaker projetos da Amazon usando o controle de origem de terceiros e o Jenkins.

    As instruções ajudam você a criar a arquitetura mostrada no diagrama a seguir, com GitHub o repositório de controle de origem neste exemplo. Conforme mostrado, você anexará seu repositório Git ao projeto para verificar e gerenciar as versões do código. O Jenkins inicia o pipeline de construção do modelo quando detecta alterações no código de criação do modelo no repositório Git. Você também conectará o projeto ao Jenkins para orquestrar as etapas de implantação do modelo, que começam quando você aprova o modelo registrado no registro do modelo ou quando o Jenkins detecta alterações no código de implantação do modelo.

    O fluxo de trabalho do pipeline criado usando o modelo de projeto.

    Em resumo, as etapas o orientam pelas seguintes tarefas:

    1. Estabeleça a conexão entre suas GitHub contas AWS e as suas.

    2. Criar a conta do Jenkins e importe os plug-ins necessários.

    3. Criar a política de usuários e permissões do IAM do Jenkins.

    4. Defina as AWS credenciais para o usuário do Jenkins IAM no seu servidor Jenkins.

    5. Criar um token de API para comunicação com seu servidor do Jenkins.

    6. Use um CloudFormation modelo para configurar uma EventBridge regra para monitorar o registro de modelos recém-aprovados.

    7. Crie o projeto de SageMaker IA, que alimenta seus GitHub repositórios com código de criação e implantação de modelos.

    8. Criar seu pipeline de criação de modelo do Jenkins com o código inicial de criação do modelo.

    9. Criar seu pipeline de implantação de modelo do Jenkins com o código inicial de implantação do modelo.

    Este modelo é uma extensão de Modelos de MLOps para criação, treinamento e implantação de modelos com Git de terceiros usando Git CodePipeline. Ele inclui os componentes de criação, treinamento e implantação do modelo e as seguintes opções:

    • Incluir pipeline de criação de imagem de processamento

    • Incluir um pipeline de criação de imagens de treinamento

    • Incluir um pipeline de criação de imagens de inferência

    Para cada um dos componentes selecionados durante a criação do projeto, o seguinte é criado ao usar o modelo:

    • Um repositório do Amazon ECR

    • Uma SageMaker imagem

    • Um CodeCommit repositório contendo um Dockerfile que você pode personalizar

    • Um CodePipeline que é iniciado por alterações no CodePipeline repositório

    • Um CodeBuild projeto que cria uma imagem do Docker e a registra no repositório Amazon ECR

    • Uma EventBridge regra que inicia o CodePipeline em um cronograma

    Quando o CodePipeline é iniciado, ele cria um novo contêiner Docker e o registra em um repositório Amazon ECR. Quando um novo contêiner é registrado no repositório Amazon ECR, um novo ImageVersion é adicionado à SageMaker imagem. Isso inicia o pipeline de criação do modelo, que por sua vez inicia o pipeline de implantação.

    A imagem recém-criada é usada nas partes de criação, treinamento e implantação do modelo do fluxo de trabalho, quando aplicável.

    A política gerenciada anexada ao perfil AmazonSageMakerServiceCatalogProductsUseRole foi atualizada em 27 de julho de 2021 para uso com modelos Git de terceiros. Os usuários que se inscrevem no Amazon SageMaker Studio (ou Studio Classic) após essa data e habilitam modelos de projeto usam a nova política. Os usuários que se inscreveram antes dessa data devem atualizar a política para usar esses modelos. Use uma das seguintes opções para atualizar a política:

    • Excluir o perfil e alternar as configurações do Studio (ou Studio Classic)

      1. No console do IAM, exclua AmazonSageMakerServiceCatalogProductsUseRole.

      2. No ambiente de gerenciamento do Studio (ou Studio Classic), escolha Editar configurações.

      3. Alterne as duas configurações e escolha Enviar.

    • No console do IAM, adicione as seguintes permissões ao AmazonSageMakerServiceCatalogProductsUseRole:

      { "Effect": "Allow", "Action": [ "codestar-connections:UseConnection" ], "Resource": "arn:aws:codestar-connections:*:*:connection/*", "Condition": { "StringEqualsIgnoreCase": { "aws:ResourceTag/sagemaker": "true" } } }, { "Effect": "Allow", "Action": [ "s3:PutObjectAcl" ], "Resource": [ "arn:aws:s3:::sagemaker-*" ] }