Zephyrnet Logo

Implantação de modelo de várias contas com Amazon SageMaker Pipelines

Data:

Pipelines Amazon SageMaker é o primeiro construído propositadamente CI/CD serviço de aprendizado de máquina (ML). Ele ajuda a criar, automatizar, gerenciar e dimensionar fluxos de trabalho de ML de ponta a ponta e aplicar as práticas recomendadas de DevOps de CI / CD para ML (também conhecido como MLOps).

Criar várias contas para organizar todos os recursos de sua organização é um boa prática DevOps. Uma estratégia de várias contas é importante não apenas para melhorar a governança, mas também para aumentar a segurança e o controle dos recursos que suportam os negócios da sua organização. Essa estratégia permite que muitas equipes diferentes dentro de sua organização experimentem, inovem e se integrem mais rapidamente, enquanto mantém o ambiente de produção seguro e disponível para seus clientes.

Os pipelines facilitam a aplicação da mesma estratégia para implantar modelos de ML. Imagine um caso de uso no qual você tem três contas diferentes da AWS, uma para cada ambiente: ciência de dados, teste e produção. O cientista de dados tem a liberdade de realizar experimentos, treinar e otimizar diferentes modelos a qualquer momento por conta própria. Quando um modelo é bom o suficiente para ser implantado na produção, o cientista de dados só precisa mudar o status de aprovação do modelo para Approved. Depois disso, um processo automatizado implanta o modelo na conta de teste. Aqui você pode automatizar o teste do modelo com testes de unidade ou testes de integração ou testar o modelo manualmente. Depois de uma aprovação manual ou automatizada, o modelo é implantado na conta de produção, que é um ambiente mais controlado usado para servir a inferências sobre dados do mundo real. Com o Pipelines, você pode implementar um ambiente de várias contas pronto para usar.

Nesta postagem, você aprenderá a usar pipelines para implementar seu próprio pipeline de ML de várias contas. Primeiro, você aprende como configurar seu ambiente e prepará-lo para usar um modelo predefinido como um Projeto SageMaker para treinar e implantar um modelo em duas contas diferentes: teste e produção. Em seguida, você verá em detalhes como este modelo personalizado foi criado e como criar e personalizar modelos para seus próprios projetos SageMaker.

Preparando o ambiente

Nesta seção, você configura três contas AWS diferentes e usa Estúdio SageMaker para criar um projeto que integra um pipeline de CI / CD com o pipeline de ML criado por um cientista de dados. O diagrama a seguir mostra a arquitetura de referência do ambiente que é criado pelo projeto personalizado SageMaker e como Organizações da AWS integra as diferentes contas.

O diagrama a seguir mostra a arquitetura de referência do ambiente que é criado pelo projeto personalizado SageMaker e como o AWS Organizations integra as diferentes contas.

O diagrama contém três contas diferentes, gerenciadas por Organizações. Além disso, três funções de usuário diferentes (que podem ser a mesma pessoa) operam este ambiente:

  • Engenheiro de ML - Responsável por provisionar o projeto SageMaker Studio que cria o pipeline de CI / CD, registro de modelo e outros recursos
  • Cientista de dados - Responsável por criar o pipeline de ML que termina com um modelo treinado registrado no grupo de modelos (também conhecido como grupo de pacote modelo)
  • Aprovador - Responsável por testar o modelo implantado na conta de teste e aprovar a implantação de produção

É possível executar uma solução semelhante sem Organizações, se você preferir (embora não seja recomendado). Mas você precisa preparar as permissões e a relação de confiança entre suas contas manualmente e modificar o modelo para remover a dependência de Organizações. Além disso, se você for uma empresa com várias contas e equipes da AWS, é altamente recomendável que você use Torre de controle AWS para provisionar as contas e Organizações. A AWS Control Tower oferece a maneira mais fácil de configurar e controlar um ambiente AWS de várias contas novo e seguro. Para esta postagem, discutimos apenas a implementação da solução com Organizações.

