Skip to content
Crie uma força de trabalho privada no Amazon SageMaker Ground Truth com o AWS CDK
Source: aws.amazon.com

Crie uma força de trabalho privada no Amazon SageMaker Ground Truth com o AWS CDK

Sources: https://aws.amazon.com/blogs/machine-learning/create-a-private-workforce-on-amazon-sagemaker-ground-truth-with-the-aws-cdk, https://aws.amazon.com/blogs/machine-learning/create-a-private-workforce-on-amazon-sagemaker-ground-truth-with-the-aws-cdk/, AWS ML Blog

TL;DR

  • Fornece uma solução completa, baseada em código, para criar forças de trabalho privadas no SageMaker Ground Truth associadas a um pool dedicado do Amazon Cognito, usando o AWS CDK.
  • Aborda a dependência mútua entre recursos do Cognito e a força de trabalho privada usando recursos personalizados do CloudFormation para orquestrar a criação e configuração.
  • Implantações são gerenciadas como uma única pilha; a limpeza pode ser realizada via console do CloudFormation ou executando cdk destroy com as mesmas opções usadas na implantação.
  • O fluxo de autenticação para os trabalhadores inclui convite por e-mail, registro inicial, autenticação e acesso ao portal de rotulagem.
  • Enfatiza boas práticas para Cognito e CDK, e aponta para personalizações adicionais via AWS Professional Services e guias oficiais de rotulagem de dados.

Contexto e antecedentes

Forças de trabalho privadas para SageMaker Ground Truth e Amazon Augmented AI (A2I) permitem que as organizações construam conjuntos de dados proprietários com alto nível de segurança e privacidade. O Console de Gerenciamento da AWS oferece um caminho rápido para criar uma força de trabalho privada, mas muitas organizações exigem abordagens IaC para automação, consistência e redução de erros humanos. Este post apresenta uma solução completa que cria, de forma programática, forças de trabalho privadas no SageMaker AI usando o AWS CDK, incluindo um pool do Cognito totalmente configurado. O objetivo é resolver o principal desafio técnico de orquestrar recursos entre Cognito e a força de trabalho privada, para proporcionar uma experiência de login consistente para os trabalhadores. A solução utiliza uma única pilha que provê diversos recursos e serviços, com alguns necessários apenas para a configuração inicial e outros utilizados pelos trabalhadores ao fazerem login no portal de rotulagem. Um ponto central é a necessidade de sequenciamento: o URL de callback do app client do Cognito fica disponível apenas após a criação da força de trabalho, enquanto a criação da força de trabalho requer que o app client já exista. Para contornar isso, o post descreve o uso de recursos personalizados do CloudFormation como parte da orquestração. Outro aspecto destacado é a necessidade de manter o domínio do pool de usuários do Cognito estável entre implantações, pois mudanças no domínio podem gerar erros. Ao combinar constructs do CDK com recursos personalizados do CloudFormation, a solução garante a interoperabilidade entre os componentes e uma implantação reprodutível para suportar tarefas de rotulagem de ML com segurança.

O que há de novo

Este post apresenta um padrão prático de ponta a ponta para criar programaticamente uma força de trabalho privada no SageMaker Ground Truth junto com um pool dedicado do Cognito, tudo orquestrado via AWS CDK. A inovação-chave é a integração entre o CDK e recursos personalizados do CloudFormation para gerenciar dependências entre o pool do Cognito e a força de trabalho privada. A solução oferece:

  • Uma arquitetura baseada em CDK que cria e configura a força de trabalho privada do SageMaker com um pool do Cognito e o recurso app client dependente.
  • Um mecanismo de orquestração que resolve a dependência mútua entre o pool e a força de trabalho, assegurando que os parâmetros necessários estejam disponíveis na hora certa.
  • Uma pilha única que inclui recursos necessários para a configuração inicial e para o acesso contínuo dos trabalhadores ao portal de rotulagem.
  • Diretrizes de implantação e limpeza alinhadas às práticas padrão de IaC, incluindo o comando cdk destroy como alternativa à exclusão via console.
  • Orientação para personalizar a infraestrutura base de acordo com padrões organizacionais e boas práticas de Cognito e CDK. O artigo também destaca guias oficiais de rotulagem de dados e de pools do Cognito como referências para ampliar a solução. O objetivo é fornecer uma base prática para automação de infraestrutura de rotulagem privada com segurança.

Por que isso importa (impacto para desenvolvedores/empresas)

  • Automação e consistência: usar CDK e recursos personalizados do CloudFormation permite implantações automáticas, repetíveis e auditáveis da força de trabalho privada com um pool do Cognito dedicado, reduzindo o risco de erros manuais.
  • Segurança e privacidade: a solução cria um pool de usuários específico para autenticação de trabalhadores, alinhando-se a requisitos de segurança para dados proprietários.
  • Fluxo de rotulagem de ponta a ponta: o fluxo de autenticação cobre convite por e-mail, registro, autenticação e login no portal de rotulagem.
  • Gerenciamento em escala: uma pilha única simplifica a gestão do ciclo de vida, permitindo provisionamento e remoção eficientes em diferentes ambientes, mantendo a consistência.
  • Orientação prática: o post aponta para boas práticas de Cognito e CDK e incentiva personalizações adicionais por meio de AWS Professional Services e guias oficiais de rotulagem.

Detalhes técnicos ou Implementação

