O que é um projeto de SageMaker IA? - SageMaker IA 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á.

O que é um projeto de SageMaker IA?

SageMaker Os projetos ajudam as organizações a configurar e padronizar ambientes de desenvolvedores para cientistas de dados e CI/CD sistemas para MLOps engenheiros. Os projetos também ajudam as organizações a configurar o gerenciamento de dependências, o gerenciamento de repositórios de códigos, a reprodutibilidade da construção e o compartilhamento de artefatos.

Você pode provisionar SageMaker projetos usando modelos personalizados que são armazenados em buckets do Amazon S3 ou usando modelos do AWS Service Catalog ou AI. SageMaker Para obter informações sobre o AWS Service Catalog, consulte O que é o AWS Service Catalog. Com o SageMaker Projects, MLOps engenheiros e administradores da organização podem definir seus próprios modelos ou usar modelos fornecidos pela SageMaker IA. Os modelos SageMaker fornecidos pela IA inicializam o fluxo de trabalho de ML com controle de versão de origem, pipelines de ML automatizados e um conjunto de códigos para começar a iterar rapidamente os casos de uso de ML.

Quando você deve usar um projeto de SageMaker IA?

Importante

A partir de 9 de setembro de 2024, os modelos de projeto que usam o AWS CodeCommit repositório não são mais suportados. Para novos projetos, selecione entre os modelos de projeto disponíveis que usam repositórios Git de terceiros.

Embora os cadernos sejam úteis para a criação e experimentação de modelos, uma equipe de cientistas de dados e engenheiros de ML que compartilham código precisa de uma maneira mais escalável de manter a consistência do código e um controle de versão rigoroso.

Cada organização tem seu próprio conjunto de padrões e práticas que fornecem segurança e governança para seu AWS ambiente. SageMaker A IA fornece um conjunto de modelos primários para organizações que desejam começar rapidamente com fluxos de trabalho de ML e CI/CD. Os modelos incluem projetos que usam serviços AWS nativos para CI/CD, comoAWS CodeBuild, e. AWS CodePipeline AWS CodeCommit Os modelos também oferecem a opção de criar projetos que usam ferramentas de terceiros, como Jenkins e. GitHub Para obter uma lista dos modelos de projeto que a SageMaker IA fornece, consulteUse modelos de projeto SageMaker fornecidos pela IA.

As organizações geralmente precisam de um controle rígido sobre os MLOps recursos que provisionam e gerenciam. Essa responsabilidade pressupõe determinadas tarefas, incluindo a configuração de funções e políticas do IAM, a aplicação de tags de recursos, a aplicação da criptografia e a dissociação de recursos em várias contas. SageMaker Os projetos podem dar suporte a todas essas tarefas por meio de ofertas de modelos personalizados, nas quais as organizações usam CloudFormation modelos para definir os recursos necessários para um fluxo de trabalho de ML. Os cientistas de dados podem escolher um modelo para bootstrap e pré-configurar seu fluxo de trabalho de ML.

Para começar, recomendamos que você crie e armazene modelos personalizados dentro de um bucket do Amazon S3. Isso permite que você crie um bucket em qualquer região compatível com sua organização. O S3 oferece suporte ao controle de versão, para que você possa manter várias versões dos seus modelos e revertê-los, se necessário. Para obter informações sobre como criar um projeto a partir do armazenamento de modelos em um bucket do Amazon S3, consulte. Usando um modelo de um bucket do Amazon S3

Como alternativa, você também pode criar modelos personalizados como produtos do Service Catalog e provisioná-los na interface do usuário do Studio ou do Studio Classic em Organization Templates. O Service Catalog é um serviço que ajuda as organizações a criar e gerenciar catálogos de produtos aprovados para uso emAWS. Para obter mais informações sobre a criação de modelos personalizados, consulte Criar modelos de projeto de SageMaker IA personalizados — Melhores práticas.