Mas antes de prosseguir, você precisa concluir as etapas a seguir, que são detalhadas nas próximas seções:

  1. Crie uma conta da AWS para ser usada pelos cientistas de dados (conta da ciência de dados).
  2. Crie e configure um Domínio SageMaker Studio na conta da ciência de dados.
  3. Crie duas contas adicionais para produção e preparação.
  4. Crie uma estrutura organizacional usando Organizações e convide e integre as contas adicionais.
  5. Configure as permissões necessárias para executar os pipelines e implantar modelos em contas externas.
  6. Importe o modelo de projeto SageMaker para implantar modelos em várias contas e disponibilize-o para SageMaker Studio.

Configurando o SageMaker Studio em sua conta

Pipelines fornece suporte integrado para Modelos MLOps para facilitar o uso de CI / CD em seus projetos de ML. Esses modelos de MLOps são definidos como Amazon CloudFormation modelos e publicados via Catálogo de serviços da AWS. Eles são disponibilizados para cientistas de dados por meio do SageMaker Studio, um IDE para ML. Para configurar o Studio em sua conta, execute as seguintes etapas:

  1. Prepare o seu domínio SageMaker Studio.
  2. Habilitar modelos de projeto SageMaker e SageMaker JumpStart para esta conta e usuários do Studio.

Se você tiver um domínio existente, pode simplesmente editar as configurações do domínio ou de usuários individuais para habilitar essa opção. Ativar esta opção cria dois diferentes Gerenciamento de contas e identidades da AWS (IAM) funções em sua conta AWS:

  • AmazonSageMakerServiceCatalogProductsLaunchRole - Usado pelo SageMaker para executar os modelos de projeto e criar os recursos de infraestrutura necessários
  • AmazonSageMakerServiceCatalogProductsUseRole - Usado pelo pipeline de CI / CD para executar um trabalho e implantar os modelos nas contas de destino

Se você criou seu domínio SageMaker Studio antes do re: Invent 2020, é recomendado que você atualize seu ambiente salvando todo o trabalho em andamento. No Envie o menu, escolha encerramentoe confirme sua escolha.

  1. Crie e prepare duas outras contas da AWS para teste e produção, se ainda não as tiver.

Configurando Organizações

Você precisa adicionar a conta de ciência de dados e as duas contas adicionais a uma estrutura em Organizações. Organizations ajuda você a gerenciar e governar centralmente seu ambiente conforme você aumenta e dimensiona seus recursos da AWS. É gratuito e beneficia sua estratégia de governança.

Cada conta deve ser adicionada a um diferente unidade organizacional (UO).

  1. No console Organizations, crie uma estrutura de UOs como a seguinte:
  • Raiz
    • multi-account-deployment (OU)
      • 111111111111 (conta de ciência de dados - SageMaker Studio)
      • production (UO)
        • 222222222222 (conta AWS)
      • staging (UO)
        • 333333333333 (conta AWS)

Após configurar a organização, cada proprietário da conta recebe um convite. Os proprietários precisam aceitar os convites, caso contrário, as contas não serão incluídas na organização.

  1. Agora você precisa habilitar o acesso confiável com organizações AWS (“Habilitar todos os recursos” e “Habilitar acesso confiável nos StackSets”).

Este processo permite que sua conta de ciência de dados provisione recursos nas contas de destino. Se você não fizer isso, o processo de implantação falhará. Além disso, este conjunto de recursos é a forma preferida de trabalhar com as Organizações e inclui a consolidação de recursos de cobrança.

  1. A seguir, no console Organizations, escolha Organizar contas.
  2. Escolha encenação.
  3. Anote a ID da UO.
  4. Repita este processo para o production OU

Repita esse processo para a UO de produção.

Configurando as permissões