A base da solução é a combinação de constructs do AWS CDK com recursos personalizados do CloudFormation que integram o pool do Cognito com a força de trabalho privada do SageMaker. O objetivo é resolver a dependência mútua: o app client depende de parâmetros gerados durante a criação da força de trabalho, e a força de trabalho requer a presença prévia do app client. A orquestração com recursos personalizados coordena a criação e a configuração na ordem correta. Destaques arquitetônicos:

  • Recursos do Cognito: pool de usuários dedicado e um app client correspondente, configurados para suportar o fluxo de autenticação da força de trabalho.
  • Força de trabalho privada do SageMaker: a força de trabalho privada que funciona em conjunto com o Cognito para tarefas de rotulagem seguras.
  • Recursos personalizados do CloudFormation: fornecem a lógica de orquestração para coordenar dependências entre recursos.
  • Pilha única de orquestração: define os recursos necessários para a configuração inicial e para o uso contínuo pelos trabalhadores.
  • Construções do CDK: definem, provisionam e gerenciam recursos como código durante a implantação e as atualizações.
  • Controles de acesso e permissões: garantem a segurança e o fluxo de trabalho adequado. O fluxo de autenticação envolve convite por e-mail, registro inicial, autenticação e acesso ao portal de rotulagem, onde o trabalhador pode visualizar trabalhos de rotulagem. O processo de limpeza de recursos segue práticas padrão de IaC: a remoção da pilha do CloudFormation ou o uso de cdk destroy. A solução é projetada para ser personalizável, permitindo que organizações adaptem a infraestrutura base às suas normas de segurança e políticas de UX. A referência a guias adicionais e a disponibilidade de um exemplo CDK para customização facilitam a adaptação a diferentes ambientes.

Componentes da pilha em destaque

| Componente | Papel | Quando é usado |---|---|---| | Força de trabalho privada do SageMaker | Habilita tarefas de rotulagem privadas no Ground Truth | Após a implantação, uso principal |Pool de usuários do Cognito | Proporciona identidade dedicada para os trabalhadores | Sempre ativo após a configuração inicial |App client do Cognito | Habilita o fluxo de autenticação com URL de callback | Criado cedo na configuração, depende da força de trabalho |Recursos personalizados do CloudFormation | Orquestram dependências entre recursos | Durante a configuração inicial |Constructos do CDK | Definem, provisionam e gerenciam recursos como código | Durante implantação e atualizações |Recursos relacionados (IAM, permissões, etc) | Impõem controles de acesso | Durante todo o ciclo de vida | O diagrama citado no post descreve como esses componentes se integram em uma pilha única, com os trabalhadores ingressando na força de trabalho privada e acessando o portal de rotulagem após a autenticação. A seguir um resumo textual do fluxo de autenticação.

Fluxo de autenticação e acesso

  • Um convite por e-mail é enviado ao trabalhador.
  • O trabalhador se registra ao clicar no link, cria uma senha e configura o aplicativo de autenticação, se necessário.
  • O trabalhador autentica e obtém acesso ao portal de rotulagem.
  • O trabalhador pode ver os trabalhos de rotulagem e contribuir para as tarefas.

Notas de implantação

  • Pré-requisitos: é necessário ter credenciais AWS com permissões para implantar os recursos.
  • Se você se convidou a si mesmo via CDK CLI, siga o e-mail para registrar e acessar o portal; caso contrário, convide outras pessoas conforme descrito no post.
  • A limpeza deve ocorrer apagando a pilha Workforce via CloudFormation ou executando cd destroy com os mesmos argumentos usados na implantação.
  • A solução serve de base para infraestrutura de rotulagem privada e pode ser estendida para atender padrões organizacionais e políticas de segurança.

Principais aprendizados

  • IaC facilita implantações automatizadas, repetíveis e auditáveis de forças de trabalho privadas com um pool Cognito dedicado.
  • CDK combinado com recursos personalizados do CloudFormation resolve dependências entre Cognito e a força de trabalho.
  • Uma pilha única facilita o ciclo de vida e mantém a configuração consistente entre ambientes.
  • O fluxo de ingresso oferece uma experiência completa para trabalhadores de rotulagem.
  • O post incentiva boas práticas e serviços profissionais para adequar a arquitetura a necessidades empresariais.

FAQ

  • Qual problema a solução resolve?

    Fornece uma forma programática de criar forças de trabalho privadas no SageMaker Ground Truth junto com um pool Cognito dedicado, gerenciando dependências entre recursos.

  • Como as dependências entre Cognito e a força de trabalho são resolvidas?

    Utiliza recursos personalizados do CloudFormation para coordenar a criação e a configuração na ordem correta.

  • Como limpar os recursos implantados?

    Pode excluir a pilha Workforce pelo console do CloudFormation ou rodar cd destroy no CDK CLI usando os mesmos argumentos de implantação.

  • Como funciona o fluxo de autenticação dos trabalhadores?

    Inclui convite por e-mail, registro, autenticação e login no portal de rotulagem.

  • O domínio do Cognito pode mudar após a implantação?

    Não, o domínio do pool de usuários deve permanecer estável entre as implantações.

Referências

More news

aws.amazon.com

Use AWS Deep Learning Containers com o SageMaker AI gerenciado MLflow

Explore como os AWS Deep Learning Containers (DLCs) se integram ao SageMaker AI gerenciado pelo MLflow para equilibrar controle de infraestrutura e governança robusta de ML. Um fluxo de trabalho de predição de idade de ostra com TensorFlow demonstra rastreamento de ponta a ponta, governança de model