Crie uma função de SageMaker execução para um trabalho de etiquetagem da Ground Truth - Amazon SageMaker

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á.

Crie uma função de SageMaker execução para um trabalho de etiquetagem da Ground Truth

Ao configurar seu trabalho de rotulagem, você precisa fornecer uma função de execução, que é uma função que SageMaker tem permissão para assumir para iniciar e executar seu trabalho de rotulagem.

Essa função deve conceder permissão ao Ground Truth para acessar o seguinte:

  • O Amazon S3 para recuperar os dados de entrada e gravar os dados de saída em um bucket do Amazon S3. Você pode conceder permissão para que uma IAM função acesse um bucket inteiro fornecendo o bucketARN, ou você pode conceder acesso à função para acessar recursos específicos em um bucket. Por exemplo, o ARN for um bucket pode ser semelhante arn:aws:s3:::amzn-s3-demo-bucket1 e o ARN de um recurso em um bucket do Amazon S3 pode ser semelhante a. arn:aws:s3:::amzn-s3-demo-bucket1/prefix/file-name.png Para aplicar uma ação a todos os recursos em um bucket do Amazon S3, use o curinga: *. Por exemplo, arn:aws:s3:::amzn-s3-demo-bucket1/prefix/*. Para obter mais informações, consulte Recursos do Amazon S3 no Guia do usuário do Amazon Simple Storage Service.

  • CloudWatch para registrar as métricas dos trabalhadores e rotular os status do trabalho.

  • AWS KMS para criptografia de dados. (Optional)

  • AWS Lambda para processar dados de entrada e saída ao criar um fluxo de trabalho personalizado.

Além disso, se você criar um trabalho de rotulagem de streaming, essa função deverá ter permissão para acessar:

  • Amazon SQS criará uma interação com uma SQS fila usada para gerenciar solicitações de rotulagem.

  • Amazon SNS para assinar e recuperar mensagens de seu tópico de SNS entrada da Amazon e para enviar mensagens para seu tópico de SNS saída da Amazon.

Todas essas permissões podem ser concedidas com a política gerenciada AmazonSageMakerGroundTruthExecution, exceto:

  • Criptografia do volume de dados e armazenamento dos buckets do Amazon S3. Para saber como configurar essas permissões, consulte Criptografe os dados de saída e o volume de armazenamento com AWS KMS.

  • Permissão para selecionar e invocar funções do Lambda que não incluam GtRecipe, SageMaker, Sagemaker, sagemaker ou LabelingFunction no nome da função.

  • Buckets do Amazon S3 que não incluem GroundTruth, Groundtruth, groundtruth, SageMaker, Sagemaker e sagemaker no prefixo ou no nome do bucket ou uma tag de objeto que inclua o SageMaker no nome (não diferenciar maiúsculas de minúsculas).

Se você precisar de permissões mais granulares do que as fornecidas em AmazonSageMakerGroundTruthExecution, use os exemplos de políticas a seguir para criar um perfil de execução adequada ao seu caso de uso específico.

Requisitos de funções de execução de tipos de tarefas integrados (sem streaming)

A política a seguir concede permissão para criar um trabalho de rotulagem para um tipo de tarefa integrado. Essa política de execução não inclui permissões para criptografia ou decodificação de AWS KMS dados. Substitua cada vermelho em itálico pelo ARN seu próprio Amazon S3. ARNs

{ "Version": "2012-10-17", "Statement": [ { "Sid": "S3ViewBuckets", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::<input-bucket-name>", "arn:aws:s3:::<output-bucket-name>" ] }, { "Sid": "S3GetPutObjects", "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:GetObject", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::<input-bucket-name>/*", "arn:aws:s3:::<output-bucket-name>/*" ] }, { "Sid": "CloudWatch", "Effect": "Allow", "Action": [ "cloudwatch:PutMetricData", "logs:CreateLogStream", "logs:CreateLogGroup", "logs:DescribeLogStreams", "logs:PutLogEvents" ], "Resource": "*" } ] }

Requisitos de funções de execução de tipos de tarefas integrados (streaming)

Se você criar um trabalho de rotulagem de streaming, deverá adicionar uma política semelhante à seguinte à função de execução usada para criar o trabalho de rotulagem. Para restringir o escopo da política, substitua o * in Resource por AWS recursos específicos que você deseja conceder à IAM função permissão para acessar e usar.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:GetObject", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::<input-bucket-name>/*", "arn:aws:s3:::<output-bucket-name>/*" ] }, { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": "*", "Condition": { "StringEqualsIgnoreCase": { "s3:ExistingObjectTag/SageMaker": "true" } } }, { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::<input-bucket-name>", "arn:aws:s3:::<output-bucket-name>" ] }, { "Sid": "CloudWatch", "Effect": "Allow", "Action": [ "cloudwatch:PutMetricData", "logs:CreateLogStream", "logs:CreateLogGroup", "logs:DescribeLogStreams", "logs:PutLogEvents" ], "Resource": "*" }, { "Sid": "StreamingQueue", "Effect": "Allow", "Action": [ "sqs:CreateQueue", "sqs:DeleteMessage", "sqs:GetQueueAttributes", "sqs:GetQueueUrl", "sqs:ReceiveMessage", "sqs:SendMessage", "sqs:SendMessageBatch", "sqs:SetQueueAttributes" ], "Resource": "arn:aws:sqs:*:*:*GroundTruth*" }, { "Sid": "StreamingTopicSubscribe", "Effect": "Allow", "Action": "sns:Subscribe", "Resource": [ "arn:aws:sns:<aws-region>:<aws-account-number>:<input-topic-name>", "arn:aws:sns:<aws-region>:<aws-account-number>:<output-topic-name>" ], "Condition": { "StringEquals": { "sns:Protocol": "sqs" }, "StringLike": { "sns:Endpoint": "arn:aws:sns:<aws-region>:<aws-account-number>:*GroundTruth*" } } }, { "Sid": "StreamingTopic", "Effect": "Allow", "Action": [ "sns:Publish" ], "Resource": [ "arn:aws:sns:<aws-region>:<aws-account-number>:<input-topic-name>", "arn:aws:sns:<aws-region>:<aws-account-number>:<output-topic-name>" ] }, { "Sid": "StreamingTopicUnsubscribe", "Effect": "Allow", "Action": [ "sns:Unsubscribe" ], "Resource": [ "arn:aws:sns:<aws-region>:<aws-account-number>:<input-topic-name>", "arn:aws:sns:<aws-region>:<aws-account-number>:<output-topic-name>" ] } ] }

Requisitos da função de execução para tipos de tarefas personalizados

Se você quiser criar um fluxo de trabalho de rotulagem personalizado, adicione a seguinte instrução a uma política de função de execução, como as encontradas em Requisitos de funções de execução de tipos de tarefas integrados (sem streaming) ou Requisitos de funções de execução de tipos de tarefas integrados (streaming).

Essa política dá permissão ao perfil de execução para Invoke as funções do Lambda de pré-anotação e pós-anotação.

{ "Sid": "LambdaFunctions", "Effect": "Allow", "Action": [ "lambda:InvokeFunction" ], "Resource": [ "arn:aws:lambda:<region>:<account-id>:function:<pre-annotation-lambda-name>", "arn:aws:lambda:<region>:<account-id>:function:<post-annotation-lambda-name>" ] }

Requisitos de permissão para rotulagem automatizada de dados

Se quiser criar um trabalho de rotulagem com a rotulagem automática de dados ativada, você deve 1) adicionar uma política à IAM política anexada à função de execução e 2) atualizar a política de confiança da função de execução.

A declaração a seguir permite que a função de IAM execução seja passada para que SageMaker possa ser usada para executar os trabalhos de treinamento e inferência usados para aprendizado ativo e rotulagem automatizada de dados, respectivamente. Adicione essa instrução a uma política de função de execução como as encontradas em Requisitos de funções de execução de tipos de tarefas integrados (sem streaming) ou Requisitos de funções de execução de tipos de tarefas integrados (streaming). arn:aws:iam::<account-number>:role/<role-name>Substitua pela função de execuçãoARN. Você pode encontrar sua IAM função ARN no IAM console em Funções.

{ "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::<account-number>:role/<execution-role-name>", "Condition": { "StringEquals": { "iam:PassedToService": [ "sagemaker.amazonaws.com" ] } } }

A declaração a seguir permite assumir SageMaker a função de execução para criar e gerenciar os trabalhos de SageMaker treinamento e inferência. Essa política deve ser adicionada à relação de confiança da função de execução. Para saber como adicionar ou modificar uma política de confiança de IAM função, consulte Modificar uma função no Guia do IAM usuário.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": {"Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole" } }