

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Crear un flujo de trabajo de revisión humana
<a name="a2i-create-flow-definition"></a>

Utilice un *flujo de trabajo de revisión humana* de Amazon Augmented AI (Amazon A2I), o una *definición de flujo*, para especificar lo siguiente:
+ Las condiciones bajo las que se llamará a su bucle humano (para los tipos de tarea integrados de Amazon Textract y Amazon Rekognition).
+ El personal al que se envían sus tareas.
+ El conjunto de instrucciones que recibirá el personal, denominado *plantilla de tarea de trabajador*.
+ La configuración de las tareas de trabajador, lo que incluye el número de trabajadores que reciben una tarea y los límites de tiempo para completar las tareas. 
+ El lugar en el que se almacenan los datos de salida. 

Puede crear un flujo de trabajo de revisión humana en la consola de SageMaker IA o mediante la [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html)operación de SageMaker IA. Puede crear una plantilla de tarea de trabajador con la consola para los tipos de tarea de Amazon Textract y Amazon Rekognition mientras crea la definición de flujo.

**importante**  
Las condiciones de activación del bucle humano, que inician el bucle humano (por ejemplo, los umbrales de confianza), no están disponibles para los tipos de tareas personalizados de Amazon A2I. Cuando se utiliza la consola para crear una definición de flujo para un tipo de tarea personalizado, no se pueden especificar las condiciones de activación. Al usar la API de Amazon A2I a fin de crear una definición de flujo para un tipo de tarea personalizado, no se puede establecer el atributo `HumanLoopActivationConditions` del parámetro `HumanLoopActivationConditionsConfig`. Para controlar cuándo se inician las revisiones humanas, especifique las condiciones en las que se llama a `StartHumanLoop` en la aplicación personalizada. En este caso, cada invocación `StartHumanLoop` deriva en una revisión humana. Para obtener más información, consulte [Uso de Amazon Augmented AI con tipos de tareas personalizadas](a2i-task-types-custom.md).

**Requisitos previos**

Para crear una definición de flujo de trabajo de revisión humana, debe haber completado los requisitos previos descritos en [Requisitos previos para el uso de Augmented AI](a2i-getting-started-prerequisites.md). 

Si utiliza la API para crear una definición de flujo para cualquier tipo de tarea, o si utiliza un tipo de tarea personalizado al crear una definición de flujo en la consola, deberá crear primero una plantilla de tarea de trabajador. Para obtener más información, consulte [Crear y administrar plantillas de tareas de trabajador](a2i-instructions-overview.md).

