Conceder aos trabalhos do Amazon SageMaker Clarify acesso a recursos de em sua Amazon VPC - Amazon SageMaker

Conceder aos trabalhos do Amazon SageMaker Clarify acesso a recursos de em sua Amazon VPC

Para controlar o acesso aos seus dados e trabalhos do SageMaker Clarify, recomendamos criar uma Amazon VPC privada e configurá-la para que eles não sejam acessíveis pela Internet pública. Para obter informações sobre como criar e configurar uma Amazon VPC para trabalhos de processamento, consulte Conceder aos trabalhos de processamento do SageMaker acesso aos recursos em sua Amazon VPC.

Este documento explica como adicionar outras configurações da Amazon VPC que atendam aos requisitos dos trabalhos do SageMaker Clarify.

Configuração de um trabalho do SageMaker Clarify para acesso à Amazon VPC

Você precisa especificar sub-redes e grupos de segurança ao configurar sua Amazon VPC privada para trabalhos do SageMaker Clarify e permitir que o trabalho obtenha inferências do modelo do SageMaker ao calcular métricas de desvio pós-treinamento e contribuições de atributos que ajudem a explicar as predições de modelo.

Sub-redes da e grupos de segurança Amazon VPC dos trabalhos do SageMaker Clarify.

As sub-redes e grupos de segurança em sua Amazon VPC privada podem ser atribuídos a um trabalho do SageMaker Clarify de várias maneiras, dependendo de como você cria o trabalho.

  • Console do SageMaker: forneça essas informações ao criar o trabalho no Painel do SageMaker. No menu Processamento, escolha Trabalhos de processamento e, em seguida, escolha Criar trabalho de processamento. Selecione a opção VPC no painel Rede e forneça as sub-redes e os grupos de segurança usando as listas suspensas. Certifique-se de que a opção de isolamento de rede fornecida neste painel esteja desativada.

  • API do SageMaker: use o parâmetro de solicitação NetworkConfig.VpcConfig da API CreateProcessingJob, conforme mostrado no seguinte exemplo:

    "NetworkConfig": { "VpcConfig": { "Subnets": [ "subnet-0123456789abcdef0", "subnet-0123456789abcdef1", "subnet-0123456789abcdef2" ], "SecurityGroupIds": [ "sg-0123456789abcdef0" ] } }
  • SageMaker Python SDK: use o parâmetro NetworkConfig da API SageMakerClarifyProcessor ou da API Processor, conforme mostrado no seguinte exemplo:

    from sagemaker.network import NetworkConfig network_config = NetworkConfig( subnets=[ "subnet-0123456789abcdef0", "subnet-0123456789abcdef1", "subnet-0123456789abcdef2", ], security_group_ids=[ "sg-0123456789abcdef0", ], )

O SageMaker usa as informações para criar interfaces de rede e anexá-las ao trabalho do SageMaker Clarify. As interfaces de rede concedem um trabalho do SageMaker Clarify uma conexão de rede na sua Amazon VPC, sem acesso à Internet pública. Elas também permitem que o trabalho do SageMaker Clarify se conecte a recursos em sua Amazon VPC privada.

nota

A opção de isolamento de rede do trabalho do SageMaker Clarify deve ser desativada (por padrão, a opção está desativada) para que o trabalho do SageMaker Clarify possa se comunicar com o endpoint de sombra.

Configurar um modelo da Amazon VPC para inferência

Para calcular as métricas e a explicabilidade do desvio pós-treinamento, o trabalho do SageMaker Clarify precisa obter inferências do modelo do SageMaker que é especificado pelo parâmetro model_name da configuração de análise do trabalho de processamento do SageMaker Clarify. Como alternativa, se você usar a API SageMakerClarifyProcessor no SageMaker Python SDK, o trabalho precisará obter o model_name especificado pela classe ModelConfig. Para fazer isso, o trabalho do SageMaker Clarify cria um endpoint efêmero com o modelo, conhecido como endpoint de sombra, e depois aplica a configuração da Amazon VPC do modelo ao endpoint de sombra.

Para especificar sub-redes e grupos de segurança na Amazon VPC privada para o modelo do SageMaker, use o parâmetro de solicitação VpcConfig da API CreateModel ou forneça essas informações ao criar um modelo usando o painel do SageMaker no console. Veja a seguir um exemplo do parâmetro VpcConfig incluído na sua chamada para CreateModel.

"VpcConfig": { "Subnets": [ "subnet-0123456789abcdef0", "subnet-0123456789abcdef1", "subnet-0123456789abcdef2" ], "SecurityGroupIds": [ "sg-0123456789abcdef0" ] }

