

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Schéma JSON pour les conditions d’activation de boucle humaine dans l’IA augmentée d’Amazon
<a name="a2i-human-fallback-conditions-json-schema"></a>

`HumanLoopActivationConditions` est un paramètre d'entrée de l'API [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html). Ce paramètre est une chaîne au format JSON. Le format JSON modélise les conditions dans lesquelles une boucle humaine est créée lorsque ces conditions sont évaluées par rapport à la réponse d'une API de service d'IA d'intégration (telle que `Rekognition.DetectModerationLabels` ou `Textract.AnalyzeDocument`). Cette réponse est appelée *inférence*. Par exemple, Amazon Rekognition envoie une inférence d'une étiquette de modération avec un score de fiabilité associé. Dans cet exemple, l'inférence est la meilleure estimation du modèle de l'étiquette appropriée pour une image. Pour Amazon Textract, l'inférence est basée sur l'association entre des blocs de texte (*paires clé-valeur*), par exemple l'association entre `Name:` et `Sue` dans un formulaire, ainsi que du contenu dans un bloc de texte, ou un *bloc de mot*, par exemple « Nom ».

Voici le schéma pour le format JSON. Au niveau supérieur, `HumanLoopActivationConditions` a un tableau JSON, `Conditions`. Chaque membre de ce tableau est une condition indépendante qui, si elle équivaut à `true`, entraîne la création d'une boucle humaine par Amazon A2I. Chaque condition indépendante de ce type peut être une condition simple ou une condition complexe. Une condition simple a les attributs suivants :
+ `ConditionType` : cet attribut identifie le type de condition. Chaque API de service d'IA AWS qui s'intègre à Amazon A2I définit son propre ensemble de `ConditionTypes` autorisées. 
  + Rekognition `DetectModerationLabels` - Cette API prend en charge les valeurs `ConditionType` `ModerationLabelConfidenceCheck` et `Sampling`.
  + Textract `AnalyzeDocument` - Cette API prend en charge les valeurs `ConditionType` `ImportantFormKeyConfidenceCheck`, `MissingImportantFormKey` et `Sampling`.
+ `ConditionParameters` - Il s'agit d'un objet JSON qui paramètre la condition. L'ensemble des attributs autorisés de cet objet dépend de la valeur de `ConditionType`. Chaque `ConditionType` définit son propre ensemble de `ConditionParameters`. 

Un membre du tableau `Conditions` peut modéliser une condition complexe. Pour cela, des conditions simples sont connectées logiquement à l'aide des opérateurs logiques `And` et `Or`, et des conditions simples sous-jacentes sont imbriquées. Deux niveaux d'imbrication maximum sont pris en charge. 

```
{
    "$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"
            }
        }
    }
}
```

**Note**  
Les conditions d'activation de boucle humaine ne sont pas disponibles pour les flux de vérification humaine qui sont intégrés à des types de tâches personnalisés. Le paramètre `HumanLoopActivationConditions` est désactivé pour les types de tâches personnalisés. 

**Topics**
+ [Utilisation du schéma JSON pour les conditions d'activation de boucle humaine avec Amazon Textract](a2i-json-humantaskactivationconditions-textract-example.md)
+ [Utilisation du schéma JSON pour les conditions d'activation de boucle humaine avec Amazon Rekognition](a2i-json-humantaskactivationconditions-rekognition-example.md)