Si desea obtener una vista previa de la plantilla de tarea de trabajador mientras crea una definición de flujo para un tipo de tarea integrado en la consola, debe concederle al rol trabajador para crear la definición del flujo el permiso necesario para tener acceso al bucket de Amazon S3 que contiene los artefactos de su plantilla; para ello, use una política como la que se describe en [Habilitar vistas previas de plantillas de tareas del trabajador](a2i-permissions-security.md#permissions-for-worker-task-templates-augmented-ai).



**Topics**
+ [Crear un flujo de trabajo de revisión humana (consola)](#a2i-create-human-review-console)
+ [Crear un flujo de trabajo de revisión humana (API)](#a2i-create-human-review-api)
+ [Esquema JSON para condiciones de activación del bucle humano en Amazon Augmented AI](a2i-human-fallback-conditions-json-schema.md)

## Crear un flujo de trabajo de revisión humana (consola)
<a name="a2i-create-human-review-console"></a>

Utilice este procedimiento para crear un flujo de trabajo de revisión humana de Amazon Augmented AI (Amazon A2I) mediante la consola de SageMaker IA. Si es nuevo en Amazon A2I, le recomendamos que cree un equipo de trabajo privado con personas de su organización y que utilice el ARN de ese equipo de trabajo al crear la definición del flujo. Para obtener información sobre cómo configurar una fuerza de trabajo privada y crear un equipo de trabajo, consulte [Creación de una fuerza laboral privada (Amazon SageMaker AI Console)](sms-workforce-create-private-console.md). Si ya ha configurado una fuerza de trabajo privada, consulte [Crea un equipo de trabajo con la consola de SageMaker IA](sms-workforce-management-private-console.md#create-workteam-sm-console) para obtener información sobre cómo agregar un equipo de trabajo a esa fuerza de trabajo.

Si está utilizando Amazon A2I con uno de los tipos de tareas integrados, puede crear instrucciones de trabajador mediante una plantilla de tareas de trabajador predeterminada, proporcionada por Augmented AI al crear un flujo de trabajo de revisión humana en la consola. Para ver ejemplos de las plantillas predeterminadas proporcionadas por Augmented AI, consulte los tipos de tareas integrados en [Casos y ejemplos de uso de Amazon A2I](a2i-task-types-general.md).

**Para crear definición de flujo (consola)**

1. Abra la consola de SageMaker IA en. [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/)

1. En el panel de navegación, en la sección **Augmented AI (IA aumentada)** elija **Human review workflows (Flujos de trabajo de revisión humana)** y, a continuación, elija **Create human review workflow (Crear flujo de trabajo de revisión humana)**.

1. En **Overview (Información general)**, haga lo siguiente:

   1. En **Name (Nombre)**, introduzca un nombre de flujo de trabajo único. El nombre debe estar en minúsculas, debe ser único en la AWS región de tu cuenta y puede tener un máximo de 63 caracteres. Los caracteres válidos incluyen: a-z, 0-9 y - (guión).

   1. En **S3 location for output (Ruta de S3 de los resultados)**, introduzca el bucket de S3 donde se deben almacenar los resultados de revisión humana. El depósito debe estar ubicado en la misma AWS región que el flujo de trabajo.

   1. En el **rol de IAM**, elija el rol que tenga los permisos necesarios. Si elige un tipo de tarea integrado y desea obtener una vista previa de la plantilla de trabajador en la consola, proporcione un rol con el tipo de política asociado descrito en [Habilitar vistas previas de plantillas de tareas del trabajador](a2i-permissions-security.md#permissions-for-worker-task-templates-augmented-ai).

1. En **Task type (Tipo de tarea)**, elija el tipo de tarea que desea que realice el trabajador humano. 

1. Si ha elegido el tipo de tarea de Amazon Rekognition o Amazon Textract, especifique las condiciones que invocarán la revisión humana.
   + Para las tareas de moderación de Amazon Rekognition Image, elija un intervalo de umbral de puntuación de confianza de inferencia para iniciar la revisión humana. 
   + Para las tareas de Amazon Textract, puede activar la revisión humana cuando falten algunas claves de formulario o cuando haya un nivel de confianza bajo en la detección de claves de formulario. También puede iniciar la revisión humana si, después de evaluar todas las claves de formulario en un texto, el nivel de confianza es inferior al umbral que haya especificado para cualquier clave. Hay dos variables que especifican los umbrales de confianza: **Confianza de identificación** y **Confianza de calificación**. Para obtener más información sobre estas variables, consulte [Uso de Amazon Augmented AI con Amazon Textract](a2i-textract-task-type.md).
   + Para ambos tipos de tareas, puede enviar aleatoriamente un porcentaje de objetos de datos (imágenes o formularios) y sus etiquetas a los humanos para su revisión. 

1. Configure y especifique la plantilla de tareas para los trabajadores:

   1. Si utiliza el tipo de tarea de Amazon Rekognition o Amazon Textract:

      1. En la sección **Create template (Crear plantilla)** : 
        + A fin de crear instrucciones para los trabajadores con la plantilla predeterminada de Amazon A2I para los tipos de tarea de Amazon Rekognition y Amazon Textract, elija **Crear a partir de una plantilla predeterminada**.
          + Si elige **Build from a default template (Crear a partir de una plantilla predeterminada)**, cree las instrucciones en **Worker task design (Diseño de tarea de trabajador)**. 
            + Proporcione un **nombre de plantilla** que sea único en la AWS región en la que se encuentre. 
            + En la sección **Instructions (Instrucciones)**, proporcione instrucciones detalladas sobre cómo completar su tarea. Para ayudar a los trabajadores a lograr una gran precisión, proporcione ejemplos de cómo hacerlo bien y cómo hacerlo mal. 
            + (Opcional) En **Additional instructions (Instrucciones adicionales)**, proporcione a sus trabajadores información e instrucciones adicionales. 

              Para obtener información sobre cómo crear instrucciones eficaces, consulte [Creación de instrucciones correctas de trabajador](a2i-creating-good-instructions-guide.md).
        + Para seleccionar la plantilla personalizada que ha creado, elíjala en el menú **Template (Plantilla)** y proporcione una **Task description (Descripción de tarea)** para describir brevemente la tarea para sus trabajadores. Para obtener información sobre cómo crear una plantilla personalizada, consulte [Crear y eliminar una plantilla de tareas de trabajador](a2i-worker-template-console.md#a2i-create-worker-template-console).

   1. Si está utilizando el tipo de tarea personalizado:

      1. En la sección **Plantilla de tareas del trabajador**, elija la plantilla en la lista. Todas las plantillas que ha creado en la consola de SageMaker IA aparecen en esta lista. Para obtener información sobre cómo crear una plantilla para tipos de tareas personalizados, consulte [Crear y administrar plantillas de tareas de trabajador](a2i-instructions-overview.md).

1. (Opcional) Vista previa de la plantilla de trabajador: 

   Para los tipos de tareas de Amazon Rekognition y Amazon Textract, tiene la opción de elegir **Ver una tarea de trabajador de muestra** para obtener una vista previa de la interfaz de usuario de tareas de trabajador.

   Si está creando una definición de flujo para un tipo de tarea personalizado, puede obtener una vista previa de la interfaz de usuario de tareas de trabajador mediante la operación `RenderUiTemplate`. Para obtener más información, consulte [Vista previa de una plantilla de tarea de trabajador](a2i-custom-templates.md#a2i-preview-your-custom-template).

1. En **Workers (Trabajadores)**, elija un tipo de personal.

1. Seleccione **Crear**.

### Siguientes pasos
<a name="a2i-next-step-createflowdefinition-console"></a>

Después de crear un flujo de trabajo de revisión humana, este aparece en la consola bajo **Human review workflows (Flujos de trabajo de revisión humana)**. Para ver el nombre de recursos de Amazon (ARN) y los detalles de configuración de su definición de flujo, elija el flujo de trabajo seleccionando su nombre. 

Si utiliza un tipo de tarea integrado, puede utilizar la definición de flujo ARN para iniciar un bucle humano mediante la API de ese AWS servicio (por ejemplo, la API Amazon Textract). Para los tipos de tareas personalizados, puede usar el ARN para iniciar un bucle humano mediante la API de tiempo de ejecución de Amazon Augmented AI. Para obtener más información sobre ambas opciones, consulte [Crear e iniciar un bucle humano](a2i-start-human-loop.md).

## Crear un flujo de trabajo de revisión humana (API)
<a name="a2i-create-human-review-api"></a>

Para crear una definición de flujo mediante la SageMaker API, utilice la operación. `CreateFlowDefinition` Cuando haya completado los [Requisitos previos para el uso de Augmented AI](a2i-getting-started-prerequisites.md), utilice el siguiente procedimiento para descubrir cómo utilizar esta operación de la API. 

Para obtener una descripción general de la operación `CreateFlowDefinition`, así como detalles sobre cada parámetro, consulte [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html). 

**Para crear una definición de flujo (API)**

1. Para `FlowDeﬁnitionName`, introduzca un nombre único. El nombre debe ser único en la AWS región de su cuenta y puede tener un máximo de 63 caracteres. Los caracteres válidos incluyen: a-z, 0-9 y - (guión).

1. Para `RoleArn`, escriba el ARN del rol que configuró para conceder acceso a los orígenes de datos.

1. Para `HumanLoopConfig`, introduzca información sobre los trabajadores y lo que deben ver. Para obtener información sobre cada parámetro de`HumanLoopConfig`, consulte [HumanLoopConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html#sagemaker-CreateFlowDefinition-request-HumanLoopActivationConfig).

1. (Opcional) Si está utilizando un tipo de tarea integrado, proporcione condiciones que inicien un bucle humano en `HumanLoopActivationConﬁg`. Para obtener información sobre cómo crear la entrada necesaria para el parámetro `HumanLoopActivationConﬁg`, consulte [Esquema JSON para condiciones de activación del bucle humano en Amazon Augmented AI](a2i-human-fallback-conditions-json-schema.md). Si no especificas las condiciones aquí, al proporcionar una definición de flujo al AWS servicio asociado a un tipo de tarea integrada (por ejemplo, Amazon Textract o Amazon Rekognition), ese servicio envía todas las tareas a un trabajador humano para que las revise. 

   Si está utilizando un tipo de tarea personalizado, `HumanLoopActivationConfig` está deshabilitado. Para saber cómo controlar cuándo se envían tareas a trabajadores humanos mediante un tipo de tarea personalizado, consulte [Uso de Amazon Augmented AI con tipos de tareas personalizadas](a2i-task-types-custom.md).

1. (Opcional) Si utiliza un tipo de tarea integrado, especifique la fuente de integración (por ejemplo, Amazon Rekognition o Amazon Textract) en el parámetro. [HumanLoopRequestSource](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanLoopRequestSource.html)

1. En el caso de `OutputConfig`, indique en qué lugar de Amazon Simple Storage Service (Amazon S3) desea almacenar la salida del bucle humano.

1. (Opcional) Utilice `Tags` para introducir pares clave-valor que le ayuden a clasificar y organizar una definición de flujo. Cada etiqueta consta de una clave y un valor, ambos definidos por el usuario.

------
#### [ Amazon Textract – Key-value pair extraction ]

Lo que sigue es un ejemplo de solicitud para crear un flujo de trabajo de revisión humana de Amazon Textract (definición de flujo) mediante AWS SDK para Python (Boto3). A fin de crear un bucle humano de Amazon Textract, debe usar `'AWS/Textract/AnalyzeDocument/Forms/V1'`. Solo debe incluir `PublicWorkforceTaskPrice` si utiliza la plantilla de Mechanical Turk.

```
sagemaker_client = boto3.client('sagemaker', aws_region)

response = sagemaker_client.create_flow_definition(
    FlowDefinitionName='ExampleFlowDefinition',
    HumanLoopRequestSource={
         'AwsManagedHumanLoopRequestSource': 'AWS/Textract/AnalyzeDocument/Forms/V1'
    }, 
    HumanLoopActivationConfig={
        'HumanLoopActivationConditionsConfig': {
            'HumanLoopActivationConditions': '{...}'
        }
    },
    HumanLoopConfig={
        'WorkteamArn': 'arn:aws:sagemaker:aws_region:aws_account_number:workteam/private-crowd/workteam_name',
        'HumanTaskUiArn': 'arn:aws:sagemaker:aws_region:aws_account_number:human-task-ui/template_name',
        'TaskTitle': 'Example task title',
        'TaskDescription': 'Example task description.',
        'TaskCount': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskKeywords': [
            'Keyword1','Keyword2'
        ],
        'PublicWorkforceTaskPrice': {
            'AmountInUsd': {
                'Dollars': 123,
                'Cents': 123,
                'TenthFractionsOfACent': 123
            }
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/',
        'KmsKeyId': '1234abcd-12ab-34cd-56ef-1234567890ab'
    },
    RoleArn='arn:aws:iam::aws_account_number:role/role_name',
    Tags=[
        {
            'Key': 'KeyName',
            'Value': 'ValueName'
        },
    ]
)
```

------
#### [ Amazon Rekognition – Image moderation ]

Lo que sigue es un ejemplo de solicitud para crear un flujo de trabajo de revisión humana de Amazon Rekognition (definición de flujo) mediante AWS SDK para Python (Boto3). A fin de crear una definición de flujo de Amazon Rekognition, debe usar `'AWS/Rekognition/DetectModerationLabels/Image/V3'`. Solo debe incluir `PublicWorkforceTaskPrice` si utiliza la plantilla de Mechanical Turk.

```
sagemaker_client = boto3.client('sagemaker', aws_region)

response = sagemaker_client.create_flow_definition(
    FlowDefinitionName='ExampleFlowDefinition',
    HumanLoopRequestSource={
         'AwsManagedHumanLoopRequestSource': 'AWS/Rekognition/DetectModerationLabels/Image/V3'
    }, 
    HumanLoopActivationConfig={
        'HumanLoopActivationConditionsConfig': {
            'HumanLoopActivationConditions': '{...}'
        }
    },
    HumanLoopConfig={
        'WorkteamArn': 'arn:aws:sagemaker:aws_region:aws_account_number:workteam/private-crowd/workteam_name',
        'HumanTaskUiArn': 'arn:aws:sagemaker:aws_region:aws_account_number:human-task-ui/template_name',
        'TaskTitle': 'Example task title',
        'TaskDescription': 'Example task description.',
        'TaskCount': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskKeywords': [
            'Keyword1','Keyword2'
        ],
        'PublicWorkforceTaskPrice': {
            'AmountInUsd': {
                'Dollars': 123,
                'Cents': 123,
                'TenthFractionsOfACent': 123
            }
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/',
        'KmsKeyId': '1234abcd-12ab-34cd-56ef-1234567890ab'
    },
    RoleArn='arn:aws:iam::aws_account_number:role/role_name',
    Tags=[
        {
            'Key': 'KeyName',
            'Value': 'ValueName'
        },
    ]
)
```

------
#### [ Custom Workflow ]

Lo que sigue es un ejemplo de solicitud para crear un flujo de trabajo de revisión humana (definición de flujo) para una integración personalizada. Para crear este tipo de flujo de trabajo de revisión humana, omita `HumanLoopRequestSource` en la solicitud de definición del flujo. Solo debe incluir `PublicWorkforceTaskPrice` si utiliza la plantilla de Mechanical Turk.

```
sagemaker_client = boto3.client('sagemaker', aws_region)

response = sagemaker_client.create_flow_definition(
    FlowDefinitionName='ExampleFlowDefinition',
    HumanLoopActivationConfig={
        'HumanLoopActivationConditionsConfig': {
            'HumanLoopActivationConditions': '{...}'
        }
    },
    HumanLoopConfig={
        'WorkteamArn': 'arn:aws:sagemaker:aws_region:aws_account_number:workteam/private-crowd/workteam_name',
        'HumanTaskUiArn': 'arn:aws:sagemaker:aws_region:aws_acount_number:human-task-ui/template_name',
        'TaskTitle': 'Example task title',
        'TaskDescription': 'Example task description.',
        'TaskCount': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskKeywords': [
            'Keyword1','Keyword2'
        ],
        'PublicWorkforceTaskPrice': {
            'AmountInUsd': {
                'Dollars': 123,
                'Cents': 123,
                'TenthFractionsOfACent': 123
            }
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/',
        'KmsKeyId': '1234abcd-12ab-34cd-56ef-1234567890ab'
    },
    RoleArn='arn:aws:iam::account_number:role/role_name',
    Tags=[
        {
            'Key': 'KeyName',
            'Value': 'ValueName'
        },
    ]
)
```

------

### Siguientes pasos
<a name="a2i-next-step-createflowdefinition-api"></a>

El valor devuelto de una llamada exitosa de la operación de la API `CreateFlowDefinition` es una definición de flujo de nombre de recurso de Amazon (ARN).

Si utiliza un tipo de tarea integrado, puede utilizar la definición de flujo ARN para iniciar un bucle humano mediante la API de ese AWS servicio (es decir, la API Amazon Textract). Para los tipos de tareas personalizados, puede usar el ARN para iniciar un bucle humano mediante la API de tiempo de ejecución de Amazon Augmented AI. Para obtener más información sobre estas dos opciones, consulte [Crear e iniciar un bucle humano](a2i-start-human-loop.md).

# Esquema JSON para condiciones de activación del bucle humano en Amazon Augmented AI
<a name="a2i-human-fallback-conditions-json-schema"></a>

`HumanLoopActivationConditions` es un parámetro de entrada de la API [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html). Este parámetro es una cadena con formato JSON. El JSON modela las condiciones en las que se creará un bucle humano cuando esas condiciones se comparan con la respuesta de una API de servicio de IA de integración (como `Rekognition.DetectModerationLabels` o `Textract.AnalyzeDocument`). Esta respuesta se conoce como una *inferencia*. Por ejemplo, Amazon Rekognition envía una inferencia de una etiqueta de moderación con una puntuación de confianza asociada. En este ejemplo, la inferencia es la mejor estimación del modelo de la etiqueta adecuada para una imagen. Para Amazon Textract, se hace una inferencia sobre la asociación entre bloques de texto (*pares clave-valor*), como la asociación entre `Name:` y `Sue` en un formulario, así como el contenido dentro de un bloque de texto, o *bloque de palabras*, como “Nombre”.

A continuación se muestra el esquema para el JSON. En el nivel superior, `HumanLoopActivationConditions` tiene una matriz JSON, `Conditions`. Cada miembro de esta matriz es una condición independiente que, si se evalúa como `true`, dará como resultado que Amazon A2I cree un bucle humano. Cada condición independiente puede ser una condición simple o compleja. Una condición simple tiene los siguientes atributos:
+ `ConditionType`: este atributo identifica el tipo de condición. Cada API de servicio de IA de AWS que se integra con Amazon A2I define su propio conjunto de `ConditionTypes` permitidas. 
  + Rekognition `DetectModerationLabels`: esta API admite los valores `ModerationLabelConfidenceCheck` y `Sampling` de `ConditionType`.
  + Textract `AnalyzeDocument`: esta API admite los valores `ImportantFormKeyConfidenceCheck`, `MissingImportantFormKey` y `Sampling` de `ConditionType`.
+ `ConditionParameters`: un objeto JSON que parametriza la condición. El conjunto de atributos permitidos de este objeto depende del valor de `ConditionType`. Cada `ConditionType` define su propio conjunto de `ConditionParameters`. 

Un miembro de la matriz `Conditions` puede modelar una condición compleja. Esto se logra conectando lógicamente las condiciones simples con los operadores lógicos `And` y `Or` y anidando las condiciones simples subyacentes. Se admiten hasta dos niveles de anidamiento. 

```
{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "definitions": {
        "Condition": {
            "type": "object",
            "properties": {
                "ConditionType": {
                    "type": "string"
                },
                "ConditionParameters": {
                    "type": "object"
                }
            },
            "required": [
                "ConditionType"
            ]
        },
        "OrConditionArray": {
            "type": "object",
            "properties": {
                "Or": {
                    "type": "array",
                    "minItems": 2,
                    "items": {
                        "$ref": "#/definitions/ComplexCondition"
                    }
                }
            }
        },
        "AndConditionArray": {
            "type": "object",
            "properties": {
                "And": {
                    "type": "array",
                    "minItems": 2,
                    "items": {
                        "$ref": "#/definitions/ComplexCondition"
                    }
                }
            }
        },
        "ComplexCondition": {
            "anyOf": [
                {
                    "$ref": "#/definitions/Condition"
                },
                {
                    "$ref": "#/definitions/OrConditionArray"
                },
                {
                    "$ref": "#/definitions/AndConditionArray"
                }
            ]
        }
    },
    "type": "object",
    "properties": {
        "Conditions": {
            "type": "array",
            "items": {
                "$ref": "#/definitions/ComplexCondition"
            }
        }
    }
}
```

**nota**  
Las condiciones de activación de bucle humano no están disponibles para flujos de trabajo de revisión humana integrados con tipos de tareas personalizados. El parámetro `HumanLoopActivationConditions` está deshabilitado para los tipos de tareas personalizados. 

**Topics**
+ [Utilizar el esquema JSON de condiciones de activación del bucle humano con Amazon Textract](a2i-json-humantaskactivationconditions-textract-example.md)
+ [Utilizar el esquema JSON de condiciones de activación del bucle humano con Amazon Rekognition](a2i-json-humantaskactivationconditions-rekognition-example.md)

# Utilizar el esquema JSON de condiciones de activación del bucle humano con Amazon Textract
<a name="a2i-json-humantaskactivationconditions-textract-example"></a>

Cuando se utiliza con Amazon A2I, la operación `AnalyzeDocument` admite las siguientes entradas en el parámetro `ConditionType`:
+ `ImportantFormKeyConfidenceCheck`: utilice esta condición para crear un bucle humano cuando la confianza de la inferencia esté dentro de un rango específico para las claves del formulario del documento y los bloques de palabras. Una *clave de formulario* es cualquier palabra de un documento que está asociada a una entrada. La entrada se denomina *valor*. Juntos, las claves de formulario y los valores se denominan *pares clave-valor*. Un *bloque de palabras* hace referencia a las palabras que Amazon Textract reconoce dentro de un bloque de texto detectado. Para obtener más información sobre los bloques de documentos en Amazon Textract, consulte la información sobre [bloques de documentos y objetos](https://docs.aws.amazon.com/textract/latest/dg/how-it-works-document-layout.html) en la *Guía de desarrollador de Amazon Textract*.
+ `MissingImportantFormKey`: utilice esta condición para crear un bucle humano cuando Amazon Textract no haya identificado la clave o sus alias asociados en el documento. 
+ `Sampling`: utilice esta condición para especificar el porcentaje de formularios que se enviarán a personas para que los revisen, independientemente de las puntuaciones de confianza de las inferencias. Utilice esta condición para hacer lo siguiente:
  + Auditar su modelo de machine learning mediante el muestreo aleatorio de todos los formularios analizados por el modelo y el envío de un porcentaje especificado a los humanos para su revisión.
  + Con la condición `ImportantFormKeyConfidenceCheck`, muestrear aleatoriamente un porcentaje de las inferencias que cumplían las condiciones especificadas en `ImportantFormKeyConfidenceCheck` para iniciar un bucle humano y enviar solo el porcentaje especificado a los humanos para su revisión. 

**nota**  
Si envía la misma solicitud a `AnalyzeDocument` varias veces, el resultado de `Sampling` no cambiará para la inferencia de esa entrada. Por ejemplo, si hace una solicitud `AnalyzeDocument` una vez y `Sampling` no activa un bucle humano, las solicitudes posteriores a `AnalyzeDocument` con la misma configuración no activarán un bucle humano.

## Entradas y resultados de `ImportantFormKeyConfidenceCheck`
<a name="a2i-textract-importantformkeycofidencecheck"></a>

El `ConditionType` de `ImportantFormKeyConfidenceCheck` admite los siguientes `ConditionParameters`:
+ `ImportantFormKey`: una cadena que representa una clave en un par clave-valor detectado por Amazon Textract y que debe ser revisada por trabajadores humanos. Si el valor de este parámetro es el valor catch-all especial (\$1), se considera que todas las claves coinciden con la condición. Puede usar esto para modelar un caso en el que cualquier par clave-valor que satisfaga ciertos umbrales de confianza necesita revisión humana.
+ `ImportantFormKeyAliases`: una matriz que representa grafías alternativas o equivalentes lógicas para la clave de formulario importante. 
+ `KeyValueBlockConfidenceEquals`
+ `KeyValueBlockConfidenceLessThan`
+ `KeyValueBlockConfidenceLessThanEquals`
+ `KeyValueBlockConfidenceGreaterThan`
+ `KeyValueBlockConfidenceGreaterThanEquals`
+ `WordBlockConfidenceEquals`
+ `WordBlockConfidenceLessThan`
+ `WordBlockConfidenceLessThanEquals`
+ `WordBlockConfidenceGreaterThan`
+ `WordBlockConfidenceGreaterThanEquals`

Cuando se utiliza el `ConditionType` `ImportantFormKeyConfidenceCheck`, Amazon A2I envía las inferencias de bloque clave-valor y de bloque de palabras en los bloques clave-valor y los alias asociados especificados en `ImportantFormKey` y `ImportantFormKeyAliases` para la revisión humana.

Al crear una definición de flujo, si utilizas la plantilla de tareas de trabajador predeterminada que se proporciona en la sección **Flujos de trabajo de revisión humana** de la consola de Amazon SageMaker AI, las inferencias de clave-valor y bloque enviadas para su revisión humana mediante esta condición de activación se incluyen en la interfaz de usuario del trabajador. Si utiliza una plantilla de tarea de trabajador personalizada, tiene que incluir el elemento `{{ task.input.selectedAiServiceResponse.blocks }}` a fin de incluir datos de entrada de valor inicial (inferencias) desde Amazon Textract. Para ver un ejemplo de una plantilla personalizada que utiliza este elemento de entrada, consulte [Ejemplo de plantilla personalizada para Amazon Textract](a2i-custom-templates.md#a2i-custom-templates-textract-sample).

## Entradas y resultados de `MissingImportantFormKey`
<a name="a2i-textract-missingimportantformkey"></a>

El `ConditionType` de `MissingImportantFormKey` admite los siguientes `ConditionParameters`:
+ `ImportantFormKey`: una cadena que representa una clave en un par clave-valor detectado por Amazon Textract y que debe ser revisada por trabajadores humanos.
+ `ImportantFormKeyAliases`: una matriz que representa grafías alternativas o equivalentes lógicas para la clave de formulario importante. 

Cuando utilice el `ConditionType` `MissingImportantFormKey`, si la clave en `ImportantFormKey` o los alias en `ImportantFormKeyAliases` no están incluidos en la inferencia de Amazon Textract, ese formulario se enviará a un humano para su revisión y no se incluirán pares clave-valor predichos. Por ejemplo, si Amazon Textract solo identifica `Address` y `Phone` en un formulario, pero le falta el `Name` de `ImportantFormKey` (en el tipo de condición `MissingImportantFormKey`), ese formulario se enviaría a los humanos para su revisión sin que se detectara ninguna de las claves de formulario (`Address` y `Phone`).

Si utiliza la plantilla de tareas de trabajo predeterminada que se proporciona en la consola de SageMaker IA, se crea una tarea en la que se pide a los trabajadores que identifiquen la clave `ImportantFormKey` y el valor asociado. Si utiliza una plantilla de tarea de trabajador personalizada, tiene que incluir el elemento HTML personalizado `<task.input.humanLoopContext>` para configurar esta tarea. 

## Entradas y resultados de muestreo
<a name="a2i-textract-randomsamplingpercentage"></a>

El `ConditionType` `Sampling` admite los `ConditionParameters` `RandomSamplingPercentage`. La entrada en `RandomSamplingPercentage` debe ser un número real entre 0,01 y 100. Este número representa el porcentaje de datos que califican para una revisión humana y que se envían a humanos para que los revisen. Si utiliza la condición `Sampling` sin ninguna otra condición, este número representa el porcentaje de todas las inferencias resultantes realizadas por la operación `AnalyzeDocument` a partir de una única solicitud que se enviará a los humanos para que la revisen.

Si especifica la condición `Sampling` sin ningún otro tipo de condición, todas las inferencias clave-valor y bloque se envían a los trabajadores para su revisión. 

Al crear una definición de flujo, si utilizas la plantilla de tareas de trabajador predeterminada que se proporciona en la sección de **flujos de trabajo de revisión humana** de la consola de SageMaker IA, todas las inferencias clave-valor y bloque enviadas para su revisión humana mediante esta condición de activación se incluyen en la interfaz de usuario del trabajador. Si utiliza una plantilla de tarea de trabajador personalizada, tiene que incluir el elemento `{{ task.input.selectedAiServiceResponse.blocks }}` a fin de incluir datos de entrada de valor inicial (inferencias) desde Amazon Textract. Para ver un ejemplo de una plantilla personalizada que utiliza este elemento de entrada, consulte [Ejemplo de plantilla personalizada para Amazon Textract](a2i-custom-templates.md#a2i-custom-templates-textract-sample).

## Ejemplos
<a name="a2i-json-activation-condition-examples"></a>

Aunque solo debe evaluarse como `true` una condición para desencadenar un bucle humano, Amazon A2I evaluará todas las condiciones de cada objeto analizado por Amazon Textract. A los revisores humanos se les solicita que revisen las claves de formulario importantes de todas las condiciones que se evalúan como `true`.

**Ejemplo 1: detectar claves de formulario importantes con puntuaciones de confianza en un rango especificado que inicia un bucle humano**

A continuación, se muestra un ejemplo de un JSON `HumanLoopActivationConditions` que inicia un bucle humano si se cumple cualquiera de las tres condiciones siguientes:
+ La API `AnalyzeDocument` de Amazon Textract devuelve un par clave-valor cuya clave es `Employee Name`, `Name` o `EmployeeName`, la confianza del bloque clave-valor es menor de 60 y la de los bloques de palabras que componen la clave y el valor es menor de 85.
+ La API `AnalyzeDocument` de Amazon Textract devuelve un par clave-valor cuya clave es `Pay Date`, `PayDate`, `DateOfPay` o `pay-date`, la confianza del bloque clave-valor es menor de 65 y la de los bloques de palabras que componen la clave y el valor es menor de 85.
+ La API `AnalyzeDocument` de Amazon Textract devuelve un par clave-valor cuya clave es `Gross Pay`, `GrossPay` o `GrossAmount`, la confianza del bloque clave-valor es menor de 60 y la de los bloques de palabras que componen la clave y el valor es menor de 85.

```
{
    "Conditions": [
        {
            "ConditionType": "ImportantFormKeyConfidenceCheck",
            "ConditionParameters": {
                "ImportantFormKey": "Employee Name",
                "ImportantFormKeyAliases": [
                    "Name",
                    "EmployeeName"
                ],
                "KeyValueBlockConfidenceLessThan": 60,
                "WordBlockConfidenceLessThan": 85
            }
        },
        {
            "ConditionType": "ImportantFormKeyConfidenceCheck",
            "ConditionParameters": {
                "ImportantFormKey": "Pay Date",
                "ImportantFormKeyAliases": [
                    "PayDate",
                    "DateOfPay",
                    "pay-date"
                ],
                "KeyValueBlockConfidenceLessThan": 65,
                "WordBlockConfidenceLessThan": 85
            }
        },
        {
            "ConditionType": "ImportantFormKeyConfidenceCheck",
            "ConditionParameters": {
                "ImportantFormKey": "Gross Pay",
                "ImportantFormKeyAliases": [
                    "GrossPay",
                    "GrossAmount"
                ],
                "KeyValueBlockConfidenceLessThan": 60,
                "WordBlockConfidenceLessThan": 85
            }
        }
    ]
}
```

**Ejemplo 2: uso de `ImportantFormKeyConfidenceCheck`**

En el siguiente ejemplo, si Amazon Textract detecta un par clave-valor cuya confianza para el bloque clave-valor es menor de 60 y menor de 90 para cualquier bloque de palabras subyacente, se crea un bucle humano. Se pide a los revisores humanos que revisen todos los pares clave-valor de forma que coincidan con las comparaciones de valor de confianza.

```
{
    "Conditions": [
        {
            "ConditionType": "ImportantFormKeyConfidenceCheck",
            "ConditionParameters": {
                "ImportantFormKey": "*",
                "KeyValueBlockConfidenceLessThan": 60,
                "WordBlockConfidenceLessThan": 90
            }
        }
    ]
}
```

**Ejemplo 3: Usar muestreo**

En el siguiente ejemplo, el 5 % de las inferencias resultantes de una solicitud `AnalyzeDocument` de Amazon Textract serán enviadas a trabajadores humanos para que las revisen. Todos los pares clave-valor detectados y devueltos por Amazon Textract se envían a los trabajadores para su revisión.

```
{
  "Conditions": [
    {
      "ConditionType": "Sampling",
      "ConditionParameters": {
        "RandomSamplingPercentage": 5
      }
    }
  ]
}
```

**Ejemplo 4: uso de `MissingImportantFormKey`**

En el siguiente ejemplo, si `Mailing Address` o su alias (`Mailing Address:`) no se encuentran en las claves detectadas por Amazon Textract, se inicia una revisión humana. Cuando se utiliza la plantilla de tarea de trabajo predeterminada, la interfaz de usuario del trabajador pedirá a los trabajadores que identifiquen la clave `Mailing Address` o `Mailing Address:` y su valor asociado. 

```
{
    "ConditionType": "MissingImportantFormKey",
    "ConditionParameters": {
        "ImportantFormKey": "Mailing Address",
        "ImportantFormKeyAliases": ["Mailing Address:"]
    }
}
```

**Ejemplo 5: uso del muestreo y de `ImportantFormKeyConfidenceCheck` con el operador`And`**

En este ejemplo, se envía para la revisión de los trabajadores el 5 % de los pares clave-valor detectados por Amazon Textract cuya clave sea `Pay Date`, `PayDate`, `DateOfPay` o `pay-date` y cuyos niveles de confianza sean los siguientes: la confianza del bloque clave-valor es inferior a 65 y las confianzas de cada uno de los bloques de palabras que componen la clave y el valor es inferior a 85.

```
{
  "Conditions": [
    {
      "And": [
        {
          "ConditionType": "Sampling",
          "ConditionParameters": {
            "RandomSamplingPercentage": 5
          }
        },
        {
          "ConditionType": "ImportantFormKeyConfidenceCheck",
            "ConditionParameters": {
                "ImportantFormKey": "Pay Date",
                "ImportantFormKeyAliases": [
                    "PayDate",
                    "DateOfPay",
                    "pay-date"
                ],
                "KeyValueBlockConfidenceLessThan": 65,
                "WordBlockConfidenceLessThan": 85
            }
        }
      ]
    }
  ]
}
```

**Ejemplo 6: uso del muestreo y de `ImportantFormKeyConfidenceCheck` con el operador `And`**

Utilice este ejemplo para configurar el flujo de trabajo de revisión humana para enviar siempre inferencias de baja confianza de un par clave-valor especificado para revisión humana e inferencias de alta confianza de un par clave-valor a una velocidad especificada. 

En el siguiente ejemplo, la revisión humana se inicia de una de las siguientes maneras: 
+ Los pares clave-valor detectados cuya clave sea `Pay Date`, `PayDate`, `DateOfPay`, o `pay-date` y cuya confianza de clave-valor y bloques de palabras sea menor de 60 serán enviados a revisión humana. Sólo se envían la clave de formulario `Pay Date` (y sus alias) y los valores asociados a los trabajadores para que los revisen. 
+ El 5 % de los pares clave-valor detectados cuya clave sea `Pay Date`, `PayDate`, `DateOfPay` o `pay-date` y cuya confianza de clave-valor y bloque de palabras sea mayor de 90 serán enviados a revisión humana. Sólo se envían la clave de formulario `Pay Date` (y sus alias) y los valores asociados a los trabajadores para que los revisen. 

```
{
  "Conditions": [
    {
      "Or": [
       {
          "ConditionType": "ImportantFormKeyConfidenceCheck",
            "ConditionParameters": {
                "ImportantFormKey": "Pay Date",
                "ImportantFormKeyAliases": [
                    "PayDate",
                    "DateOfPay",
                    "pay-date"
                ],
                "KeyValueBlockConfidenceLessThan": 60,
                "WordBlockConfidenceLessThan": 60
            }
        },
        {
            "And": [
                {
                    "ConditionType": "Sampling",
                    "ConditionParameters": {
                        "RandomSamplingPercentage": 5
                    }
                },
                {
                    "ConditionType": "ImportantFormKeyConfidenceCheck",
                        "ConditionParameters": {
                            "ImportantFormKey": "Pay Date",
                            "ImportantFormKeyAliases": [
                                "PayDate",
                                "DateOfPay",
                                "pay-date"
                        ],
                        "KeyValueBlockConfidenceLessThan": 90
                        "WordBlockConfidenceGreaterThan": 90
                    }
                }
            ]
        }
      ]
    }
  ]
}
```

**Ejemplo 7: uso del muestreo y de `ImportantFormKeyConfidenceCheck` con el operador `Or`**

En el siguiente ejemplo, la operación `AnalyzeDocument` de Amazon Textract devuelve un par clave-valor cuya clave es `Pay Date`, `PayDate`, `DateOfPay` o `pay-date`; la confianza del bloque clave-valor es menor de 65 y la de los bloques de palabras que componen la clave y el valor es menor de 85. Además, el 5 % de todos los demás formularios inicia un bucle humano. En cada formulario elegido aleatoriamente, todos los pares clave-valor detectados para ese formulario se enviarán a personas para que los revisen.

```
{
  "Conditions": [
    {
      "Or": [
        {
          "ConditionType": "Sampling",
          "ConditionParameters": {
            "RandomSamplingPercentage": 5
          }
        },
        {
           "ConditionType": "ImportantFormKeyConfidenceCheck",
            "ConditionParameters": {
                "ImportantFormKey": "Pay Date",
                "ImportantFormKeyAliases": [
                    "PayDate",
                    "DateOfPay",
                    "pay-date"
                ],
                "KeyValueBlockConfidenceLessThan": 65,
                "WordBlockConfidenceLessThan": 85
            }
          }
        }
      ]
    }
  ]
}
```

# Utilizar el esquema JSON de condiciones de activación del bucle humano con Amazon Rekognition
<a name="a2i-json-humantaskactivationconditions-rekognition-example"></a>

Cuando se utiliza con Amazon A2I, la operación `DetectModerationLabels` de Amazon Rekognition admite las siguientes entradas en el parámetro `ConditionType`:
+ `ModerationLabelConfidenceCheck`: utilice este tipo de condición para crear un bucle humano cuando la confianza de inferencia sea baja para una o más etiquetas especificadas.
+ `Sampling`: use esta condición para especificar un porcentaje de todas las inferencias que se enviarán a los humanos para su revisión. Utilice esta condición para hacer lo siguiente:
  + Auditar su modelo de machine learning mediante el muestreo aleatorio de todas las inferencias del modelo y el envío de un porcentaje especificado a los humanos para su revisión.
  + Con la condición `ModerationLabelConfidenceCheck`, muestrear aleatoriamente un porcentaje de las inferencias que cumplían las condiciones especificadas en `ModerationLabelConfidenceCheck` para iniciar un bucle humano y enviar solo el porcentaje especificado a los humanos para su revisión. 

**nota**  
Si envía la misma solicitud a `DetectModerationLabels` varias veces, el resultado de `Sampling` no cambiará para la inferencia de esa entrada. Por ejemplo, si hace una solicitud `DetectModerationLabels` una vez y `Sampling` no activa un bucle humano, las solicitudes posteriores a `DetectModerationLabels` con la misma configuración no activarán un bucle humano. 

Al crear una definición de flujo, si utiliza la plantilla de tareas de trabajador predeterminada que se proporciona en la sección **Flujos de trabajo de revisión humana** de la consola de Amazon SageMaker AI, las inferencias enviadas para su revisión humana mediante estas condiciones de activación se incluyen en la interfaz de usuario del trabajador cuando un trabajador abre su tarea. Si utiliza una plantilla de tarea de trabajador personalizada, debe incluir el elemento HTML personalizado `<task.input.selectedAiServiceResponse.blocks>` para acceder a estas inferencias. Para obtener un ejemplo de una plantilla personalizada que utiliza este elemento HTML, consulte [Ejemplo de plantilla personalizada para Amazon Rekognition](a2i-custom-templates.md#a2i-custom-templates-rekognition-sample).

## Entradas de `ModerationLabelConfidenceCheck`
<a name="a2i-rek-moderationlabelconfidencecheck"></a>

Para el `ConditionType` `ModerationLabelConfidenceCheck`, se admiten los siguientes `ConditionParameters`:
+ `ModerationLabelName`— El nombre exacto (distingue mayúsculas de minúsculas) de una operación [ModerationLabel](https://docs.aws.amazon.com/rekognition/latest/dg/API_ModerationLabel.html)detectada por la operación Amazon Rekognition. `DetectModerationLabels` Puede especificar el valor "catch-all" especial (\$1) para indicar cualquier etiqueta de moderación.
+ `ConfidenceEquals`
+ `ConfidenceLessThan`
+ `ConfidenceLessThanEquals`
+ `ConfidenceGreaterThan`
+ `ConfidenceGreaterThanEquals`

Cuando se utiliza el `ModerationLabelConfidenceCheck` `ConditionType`, Amazon A2I envía a revisión humana las inferencias de etiqueta para las etiquetas especificadas en `ModerationLabelName`.

## Entradas de muestreo
<a name="a2i-rek-randomsamplingpercentage"></a>

El `ConditionType` `Sampling` admite los `ConditionParameters` `RandomSamplingPercentage`. La entrada para el parámetro `RandomSamplingPercentage` debe ser un número real entre 0,01 y 100. Este número representa el porcentaje de inferencias que califican para una revisión humana que se envían a los humanos para su revisión. Si utiliza la condición `Sampling` sin ninguna otra condición, este número representa el porcentaje de todas las inferencias que resultan de una sola solicitud `DetectModerationLabel` que se envían a los humanos para su revisión.

## Ejemplos
<a name="a2i-json-rek-activation-condition-examples"></a>

**Ejemplo 1: uso de `ModerationLabelConfidenceCheck` con el operador `And`**

El siguiente ejemplo de una condición `HumanLoopActivationConditions` activa un bucle humano cuando se cumplen una o varias de las condiciones siguientes:
+ Amazon Rekognition detecta la etiqueta de moderación `Graphic Male Nudity` con una confianza de entre 90 y 99.
+ Amazon Rekognition detecta la etiqueta de moderación `Graphic Female Nudity` con una confianza de entre 80 y 99.

Tenga en cuenta que se emplean los operadores lógicos `Or` y `And` para modelar esta lógica.

Aunque solo una de las dos condiciones bajo el operador `Or` se tiene que evaluar como `true` para que se cree un bucle humano, en realidad, Amazon Augmented AI evalúa todas las condiciones. Se pide a los revisores humanos que revisen las etiquetas de moderación de todas las condiciones que se han evaluado como `true`.

```
{
     "Conditions": [{
         "Or": [{
                 "And": [{
                         "ConditionType": "ModerationLabelConfidenceCheck",
                         "ConditionParameters": {
                             "ModerationLabelName": "Graphic Male Nudity",
                             "ConfidenceLessThanEquals": 99
                         }
                     },
                     {
                         "ConditionType": "ModerationLabelConfidenceCheck",
                         "ConditionParameters": {
                             "ModerationLabelName": "Graphic Male Nudity",
                             "ConfidenceGreaterThanEquals": 90
                         }
                     }
                 ]
             },
             {
                 "And": [{
                         "ConditionType": "ModerationLabelConfidenceCheck",
                         "ConditionParameters": {
                             "ModerationLabelName": "Graphic Female Nudity",
                             "ConfidenceLessThanEquals": 99
                         }
                     },
                     {
                         "ConditionType": "ModerationLabelConfidenceCheck",
                         "ConditionParameters": {
                             "ModerationLabelName": "Graphic Female Nudity",
                             "ConfidenceGreaterThanEquals": 80
                         }
                     }
                 ]
             }
         ]
     }]
}
```

**Ejemplo 2: uso de `ModerationLabelConfidenceCheck` con el valor capturar todos (\$1)**

En el siguiente ejemplo, si se detecta una etiqueta de moderación con una confianza igual o superior a 75, se activa un bucle humano. Se pide a los revisores humanos que revisen todas las etiquetas de moderación con puntuaciones de confianza mayores o iguales a 75.

```
{
    "Conditions": [
        {
            "ConditionType": "ModerationLabelConfidenceCheck",
            "ConditionParameters": {
                "ModerationLabelName": "*",
                "ConfidenceGreaterThanEquals": 75
            }
        }
    ]
}
```

**Ejemplo 3: Usar muestreo**

En el siguiente ejemplo, el 5 % de las inferencias de Amazon Rekognition de una solicitud `DetectModerationLabels` serán enviadas a trabajadores humanos. Cuando se utiliza la plantilla de tareas de trabajo predeterminada que se proporciona en la consola de SageMaker IA, todas las etiquetas de moderación devueltas por Amazon Rekognition se envían a los trabajadores para que las revisen.

```
{
  "Conditions": [
    {
      "ConditionType": "Sampling",
      "ConditionParameters": {
        "RandomSamplingPercentage": 5
      }
    }
  ]
}
```

**Ejemplo 4: uso del muestreo y de `ModerationLabelConfidenceCheck` con el operador `And`**

En este ejemplo, el 5 % de las inferencias de Amazon Rekognition de la etiqueta de moderación `Graphic Male Nudity` con una confianza superior a 50 serán enviadas a los trabajadores para su revisión. Cuando se utiliza la plantilla de tareas de trabajo predeterminada que se proporciona en la consola de SageMaker IA, solo se envían a los trabajadores las inferencias de la `Graphic Male Nudity` etiqueta para que las revisen. 

```
{
  "Conditions": [
    {
      "And": [
        {
          "ConditionType": "Sampling",
          "ConditionParameters": {
            "RandomSamplingPercentage": 5
          }
        },
        {
          "ConditionType": "ModerationLabelConfidenceCheck",
          "ConditionParameters": {
            "ModerationLabelName": "Graphic Male Nudity",
            "ConfidenceGreaterThan": 50
          }
        }
      ]
    }
  ]
}
```

**Ejemplo 5: uso del muestreo y de `ModerationLabelConfidenceCheck` con el operador`And`**

Utilice este ejemplo para configurar el flujo de trabajo de revisión humana a fin de enviar siempre a revisión humana las inferencias de baja confianza de una etiqueta especificada, así como para realizar una muestra de inferencia de alta confianza de una etiqueta a una velocidad especificada. 

En el siguiente ejemplo, la revisión humana se inicia de una de las siguientes maneras: 
+ Las inferencias para la etiqueta de moderación `Graphic Male Nudity` con puntuaciones de confianza inferiores a 60 siempre se envían a revisión humana. Solo se envía la etiqueta `Graphic Male Nudity` a los trabajadores para que la revisen. 
+ El 5 % de todas las inferencias para la etiqueta de moderación `Graphic Male Nudity` con puntuaciones de confianza mayores a 90 serán enviadas a revisión humana. Solo se envía la etiqueta `Graphic Male Nudity` a los trabajadores para que la revisen. 

```
{
  "Conditions": [
    {
      "Or": [
        {
          "ConditionType": "ModerationLabelConfidenceCheck",
          "ConditionParameters": {
            "ModerationLabelName": "Graphic Male Nudity",
            "ConfidenceLessThan": 60
          }
        },
        {
            "And": [
                {
                    "ConditionType": "Sampling",
                    "ConditionParameters": {
                        "RandomSamplingPercentage": 5
                    }
                },
                {
                    "ConditionType": "ModerationLabelConfidenceCheck",
                    "ConditionParameters": {
                        "ModerationLabelName": "Graphic Male Nudity",
                        "ConfidenceGreaterThan": 90
                    }
                }
            ]
        }
      ]
    }
  ]
}
```

**Ejemplo 6: uso del muestreo y de `ModerationLabelConfidenceCheck` con el operador `Or`**

En el siguiente ejemplo, se crea un bucle humano si la respuesta de inferencia de Amazon Rekognition contiene la etiqueta “Desnudos masculinos explícitos” con una confianza de inferencia superior a 50. Además, el 5 % de todas las demás inferencias inician un bucle humano. 

```
{
  "Conditions": [
    {
      "Or": [
        {
          "ConditionType": "Sampling",
          "ConditionParameters": {
            "RandomSamplingPercentage": 5
          }
        },
        {
          "ConditionType": "ModerationLabelConfidenceCheck",
          "ConditionParameters": {
            "ModerationLabelName": "Graphic Male Nudity",
            "ConfidenceGreaterThan": 50
          }
        }
      ]
    }
  ]
}
```