Visão geral

A solução de orquestrador de workloads MLOps ajuda a simplificar e aplicar as práticas recomendadas de arquitetura para a produção de modelos de machine learning (ML). Essa solução é um framework extensível que fornece uma interface padrão para gerenciar pipelines de ML para serviços de ML da AWS e de terceiros. O modelo da solução permite que os clientes:
- Treinem modelos
- Façam upload de seus modelos treinados (também conhecido como «traga seu próprio modelo», ou BYOM na siga em inglês)
- Configurem a orquestração do pipeline
- Monitorem as operações do pipeline
Essa solução aumenta a agilidade e a eficiência da sua equipe, permitindo que ela repita processos bem-sucedidos em grande escala.
Benefícios

Use o painel do Amazon SageMaker Model para visualizar seus recursos do Amazon SageMaker criados pela solução (como modelos, endpoints, cartões de modelo e trabalhos de transformação em lote).
Detalhes técnicos

Para atender a diversos casos de uso e necessidades de negócios, essa solução oferece quatro modelos do AWS CloudFormation:
- Use o modelo de conta única para implantar todos os pipelines da solução na mesma conta da AWS. Essa opção é adequada para experimentação, desenvolvimento e/ou workloads em produção em pequena escala.
- Use o modelo de multicontas para fornecer vários ambientes (por exemplo, desenvolvimento, preparação e produção) por meio de diferentes contas da AWS, o que melhora a governança e aumenta a segurança e o controle da implantação do pipeline de ML, proporciona experimentação segura e inovação mais rápida, além de manter os dados de produção e as cargas de trabalho seguros e disponíveis para garantir a continuidade dos negócios.
-
Opção 1 - Implantação de conta única
-
Opção 2 - Implantação de multicontas
-
Opção 1 - Implantação de conta única
-
Etapa 1
O orquestrador (proprietário da solução ou engenheiro DevOps) lança a solução na conta da AWS e seleciona as opções desejadas (por exemplo, usar o Amazon SageMaker Registry ou fornecer um bucket existente do Amazon S3).Etapa 2
O orquestrador carrega os ativos necessários para o pipeline de destino (por exemplo, artefato de modelo, dados de treinamento ou arquivo zip com algoritmo personalizado) no bucket de ativos do Amazon S3. Se o registro de modelo do Amazon SageMaker for usado, o orquestrador (ou um pipeline automatizado) deverá registrar o modelo.Etapa 3a
A solução provisiona uma instância do AWS CodePipeline de conta única enviando uma chamada de API para o Amazon API Gateway ou salvando o arquivo mlops-config.json no repositório Git.
Etapa 3b
Dependendo do tipo de pipeline, a função do AWS Lambda do orquestrador empacota o modelo de destino do AWS CloudFormation e seus parâmetros ou configurações usando o corpo da chamada de API ou do arquivo mlops-config.json para utilizá-lo como a etapa de origem para a instância do AWS CodePipeline.Etapa 4
A etapa DeployPipeline adota o modelo empacotado do CloudFormation e seus parâmetros ou configurações e implanta o pipeline de destino na mesma conta.Etapa 5
Após o pipeline de destino ser fornecido, os usuários podem acessar as suas funcionalidades. Uma notificação do Amazon Simple Notification Service (Amazon SNS) é enviada para o e-mail fornecido nos parâmetros de lançamento da solução. -
Opção 2 - Implantação de multicontas
-
Etapa 1
O orquestrador (proprietário da solução ou engenheiro de DevOps com acesso de administrador à conta do orquestrador) apresenta as informações do AWS Organizations (por exemplo, IDs da unidade organizacional de desenvolvimento, preparação e produção e números de contas). Ele também especifica as opções desejadas (por exemplo, usar o registro de modelo do Amazon SageMaker ou fornecer um bucket existente do S3) e depois lança a solução em sua conta da AWS.Etapa 2
O orquestrador carrega os ativos necessários para o pipeline de destino (por exemplo, artefato de modelo, dados de treinamento ou arquivo zip com algoritmo personalizado) no bucket de ativos do Amazon S3 na conta do orquestrador da AWS. Se o registro de modelo do Amazon SageMaker for usado, o orquestrador (ou um pipeline automatizado) deverá registrar o modelo.Etapa 3a
A solução provisiona uma instância do AWS CodePipeline de várias contas enviando uma chamada de API para o Amazon API Gateway ou salvando o arquivo mlops-config.json no repositório Git.
Etapa 3b
Dependendo do tipo de pipeline, a função do AWS Lambda do orquestrador empacota o modelo de destino do AWS CloudFormation e seus parâmetros ou configurações para cada estágio usando o corpo da chamada de API ou do arquivo mlops-config.json para utilizá-lo como a etapa de origem para a instância do AWS CodePipeline.Etapa 4
A etapa DeployDev adota o modelo empacotado do CloudFormation e seus parâmetros ou configurações e implanta o pipeline de destino na conta de desenvolvimento.Etapa 5
Após o pipeline de destino ser fornecido na conta de desenvolvimento, o desenvolvedor pode iterar no pipeline.Etapa 6
Ao concluir o desenvolvimento, o orquestrador (ou outra conta autorizada) aprova manualmente a ação DeployStaging para prosseguir para a etapa DeployStaging.Etapa 7
A etapa DeployStaging implanta o pipeline de destino na conta de preparação, usando a configuração de preparação.Etapa 8
Os testadores realizam diferente testes no pipeline implementado.Etapa 9
Após o pipeline ser aprovado nos testes de qualidade, o orquestrador pode aprovar a ação DeployProd.Etapa 10
A etapa DeployProd implanta o pipeline de destino (com as configurações de produção) na conta de produção.Etapa 11
Finalmente, o pipeline de destino está ativo na produção. Uma notificação do Amazon Simple Notification Service (Amazon SNS) é enviada para o e-mail fornecido nos parâmetros de lançamento da solução.
Conteúdo relacionado

Em colaboração com as equipes de arquitetos de soluções de parceiros da AWS e da biblioteca de soluções da AWS, a Cognizant criou sua solução de orquestrador do ciclo de vida de modelos MLOps com base no orquestrador de workload de MLOps.