

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

# Revisão de conteúdo inadequado com o Amazon Augmented AI
<a name="a2i-rekognition"></a>

O Amazon Augmented AI (Amazon A2I) permite construir os fluxos de trabalho necessários para a análise humana das previsões de machine learning.

O Amazon Rekognition está diretamente integrado no Amazon A2I para que você possa implementar facilmente a análise humana para o caso de uso na detecção de imagens não seguras. O Amazon A2I fornece um fluxo de trabalho de avaliação humana para moderação de imagens. Isto permite que você revise com facilidade as previsões do Amazon Rekognition. Você pode definir limiares de confiabilidade para seu caso de uso e ajustá-los ao longo do tempo. Com o Amazon A2I, você pode usar um grupo de revisores de sua própria empresa ou do Amazon Mechanical Turk. Você também pode usar fornecedores externos que já foram testados pela AWS em termos de qualidade e observância dos procedimentos de segurança.

As próximas etapas explicam como configurar o Amazon A2I com o Amazon Rekognition. Primeiro, você cria uma definição de fluxo com o Amazon A2I que tem as condições que acionam a revisão humana. Em seguida, você passa a definição de fluxo do Amazon Resource Name (ARN) para a operação `DetectModerationLabel` do Amazon Rekognition. Na resposta `DetectModerationLabel`, você pode ver se a revisão humana é necessária. Os resultados da revisão humana estão disponíveis em um bucket do Amazon S3 configurado na definição do fluxo.