Você pode especificar o número de instâncias do endpoint de sombra a serem iniciadas com o parâmetro initial_instance_count da configuração de análise para o trabalho de processamento do SageMaker Clarify. Como alternativa, se você usar a API SageMakerClarifyProcessor no SageMaker Python SDK, o trabalho precisará obter o instance_count especificado pela classe ModelConfig.

nota

Mesmo que você solicite apenas uma instância ao criar o endpoint de sombra, precisará de pelo menos duas sub-redes no ModelConfig do modelo em zonas de disponibilidade distintas. Caso contrário, a criação de endpoints de sombra falhará com o erro a seguir:

ClientError: erro ao hospedar o endpoint do SageMaker-clarify-endpoint-XXX: falha. Motivo: não foi possível localizar pelo menos duas zonas de disponibilidade com o tipo de instância YYY solicitado que se sobreponham às sub-redes do SageMaker.

Se seu modelo exigir arquivos de modelo no Amazon S3, o modelo da Amazon VPC precisará ter um endpoint de VPC do Amazon S3. Para obter mais informações sobre como criar e configurar uma Amazon VPC para modelos do SageMaker, consulte Conceder aos endpoints hospedados no SageMaker acesso a recursos na sua Amazon VPC.

Configurar sua Amazon VPC privada para trabalhos do SageMaker Clarify

Em geral, você pode seguir as etapas em Configurar sua VPC privada para SageMaker Processing para configurar sua Amazon VPC privada para trabalhos do SageMaker Clarify. Aqui estão alguns destaques e requisitos especiais para trabalhos do SageMaker Clarify.

Conectar-se a recursos fora da sua Amazon VPC

Se você configurar sua Amazon VPC para que ela não tenha acesso público à Internet, alguma configuração adicional será necessária para conceder aos trabalhos do SageMaker Clarify acesso a recursos e serviços fora da sua Amazon VPC. Por exemplo, um endpoint de VPC do Amazon S3 é necessário porque um trabalho do SageMaker Clarify precisa carregar um conjunto de dados de um bucket do S3 e salvar os resultados da análise em um bucket do S3. Para obter mais informações, consulte Criar um endpoint de VPC do Amazon S3 do guia de criação. Além disso, se um trabalho do SageMaker Clarify precisar obter inferências do endpoint de sombra, ele precisará chamar vários outros serviços AWS.

  • Criar um endpoint de VPC do serviço de API do Amazon SageMaker: o trabalho do SageMaker Clarify precisa chamar o serviço de API do Amazon SageMaker para manipular o endpoint de sombra ou descrever um modelo do SageMaker para validação da Amazon VPC. Você pode seguir as orientações fornecidas no blog Protegendo todas as chamadas de API do Amazon SageMaker com o AWS PrivateLink para criar um endpoint de VPC da API do Amazon SageMaker que permita que o trabalho do SageMaker Clarify faça as chamadas de serviço. Observe que o nome do serviço de API do Amazon SageMaker é com.amazonaws.region.sagemaker.api, onde region é o nome da região em que sua Amazon VPC reside.

  • Criar um endpoint de VPC do runtime do Amazon SageMaker: o trabalho do SageMaker Clarify precisa chamar o serviço de runtime do Amazon SageMaker, que roteia as invocações para o endpoint de sombra. As etapas de configuração são semelhantes às do serviço de API do Amazon SageMaker. Observe que o nome do serviço de API do runtime do Amazon SageMaker é com.amazonaws.region.sagemaker.runtime, onde region é o nome da região em que sua Amazon VPC reside.

Configurar o grupo de segurança da Amazon VPC

Os trabalhos do SageMaker Clarify são compatíveis com o processamento distribuído quando duas ou mais instâncias de processamento são especificadas de uma das seguintes formas:

  • Console do SageMaker: a contagem de instâncias é especificada na parte Configuração de recursos do painel de Configurações do trabalho na página Criar trabalho de processamento.

  • API do SageMaker: o InstanceCount é especificado quando você cria o trabalho com a API CreateProcessingJob.

  • SageMaker Python SDK: o instance_count é especificado ao usar a API SageMakerClarifyProcessor ou a API Processor.

No processamento distribuído, é necessário permitir a comunicação entre as diferentes instâncias no mesmo trabalho de processamento. Para fazer isso, configure uma regra para seu grupo de segurança que permita conexões de entrada entre membros do mesmo grupo de segurança. Para mais informações, consulte Regras do grupo de segurança.