Embora você possa usar qualquer uma das opções, recomendamos que você use buckets do S3 no Service Catalog, para que você possa criar um bucket em regiões suportadas onde a SageMaker IA está disponível sem precisar gerenciar as complexidades do Service Catalog.

SageMaker Os projetos podem ajudá-lo a gerenciar seus repositórios Git para que você possa colaborar com mais eficiência entre equipes, garantir a consistência do código e oferecer suporte a CI/CD. SageMaker Os projetos podem ajudá-lo com as seguintes tarefas:

  • Organizar todas as entidades do ciclo de vida do ML em um único projeto.

  • Estabelecer uma abordagem com um único clique para configurar a infraestrutura de ML padrão para treinamento e implantação de modelos que incorpore as melhores práticas.

  • Criar e compartilhar modelos para a infraestrutura de ML para atender a vários casos de uso.

  • Aproveite os modelos pré-criados SageMaker fornecidos pela IA para começar a se concentrar rapidamente na criação de modelos ou criar modelos personalizados com recursos e diretrizes específicos da organização.

  • Integrar-se às ferramentas de sua escolha estendendo os modelos de projeto. Para ver um exemplo, consulte Criar um projeto de SageMaker IA para integrar com GitLab GitLab pipelines.

  • Organizar todas as entidades do ciclo de vida do ML em um único projeto.

O que há em um projeto de SageMaker IA?

Os clientes têm a flexibilidade de configurar seus projetos com os recursos que melhor atendem ao seu caso de uso. O exemplo abaixo mostra a MLOps configuração de um fluxo de trabalho de ML, incluindo treinamento e implantação de modelos.

Um diagrama de fluxo de trabalho de ML para um pipeline que inclui etapas de treinamento e implantação de modelos.

Um projeto típico com um modelo SageMaker fornecido pela IA pode incluir o seguinte:

  • Um ou mais repositórios com código de amostra para criar e implantar soluções de ML. São exemplos funcionais que você pode modificar de acordo com suas necessidades. Você possui esse código e pode aproveitar os repositórios com controle de versão para suas tarefas.

  • Um pipeline de SageMaker IA que define etapas para preparação de dados, treinamento, avaliação do modelo e implantação do modelo, conforme mostrado no diagrama a seguir.

    Um pipeline de SageMaker IA com etapas de preparação de dados, treinamento, avaliação de modelos e implantação de modelos.
  • Um pipeline CodePipeline ou Jenkins que executa seu pipeline de SageMaker IA toda vez que você faz o check-in de uma nova versão do código. Para obter informações sobre CodePipeline, consulte O que é AWSCodePipeline. Para obter informações sobre o Jenkins, consulte a Documentação do usuário do Jenkins.

  • Um Grupo de modelos que contém versões do modelo. Toda vez que você aprova a versão do modelo resultante da execução de um pipeline de SageMaker IA, você pode implantá-la em um endpoint de SageMaker IA.

Cada projeto de SageMaker IA tem um nome e ID exclusivos que são aplicados como tags a toda a SageMaker IA e aos AWS recursos criados no projeto. Com o nome e o ID, você pode visualizar todas as entidades associadas ao seu projeto. Isso inclui:

  • Pipelines

  • Modelos registrados

  • Modelos implantados (endpoints)

  • Conjuntos de dados

  • Produtos do Service Catalog

  • CodePipeline e oleodutos Jenkins

  • CodeCommit e repositórios Git de terceiros

Preciso criar um projeto para usar pipelines de SageMaker IA?

Não. SageMaker pipelines são entidades autônomas, assim como trabalhos de treinamento, trabalhos de processamento e outros trabalhos de SageMaker IA. Você pode criar, atualizar e executar pipelines diretamente em um notebook usando o SDK do SageMaker Python sem usar SageMaker um projeto de IA.

Os projetos fornecem uma camada adicional para ajudar você a organizar seu código e adotar as melhores práticas operacionais necessárias para um sistema de qualidade de produção.