Você precisa criar uma função de execução SageMaker em cada conta adicional. Essas funções são assumidas por AmazonSageMakerServiceCatalogProductsUseRole na conta de ciência de dados para implantar os terminais nas contas de destino e testá-los.

  1. Entre no Console de gerenciamento da AWS com a conta de teste.
  2. Execute o seguinte Modelo CloudFormation.

Este modelo cria uma nova função SageMaker para você.

  1. Forneça os seguintes parâmetros:
    1. SageMakerRoleSuffix - Uma string curta (máximo de 10 minúsculas sem espaços ou caracteres alfanuméricos) que é adicionada ao nome da função após o seguinte prefixo: sagemaker-role-. O nome final da função é sagemaker-role-<<sagemaker_role_suffix>>.
    2. PipelineExecutionRoleArn - O ARN da função da conta de ciência de dados que assume a função SageMaker que você está criando. Para encontrar o ARN, faça login no console com a conta de ciência de dados. No console IAM, escolha Setores e procurar AmazonSageMakerServiceCatalogProductsUseRole. Escolha esta função e copie o ARN (arn:aws:iam::<<data_science_acccount_id>>:role/service-role/AmazonSageMakerServiceCatalogProductsUseRole).
  2. Depois de criar essa função na conta de teste, repita esse processo para a conta de produção.

Na conta de ciência de dados, agora você configura a política do Serviço de armazenamento simples da Amazon (Amazon S3) intervalo usado para armazenar o modelo treinado. Para esta postagem, usamos o balde SageMaker padrão da região atual. Possui o seguinte formato de nome: sagemaker-<<region>>-<<aws_account_id>>.

  1. No console do Amazon S3, pesquise este bucket, fornecendo a região que você está usando e o ID da conta de ciência de dados.