*Para ver uma demonstração completa de como usar o Amazon A2I com o Amazon Rekognition, consulte um dos seguintes tutoriais no Amazon AI Developer Guide. SageMaker *
+ [Demonstração: Introdução ao console do Amazon A2I](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-get-started-console.html)
+ [Demonstração: Introdução à API do Amazon A2I](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-get-started-api.html)

  Para começar a usar a API, você também pode executar um exemplo de caderno Jupyter. Consulte [Usar uma instância de SageMaker notebook com o Amazon A2I Jupyter Notebook](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-task-types-general.html#a2i-task-types-notebook-demo) para usar a [integração da Amazon Augmented AI (Amazon A2I) com o Amazon Rekognition](https://github.com/aws-samples/amazon-a2i-sample-jupyter-notebooks/blob/master/Amazon%20Augmented%20AI%20(A2I)%20and%20Rekognition%20DetectModerationLabels.ipynb) [Exemplo] em uma instância de notebook de IA. SageMaker 

**Executando DetectModerationLabels com o Amazon A2I**
**nota**  
Crie todos os seus recursos do Amazon A2I e do Amazon Rekognition na mesma região da AWS.

1. *Preencha os pré-requisitos listados em [Getting Started with Amazon Augmented AI](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-getting-started.html) na documentação de IA. SageMaker *

   Além disso, lembre-se de configurar suas permissões do IAM como na página [Permissões e segurança na Amazon Augmented](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-permissions-security.html) AI *SageMaker na documentação de IA*.

1. Siga as instruções para [criar um fluxo de trabalho de revisão humana](https://docs.aws.amazon.com/sagemaker/latest/dg/create-human-review-console.html) na *documentação da SageMaker IA*.

   O fluxo de trabalho de uma revisão humana gerencia o processamento de uma imagem. Ele contém as condições que acionam uma revisão humana, a equipe de trabalho que recebe a imagem, o modelo de interface do usuário usado pela equipe de trabalho e o bucket do Amazon S3 que recebe os resultados da equipe de trabalho.

   Na sua `CreateFlowDefinition` chamada, você precisa `HumanLoopRequestSource` definir o como "AWS/Rekognition/DetectModerationLabels/Image/V3”. Depois disso, precisa decidir como deseja configurar suas condições que acionam a revisão humana.

   Com o Amazon Rekognition, você tem duas opções para `ConditionType`: `ModerationLabelConfidenceCheck` e `Sampling`.

   `ModerationLabelConfidenceCheck` cria um loop humano quando a confiança de um rótulo de moderação está dentro de um intervalo. Por fim, `Sampling` envia uma porcentagem aleatória dos documentos processados para revisão humana. Cada `ConditionType` usa um conjunto diferente de `ConditionParameters` para definir o que resulta em revisão humana.

   `ModerationLabelConfidenceCheck` tem o `ConditionParameters` `ModerationLableName`, que define a chave que precisa ser revisada por humanos. Além disso, possui confiança, que define a faixa percentual para envio à avaliação humana com LessThan GreaterThan, e Equals. `Sampling`tem`RandomSamplingPercentage`, que define uma porcentagem dos documentos que serão enviados para revisão humana.

   O exemplo de código a seguir é uma chamada parcial de `CreateFlowDefinition`. Ele envia uma imagem para revisão humana se tiver classificação inferior a 98% no rótulo "Sugestivo", e mais de 95% no rótulo "Roupa de banho ou roupa interior feminina". Isto significa que se a imagem não é considerada sugestiva, mas tem uma mulher em roupa interior ou roupa de banho, você pode verificar novamente a imagem usando revisão humana.

   ```
       def create_flow_definition():
       '''
       Creates a Flow Definition resource
   
       Returns:
       struct: FlowDefinitionArn
       '''
       humanLoopActivationConditions = json.dumps(
           {
               "Conditions": [
                   {
                     "And": [
                       {
                           "ConditionType": "ModerationLabelConfidenceCheck",
                           "ConditionParameters": {
                               "ModerationLabelName": "Suggestive",
                               "ConfidenceLessThan": 98
                           }
                       },
                       {
                           "ConditionType": "ModerationLabelConfidenceCheck",
                           "ConditionParameters": {
                               "ModerationLabelName": "Female Swimwear Or Underwear",
                               "ConfidenceGreaterThan": 95
                           }
                       }
                     ]
                  }
               ]
           }
       )
   ```

   O `CreateFlowDefinition` retorna um `FlowDefinitionArn`, que é usado na próxima etapa, quando você chama `DetectModerationLabels`.

   Para obter mais informações, consulte [CreateFlowDefinition](https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateFlowDefinition.html)a *Referência da API de SageMaker IA*.

1. Defina o parâmetro `HumanLoopConfig` ao chamar `DetectModerationLabels`, como em [Detectando imagens inapropriadas](procedure-moderate-images.md). Consulte a etapa 4 para ver exemplos de uma chamada `DetectModerationLabels` com o `HumanLoopConfig` definido.

   1. Dentro do parâmetro `HumanLoopConfig`, defina o `FlowDefinitionArn` o como o ARN da definição de fluxo que você criou na etapa 2.

   1. Prepare o seu `HumanLoopName`. Isto deve ser exclusivo dentro de uma Região e estar em minúsculas.

   1. (Opcional) Você pode usar `DataAttributes` para definir se a imagem que você passou para o Amazon Rekognition nao contém informações pessoais identificáveis. Você deve definir esse parâmetro para enviar informações ao Amazon Mechanical Turk.

1. Executar `DetectModerationLabels`.

   Os exemplos a seguir mostram como usar o AWS CLI e AWS SDK para Python (Boto3) para executar `DetectModerationLabels` com `HumanLoopConfig` set.

------
#### [ AWS SDK para Python (Boto3) ]

   O exemplo de solicitação a seguir usa o SDK para Python (Boto3). Para obter mais informações, consulte [detect\_moderation\_labels](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/rekognition.html#Rekognition.Client.detect_moderation_labels) na referência da API *AWS SDK para Python (Boto)*.

   ```
   import boto3
   
   rekognition = boto3.client("rekognition", aws-region)
   
   response = rekognition.detect_moderation_labels( \
           Image={'S3Object': {'Bucket': bucket_name, 'Name': image_name}}, \
           HumanLoopConfig={ \
               'HumanLoopName': 'human_loop_name', \
               'FlowDefinitionArn': , "arn:aws:sagemaker:aws-region:aws_account_number:flow-definition/flow_def_name" \
               'DataAttributes': {'ContentClassifiers': ['FreeOfPersonallyIdentifiableInformation','FreeOfAdultContent']}
            })
   ```

------
#### [ AWS CLI ]

   O exemplo de solicitação a seguir usa a AWS CLI. Para obter mais informações, consulte [detect-moderation-labels](https://docs.aws.amazon.com/cli/latest/reference/rekognition/detect-moderation-labels.html) na *[AWS CLI Command Reference](https://docs.aws.amazon.com/cli/latest/reference/)*.

   ```
   $ aws rekognition detect-moderation-labels \
       --image "S3Object={Bucket='{{bucket_name}}',Name='{{image_name}}'}" \
       --human-loop-config HumanLoopName="{{human_loop_name}}",FlowDefinitionArn="arn:aws:sagemaker:{{aws-region}}:{{aws_account_number}}:flow-definition/{{flow_def_name}}",DataAttributes='{ContentClassifiers=["FreeOfPersonallyIdentifiableInformation", "FreeOfAdultContent"]}'
   ```

   ```
   $ aws rekognition detect-moderation-labels \
       --image "S3Object={Bucket='{{bucket_name}}',Name='{{image_name}}'}" \
       --human-loop-config \
           '{"HumanLoopName": "{{human_loop_name}}", "FlowDefinitionArn": "arn:aws:sagemaker:{{aws-region}}:{{aws_account_number}}:flow-definition/{{flow_def_name}}", "DataAttributes": {"ContentClassifiers": ["FreeOfPersonallyIdentifiableInformation", "FreeOfAdultContent"]}}'
   ```

------

   Quando você executa `DetectModerationLabels` com `HumanLoopConfig` enabled, o Amazon SageMaker Rekognition chama a operação da API de IA. `StartHumanLoop` Esse comando obtém a resposta do `DetectModerationLabels` e verifica as condições da definição de fluxo no exemplo. Se atender às condições de revisão, ele retorna um `HumanLoopArn`. Isso significa que os membros da equipe de trabalho que você definiu em sua definição de fluxo agora podem revisar a imagem. Chamar a operação de runtime `DescribeHumanLoop` do Amazon Augmented AI fornece informações sobre o resultado do loop. Para obter mais informações, consulte a [ DescribeHumanLoop](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_DescribeHumanLoop.html)documentação de *referência da API Amazon Augmented AI*.

   Depois que a imagem for revisada, você poderá ver os resultados no bucket especificado no caminho de saída da definição de fluxo. A Amazon A2I também notificará você com o Amazon CloudWatch Events quando a análise for concluída. Para ver quais eventos procurar, consulte [CloudWatch Eventos](https://docs.aws.amazon.com/sagemaker/latest/dg/augmented-ai-cloudwatch-events.html) na *documentação da SageMaker IA*.

   Para obter mais informações, consulte [Getting Started with Amazon Augmented](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-getting-started.html) AI *SageMaker na documentação de IA*.