Se você não encontrar, crie um novo intervalo seguindo este formato de nome.

  1. No Permissões guia, adicione a seguinte política:
    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::<<staging_account_id>>:root", "arn:aws:iam::<<production_account_id>>:root" ] }, "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::sagemaker-<<region>>-<<aws_account_id>>", "arn:aws:s3:::sagemaker-<<region>>-<<aws_account_id>>/*" ] } ]
    }

  1. Salve suas configurações.

As contas de destino agora têm permissão para ler o modelo treinado durante a implantação.

A próxima etapa é adicionar novas permissões às funções AmazonSageMakerServiceCatalogProductsUseRole e AmazonSageMakerServiceCatalogProductsLaunchRole.

  1. Na conta de ciência de dados, no console IAM, escolha Setores.
  2. Encontre o AmazonSageMakerServiceCatalogProductsUseRole papel e escolher.
  3. Adicione uma nova política e insira o seguinte Código JSON.
  4. Salve suas alterações.
  5. Agora, encontre o AmazonSageMakerServiceCatalogProductsLaunchRole função, escolha-a e adicione uma nova política com o seguinte conteúdo:
    { "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::aws-ml-blog/artifacts/sagemaker-pipeline-blog-resources/*" } ]
    }

  1. Salve suas alterações.

É isso aí! Seu ambiente está quase pronto. Você só precisa de mais uma etapa e pode começar a treinar e implantar modelos em diferentes contas.

Importando o modelo de projeto SageMaker Studio personalizado

Nesta etapa, você importa seu modelo de projeto personalizado.

  1. Faça login no console com a conta de ciência de dados.
  2. No console do AWS Service Catalog, em Áreas de Suporte​, escolha carteiras.
  3. Escolha Crie um novo portfólio.
  4. Nomeie o portfólio SageMaker Organization Templates.
  5. Faça o download do seguinte modelo para o seu computador.
  6. Escolha o novo portfólio.
  7. Escolha Faça upload de um novo produto.
  8. Escolha Nome do produtoentrar Multi Account Deployment.
  9. Escolha Descrição, entrar Multi account deployment project.
  10. Escolha Proprietário, digite seu nome.
  11. Debaixo Detalhes da versão, Por Forma, escolha Use um arquivo de modelo.
  12. Escolha Faça upload de um modelo.
  13. Faça upload do modelo que você baixou.
  14. Escolha Título da versão, escolha 1.0.

Os parâmetros restantes são opcionais.

  1. Escolha Avaliações.
  2. Revise suas configurações e escolha Criar produto.
  3. Escolha revisar para listar o novo produto.
  4. Escolha o produto que você acabou de criar.
  5. No Tags guia, adicione a seguinte tag ao produto:
    1. Chave - sagemaker:studio-visibility
    2. Valor - True

De volta aos detalhes do portfólio, você vê algo semelhante à imagem a seguir (com IDs diferentes).

De volta aos detalhes do portfólio, você vê algo semelhante à imagem a seguir (com IDs diferentes).

  1. No restrições guia, escolha Criar restrição.
  2. Escolha Produto, escolha Implementação de várias contas (o produto que você acabou de criar).
  3. Escolha Tipo de restrição, escolha Apresentação livro.
  4. Debaixo Restrição de lançamento, Por Forma, escolha Selecione a função IAM.
  5. Escolha AmazonSageMakerServiceCatalogProductsLaunchRole.
  6. Escolha Crie.
  7. No Grupos, funções e usuários guia, escolha Adicionar grupos, funções, usuários.
  8. No Setores guia, selecione a função que você usou ao configurar seu domínio SageMaker Studio.
  9. Escolha Adicionar acesso.

Se você não se lembra qual função selecionou, em sua conta de ciência de dados, vá para o console do SageMaker e escolha Estúdio Amazon SageMaker. No estúdio Resumo seção, localize o atributo Função de execução. Pesquise o nome desta função na etapa anterior.

Você Terminou! Agora é hora de criar um projeto usando este modelo.

Criando seu projeto

Nas seções anteriores, você preparou o ambiente de várias contas. A próxima etapa é criar um projeto usando seu novo modelo.

  1. Faça login no console com a conta de ciência de dados.
  2. No console do SageMaker, abra o SageMaker Studio com o seu usuário.
  3. Escolha o Componentes e registros
  4. No menu suspenso, escolha Projectos.
  5. Escolha Criar projeto.

Escolha Criar projeto.

No Criar projeto página, Modelos SageMaker é escolhido por padrão. Esta opção lista os modelos integrados. No entanto, você deseja usar o modelo que preparou para a implantação de várias contas.

  1. Escolha Modelos de organização.
  2. Escolha Implementação de várias contas.
  3. Escolha Selecione o modelo do projeto.

Se você não conseguir ver o modelo, certifique-se de ter concluído todas as etapas corretamente na seção anterior.

Se você não conseguir ver o modelo, certifique-se de ter concluído todas as etapas corretamente na seção anterior.

  1. No Detalhes do Projeto seção, para Nome, insira iris-multi-01.

O nome do projeto deve ter 15 caracteres ou menos.

  1. No Parâmetros do modelo de projeto, use os nomes das funções que você criou em cada conta de destino (teste e produção) e forneça as seguintes propriedades:
    1. SageMakerExecutionRoleStagingName
    2. SageMakerExecutionRoleProdName
  2. Recupere os IDs de UOs que você criou anteriormente para as UOs de preparação e produção e forneça as seguintes propriedades:
    1. OrganizationalUnitStagingId
    2. OrganizationalUnitProdId
  3. Escolha Criar projeto.

Escolha Criar projeto.

O provisionamento de todos os recursos leva alguns minutos, após o qual o projeto é listado no Projectos seção. Ao escolher o projeto, uma guia é aberta com os metadados do projeto. o Grupos modelo A guia exibe um grupo de modelos com o mesmo nome do seu projeto. Ele também foi criado durante o provisionamento do projeto.

O provisionamento de todos os recursos leva alguns minutos, após o qual o projeto é listado na seção Projetos.

O ambiente agora está pronto para o cientista de dados começar a treinar o modelo.

Treinando um modelo

Agora que seu projeto está pronto, é hora de treinar um modelo.

  1. Faça o download do caderno de exemplo para usar neste passo a passo.
  2. Escolha o Pasta ícone para alterar a área de trabalho para gerenciamento de arquivos.
  3. Escolha o Criar pasta
  4. Digite um nome para a pasta.
  5. Escolha o nome da pasta.
  6. Escolha o Enviar Arquivo
  7. Escolha o bloco de notas Jupyter que você baixou e carregue-o no novo diretório.
  8. Escolha o bloco de notas para abrir uma nova guia.

Escolha o bloco de notas para abrir uma nova guia.

Você é solicitado a escolher um kernel.

  1. Escolha Python3 (Ciência de Dados).
  2. Escolha Selecionar.

Escolha Selecionar.

  1. Na segunda célula do notebook, substitua o project_name variável com o nome que você deu ao seu projeto (para esta postagem, iris-multi-01).

Agora você pode executar o bloco de notas Jupyter. Este notebook cria um pipeline muito simples com apenas duas etapas: treinar e registrar o modelo. Usa o conjunto de dados da íris e os votos de Contêiner integrado XGBoost como o algoritmo.

  1. Execute todo o notebook.

O processo leva algum tempo depois que você executa a célula que contém o seguinte código:

start_response = pipeline.start(parameters={ "TrainingInstanceCount": "1"
})

Isso inicia o job de treinamento, que leva aproximadamente 3 minutos para ser concluído. Após a conclusão do treinamento, a próxima célula do notebook Jupyter obtém a versão mais recente do modelo no registro de modelos e a marca como Approved. Como alternativa, você pode aprovar um modelo na IU do SageMaker Studio. No Grupos modelo guia, escolha o grupo de modelos e a versão desejada. Escolher Atualizar o status e Aprovar antes de salvar.

Escolha Atualizar status e aprovar antes de salvar

Este é o fim do trabalho do cientista de dados, mas o início da execução do pipeline de CI / CD.

Amazon Event Bridge monitora o registro do modelo. O ouvinte inicia um novo trabalho de implantação com o provisionado AWS Code Pipeline fluxo de trabalho (criado com o lançamento do projeto SageMaker Studio).

  1. No console CodePipeline, escolha o pipeline começando com o prefixo sagemaker-, seguido pelo nome do seu projeto.

No console CodePipeline, escolha o pipeline começando com o prefixo sagemaker-, seguido pelo nome do seu projeto.

Logo depois de aprovar seu modelo, o pipeline de implantação começa a funcionar. Espere o pipeline atingir o estado DeployStaging. Esse estágio pode levar aproximadamente 10 minutos para ser concluído. Depois de implantar o primeiro endpoint na conta de teste, o pipeline é testado e, em seguida, passa para a próxima etapa, ApproveDeployment. Nesta etapa, ele aguarda a aprovação manual.

  1. Escolha Avaliações.
  2. Insira um motivo de aprovação na caixa de texto.
  3. Escolha Aprovar.

O modelo agora está implantado na conta de produção.

Você também pode monitorar o pipeline no console do AWS CloudFormation para ver as pilhas e conjuntos de pilhas que o pipeline cria para implantar endpoints nas contas de destino. Para ver os pontos de extremidade implantados para cada conta, entre no console do SageMaker como conta de teste ou conta de produção e escolha Pontos finais no painel de navegação.

Limpando

Para limpar todos os recursos que você provisionou neste exemplo, conclua as seguintes etapas:

  1. Faça login no console com sua conta principal.
  2. No console AWS CloudFormation, clique em StackSets e delete os seguintes itens (endpoints):
    1. Incitar - sagemaker-<<sagemaker-project-name>>-<<project-id>>-deploy-prod
    2. Staging - sagemaker-<<sagemaker-project-name>>-<<project-id>>-deploy-staging
  3. Em seu laptop ou terminal de estação de trabalho, use o Interface de linha de comando da AWS (AWS CLI) e insira o seguinte código para excluir seu projeto:
    aws sagemaker delete-project --project-name iris-multi-01

Certifique-se de usar o versão mais recente do AWS CLI.

Construindo e personalizando um modelo para seu próprio projeto SageMaker

Projetos SageMaker e Modelos de projeto SageMaker MLOps são recursos poderosos que você pode usar para criar e configurar automaticamente toda a infraestrutura necessária para treinar, otimizar, avaliar e implantar modelos de ML. Um projeto SageMaker é um produto provisionado do AWS Service Catalog que permite que você crie facilmente uma solução de ML ponta a ponta. Para obter mais informações, consulte o Guia do administrador do AWS Service Catalog.

Um produto é um modelo CloudFormation gerenciado pelo AWS Service Catalog. Para obter mais informações sobre modelos e seus requisitos, consulte Formatos de modelo AWS CloudFormation.

Os engenheiros de ML podem projetar vários ambientes e expressar todos os detalhes desta configuração como um modelo CloudFormation, usando o conceito de infraestrutura como código (IaC). Você também pode integrar esses diferentes ambientes e tarefas usando um pipeline de CI / CD. Os projetos SageMaker fornecem uma maneira fácil, segura e direta de envolver a complexidade da infraestrutura no formato de um projeto simples, que pode ser iniciado muitas vezes por outros engenheiros de ML e cientistas de dados.

O diagrama a seguir ilustra as principais etapas que você precisa concluir para criar e publicar seu modelo de projeto SageMaker personalizado.

O diagrama a seguir ilustra as principais etapas que você precisa concluir para criar e publicar seu modelo de projeto SageMaker personalizado.

Descrevemos essas etapas com mais detalhes nas seções Importando o modelo de projeto SageMaker Studio personalizado e Criando seu projeto.

Como engenheiro de ML, você pode projetar e criar um novo modelo CloudFormation para o projeto, prepare um portfólio do AWS Service Catalog e adicione um novo produto a ele.

Tanto cientistas de dados quanto engenheiros de ML podem usar o SageMaker Studio para criar um novo projeto com o modelo personalizado. SageMaker invoca o AWS Service Catalog e começa a provisionar a infraestrutura descrita no modelo CloudFormation.

Como cientista de dados, agora você pode começar a treinar o modelo. Depois de registrá-lo no registro do modelo, o pipeline CI / CD é executado automaticamente e implanta o modelo nas contas de destino.

Se você olhar para o modelo CloudFormation desta postagem em um editor de texto, poderá ver que ele implementa a arquitetura que descrevemos nesta postagem.

O código a seguir é um snippet do modelo:

Description: Toolchain template which provides the resources needed to represent infrastructure as code. This template specifically creates a CI/CD pipeline to deploy a given inference image and pretrained Model to two stages in CD -- staging and production.
Parameters: SageMakerProjectName: Type: String SageMakerProjectId: Type: String
…
<<other parameters>>
…
Resources: MlOpsArtifactsBucket: Type: AWS::S3::Bucket DeletionPolicy: Retain Properties: BucketName: …
… ModelDeployCodeCommitRepository: Type: AWS::CodeCommit::Repository Properties: RepositoryName: … RepositoryDescription: … Code: S3: Bucket: … Key: …
… ModelDeployBuildProject: Type: AWS::CodeBuild::Project
… ModelDeployPipeline: Type: AWS::CodePipeline::Pipeline
…

O modelo tem duas seções principais: Parameters (parâmetros de entrada do modelo) e Resources. Os modelos de projeto SageMaker exigem que você adicione dois parâmetros de entrada ao seu modelo: SageMakerProjectName e SageMakerProjectId. Esses parâmetros são usados ​​internamente pelo SageMaker Studio. Você pode adicionar outros parâmetros, se necessário.

Na seção Recursos do snippet, você pode ver que ele cria o seguinte:

  • Um novo bucket S3 usado pelo pipeline CI / CD para armazenar os artefatos intermediários passados ​​de um estágio para outro.
  • An AWS CodeCommit repositório para armazenar os artefatos usados ​​durante os estágios de implementação e teste.
  • An AWS CodeBuild projeto para obter os artefatos e validar e configurá-los para o projeto. No modelo de várias contas, este projeto também cria um novo registro de modelo, usado pelo pipeline CI / CD para implantar novos modelos.
  • Um fluxo de trabalho CodePipeline que orquestra todas as etapas dos pipelines CI / CD.

Cada vez que você registra um novo modelo no registro de modelo ou envia um novo artefato para o repositório CodeCommit, este fluxo de trabalho CodePipeline é iniciado. Esses eventos são capturados por um Regra EventBridge, provisionado pelo mesmo modelo. O pipeline de CI / CD contém os seguintes estágios:

  • fonte - Lê os artefatos do repositório CodeCommit e compartilha com as outras etapas.
  • Construa - Executa o projeto CodeBuild para fazer o seguinte:
    • Verifique se um registro de modelo já foi criado e crie um, se necessário.
    • Prepare um novo modelo CloudFormation que é usado pelos próximos dois estágios de implantação.
  • ImplantarStaging - Contém os seguintes componentes:
    • ImplantarRecursosStaging - Obtém o modelo CloudFormation preparado no Build passo e implanta uma nova pilha. Esta pilha implanta um novo ponto de extremidade SageMaker na conta de destino.
    • TesteStaging - Invoca um segundo projeto CodeBuild que executa um script Python personalizado que testa o endpoint implementado.
    • Aprovar Implantação - Uma etapa de aprovação manual. Se aprovado, ele passa para o próximo estágio para implantar um endpoint na produção ou termina o fluxo de trabalho se não for aprovado.
  • ImplantarProd - Igual a DeployStaging, ele usa o mesmo modelo CloudFormation, mas com parâmetros de entrada diferentes. Ele implanta um novo ponto de extremidade SageMaker na conta de produção. 

Você pode iniciar um novo processo de treinamento e registrar seu modelo no registro de modelos associado ao projeto SageMaker. Use o caderno Jupyter fornecido nesta postagem e personalize o seu Pipeline de ML para preparar seu conjunto de dados e treinar, otimizar e testar seus modelos antes de implantá-los. Para obter mais informações sobre esses recursos, consulte Automatize MLOps com projetos SageMaker. Para mais exemplos de Pipelines, consulte o GitHub repo.

Conclusões e próximas etapas

Nesta postagem, você viu como preparar seu próprio ambiente para treinar e implantar modelos de ML em várias contas da AWS usando SageMaker Pipelines.

Com os projetos SageMaker, a governança e a segurança de seu ambiente podem ser significativamente melhoradas se você começar a gerenciar seus projetos de ML como uma biblioteca de modelos de projeto SageMaker.

Como uma próxima etapa, tente modificar o modelo de projeto SageMaker e personalizá-lo para atender às necessidades de sua organização. Adicione quantas etapas desejar e tenha em mente que você pode capturar os eventos de CI / CD e notificar os usuários ou chamar outros serviços para construir soluções abrangentes.


Sobre o autor

Samir Araújo é arquiteto de soluções de AI / ML na AWS. Ele ajuda os clientes a criar soluções de AI / ML a resolver seus desafios de negócios usando a plataforma AWS. Ele tem trabalhado em vários projetos de AI / ML relacionados à visão computacional, processamento de linguagem natural, previsão, ML na borda e muito mais. Ele gosta de brincar com projetos de hardware e automação em seu tempo livre e tem um interesse particular por robótica.

Fonte: https://aws.amazon.com/blogs/machine-learning/multi-account-model-deployment-with-amazon-sagemaker-pipelines/

local_img

Inteligência mais recente

local_img

Fale Conosco

Olá! Como posso ajudá-lo?