

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Creazione e avvio di un ciclo umano
<a name="a2i-start-human-loop"></a>

Un *ciclo umano* avvia il flusso di lavoro di revisione umana e invia le attività di revisione dei dati ai worker umani. Quando utilizzi uno dei tipi di attività integrati in Amazon A2I, il AWS servizio corrispondente crea e avvia un ciclo umano per tuo conto quando vengono soddisfatte le condizioni specificate nella definizione del flusso. Se non sono state specificate condizioni nella definizione del flusso, viene creato un ciclo umano per ogni oggetto. Quando utilizzi Amazon A2I per un'attività personalizzata, viene avviato un ciclo umano quando `StartHumanLoop` viene chiamato nell'applicazione. 

Utilizza le seguenti istruzioni per configurare un ciclo umano con i tipi di attività personalizzati e i tipi di attività integrati di Amazon Rekognition o Amazon Textract. 

**Prerequisiti**

Per creare e avviare un ciclo umano, devi collegare la `AmazonAugmentedAIFullAccess` policy all'utente o al ruolo AWS Identity and Access Management (IAM) che configura o avvia il ciclo umano. Questa è l'identità che utilizzi per configurare il ciclo umano mediante `HumanLoopConfig` per i tipi di attività integrati. Per i tipi di attività personalizzati, questa è l'identità che usi per chiamare `StartHumanLoop`.

Inoltre, quando si utilizza un tipo di attività integrato, l'utente o il ruolo deve disporre dell'autorizzazione a richiamare le operazioni API del AWS servizio associato al tipo di attività. Ad esempio, se utilizzi Amazon Rekognition con IA aumentata, devi collegare le autorizzazioni necessarie per chiamare `DetectModerationLabels`. Per esempi di policy basate sull’identità che puoi utilizzare per concedere queste autorizzazioni, consulta [Amazon Rekognition Identity-Based Policy Examples](https://docs.aws.amazon.com/rekognition/latest/dg/security_iam_id-based-policy-examples.html) and [Amazon Textract Identity-Based Policy Examples](https://docs.aws.amazon.com/textract/latest/dg/security_iam_id-based-policy-examples.html). Puoi anche utilizzare la policy più generale, `AmazonAugmentedAIIntegratedAPIAccess`, per concedere queste autorizzazioni. Per ulteriori informazioni, consulta [Crea un utente con le autorizzazioni per richiamare le operazioni API Amazon A2I, Amazon Textract e Amazon Rekognition](a2i-permissions-security.md#a2i-grant-general-permission). 

Avrai bisogno dell'ARN di una definizione del flusso per creare e avviare un ciclo umano. Per informazioni su come creare una definizione del flusso (o un flusso di lavoro di revisione umana), consulta [Creare un flusso di lavoro di revisione umana](a2i-create-flow-definition.md).

**Importante**  
Amazon A2I richiede che tutti i bucket S3 che contengono dati di immagine di input del ciclo umano abbiano una policy CORS collegata. Per ulteriori informazioni su questa modifica, consulta [Requisiti per l'autorizzazione CORS](a2i-permissions-security.md#a2i-cors-update).

## Creazione e avvio di un ciclo umano per un tipo di attività integrato
<a name="a2i-human-loop-built-in-task-type"></a>

Per avviare un ciclo umano per un tipo di attività integrato, usa l'API del servizio corrispondente per fornire i dati di input e configurare il ciclo umano. Per Amazon Textract, usa l'operazione API `AnalyzeDocument`. Per Amazon Rekognition, usa l'operazione API `DetectModerationLabels`. Puoi utilizzare l'SDK AWS CLI o un SDK specifico per la lingua per creare richieste utilizzando queste operazioni API. 

**Importante**  
Quando crei un ciclo umano utilizzando un tipo di attività integrata, puoi utilizzare `DataAttributes` per specificare un set di `ContentClassifiers` correlati all'input fornito all'operazione `StartHumanLoop`. Utilizza i classificatori dei contenuti per dichiarare che i contenuti siano privi di informazioni di identificazione personale o di contenuti per adulti.  
Per utilizzare Amazon Mechanical Turk, assicurati che i tuoi dati siano privi di informazioni di identificazione personale, incluse le informazioni sanitarie protette ai sensi dell'HIPAA. Includi il classificatore di contenuti `FreeOfPersonallyIdentifiableInformation`. Se non utilizzi questo classificatore di contenuti, l' SageMaker IA non invia la tua attività a Mechanical Turk. Se i dati sono privi di contenuti per adulti, includi anche il classificatore `'FreeOfAdultContent'`. Se non utilizzi questi classificatori di contenuti, l' SageMaker intelligenza artificiale potrebbe limitare il numero di lavoratori di Mechanical Turk che possono visualizzare le tue attività.

Dopo aver avviato il processo di machine learning utilizzando l'API di AWS servizio del tipo di attività integrato, Amazon A2I monitora i risultati di inferenza di quel servizio. Ad esempio, quando esegui un processo con Amazon Rekognition, Amazon A2I controlla il punteggio di attendibilità dell’inferenza per ogni immagine e lo confronta con le soglie di attendibilità specificate nella definizione del flusso. Se le condizioni per avviare un'attività di revisione umana sono soddisfatte o se non sono state specificate condizioni nella definizione del flusso, un'attività di revisione umana viene inviata ai worker. 

### Creazione di un ciclo umano Amazon Textract
<a name="a2i-human-loop-textract"></a>

Amazon A2I si integra con Amazon Textract e pertanto puoi configurare e avviare un ciclo umano utilizzando l'API Amazon Textract. Per inviare il file di un documento ad Amazon Textract per l'analisi, ci si avvale dell'[operazione API `AnalyzeDocument`](https://docs.aws.amazon.com/textract/latest/dg/API_AnalyzeDocument.html) di Amazon Textract. Per aggiungere un ciclo umano a questo processo di analisi dei documenti, devi configurare il parametro `HumanLoopConfig`. 

Quando configuri il ciclo umano, la definizione del flusso specificata in `FlowDefinitionArn` di `HumanLoopConfig` deve trovarsi nella stessa Regione AWS del bucket identificato in `Bucket` del parametro `Document`.

La tabella seguente mostra esempi di come utilizzare questa operazione con and. AWS CLI AWS SDK per Python (Boto3)

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

Gli esempi seguenti utilizzano il kit SDK per Python (Boto3). Per ulteriori informazioni, consulta [analyze\$1document](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/textract.html#Textract.Client.analyze_document) in *AWS SDK for Python (Boto) API Reference*. 

```
import boto3

textract = boto3.client('textract', aws_region)

response = textract.analyze_document(
            Document={'S3Object': {'Bucket': bucket_name, 'Name': document_name}},
            FeatureTypes=["TABLES", "FORMS"],
            HumanLoopConfig={
                'FlowDefinitionArn': 'arn:aws:sagemaker:aws_region:aws_account_number:flow-definition/flow_def_name',
                'HumanLoopName': 'human_loop_name',
                'DataAttributes': {'ContentClassifiers': ['FreeOfPersonallyIdentifiableInformation','FreeOfAdultContent']}
            }
          )
```

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

Il seguente esempio di richiesta utilizza la AWS CLI. Per ulteriori informazioni, consulta [analyze-document](https://docs.aws.amazon.com/cli/latest/reference/textract/analyze-document.html) nella *Guida di riferimento dei comandi [AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/)*.

```
$ aws textract analyze-document \
     --document '{"S3Object":{"Bucket":"bucket_name","Name":"document_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"]}' \
     --feature-types '["TABLES", "FORMS"]'
```

```
$ aws textract analyze-document \
     --document '{"S3Object":{"Bucket":"bucket_name","Name":"document_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"]}}' \
     --feature-types '["TABLES", "FORMS"]'
```

------

Dopo aver eseguito `AnalyzeDocument` con un ciclo umano configurato, Amazon A2I monitora i risultati da `AnalyzeDocument` e li verifica rispetto alle condizioni di attivazione della definizione del flusso. Se il punteggio di attendibilità dell’inferenza di Amazon Textract per una o più coppie di valori chiave soddisfa le condizioni per la revisione, Amazon A2I avvia un ciclo di revisione umano e include l'oggetto [https://docs.aws.amazon.com/textract/latest/dg/API_HumanLoopActivationOutput.html](https://docs.aws.amazon.com/textract/latest/dg/API_HumanLoopActivationOutput.html) nella risposta `AnalyzeDocument`.

### Creazione di un ciclo umano Amazon Rekognition
<a name="a2i-human-loop-rekognition"></a>

Amazon A2I si integra con Amazon Rekognition e pertanto puoi configurare e avviare un ciclo umano utilizzando l'API Amazon Rekognition. Per inviare immagini ad Amazon Rekognition per la moderazione dei contenuti, ci si avvale dell'[operazione API `DetectModerationLabels`](https://docs.aws.amazon.com/rekognition/latest/dg/API_DetectModerationLabels.html) di Amazon Rekognition. Per configurare un ciclo umano, imposta il parametro `HumanLoopConfig` quando configuri `DetectModerationLabels`.

Quando configuri il ciclo umano, la definizione del flusso specificata in `FlowDefinitionArn` di `HumanLoopConfig` deve trovarsi nella stessa Regione AWS del bucket S3 identificato in `Bucket` del parametro `Image`.

La tabella seguente mostra esempi di come utilizzare questa operazione con AWS CLI and AWS SDK per Python (Boto3).

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

Gli esempi seguenti utilizzano il kit SDK per Python (Boto3). Per ulteriori informazioni, consulta [detect\$1moderation\$1labels](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/rekognition.html#Rekognition.Client.detect_moderation_labels) nella *Documentazione di riferimento delle API AWS SDK per 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 ]

Il seguente esempio di richiesta utilizza la AWS CLI. Per ulteriori informazioni, consulta [detect-moderation-labels](https://docs.aws.amazon.com/cli/latest/reference/rekognition/detect-moderation-labels.html) nella *documentazione di riferimento dei comandi della [AWS CLI](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"]}}'
```

------

Dopo aver eseguito `DetectModerationLabels` con un ciclo umano configurato, Amazon A2I monitora i risultati da `DetectModerationLabels` e li verifica rispetto alle condizioni di attivazione della definizione del flusso. Se il punteggio di attendibilità dell’inferenza di Amazon Rekognition per un'immagine soddisfa le condizioni per la revisione, Amazon A2I avvia un ciclo di revisione umano e include l'elemento di risposta `HumanLoopActivationOutput` nella risposta `DetectModerationLabels`.

## Creazione e avvio di un ciclo umano per un tipo di attività personalizzato
<a name="a2i-instructions-starthumanloop"></a>

Per configurare un ciclo umano per un'attività di revisione umana personalizzata, utilizza l'operazione `StartHumanLoop` all'interno dell'applicazione. Questa sezione fornisce un esempio di richiesta di loop umano che utilizza AWS SDK per Python (Boto3) and the AWS Command Line Interface (AWS CLI). Per la documentazione su altre lingue specifiche SDKs che supportano`StartHumanLoop`, usa la sezione **Vedi anche** della documentazione [StartHumanLoop](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_StartHumanLoop.html)dell'API Amazon Augmented AI Runtime. Consulta [Casi d'uso ed esempi con Amazon A2I](a2i-task-types-general.md) per esempi che dimostrano come usare Amazon A2I con un tipo di attività personalizzato.

**Prerequisiti**

Per completare questa procedura, avrai bisogno di:
+ Dati di input formattati come rappresentazione di stringa di un file formattato JSON
+ Nome della risorsa Amazon (ARN) della tua definizione del flusso.

**Per configurare il ciclo umano**

1. Per `DataAttributes`, specificare un set di `ContentClassifiers` correlati all'input fornito all'operazione `StartHumanLoop`. Utilizza i classificatori dei contenuti per dichiarare che i contenuti siano privi di informazioni di identificazione personale o di contenuti per adulti. 

   Per utilizzare Amazon Mechanical Turk, assicurati che i tuoi dati siano privi di informazioni di identificazione personale, incluse le informazioni sanitarie protette ai sensi dell'HIPAA e includi il classificatore di contenuti `FreeOfPersonallyIdentifiableInformation`. Se non utilizzi questo classificatore di contenuti, l' SageMaker IA non invia la tua attività a Mechanical Turk. Se i dati sono privi di contenuti per adulti, includi anche il classificatore `'FreeOfAdultContent'`. Se non utilizzi questi classificatori di contenuti, l' SageMaker intelligenza artificiale potrebbe limitare il numero di lavoratori di Mechanical Turk che possono visualizzare le tue attività.

1. Per `FlowDefinitionArn`, inserire il nome della risorsa Amazon (ARN) della definizione del flusso.

1. Per `HumanLoopInput`, immettere i dati di input come rappresentazione di stringa di un file formattato JSON. Struttura i dati di input e il modello di attività del worker personalizzato in modo che i dati di input vengano visualizzati correttamente dai worker umani quando si avvia il ciclo umano. Consulta [Anteprima di un modello di attività del worker](a2i-custom-templates.md#a2i-preview-your-custom-template) per scoprire come visualizzare l'anteprima del modello di attività del worker personalizzato. 

1. Per `HumanLoopName`, immettere un nome per il ciclo umano. Il nome deve essere univoco all'interno della Regione nell'account e può contenere fino a 63 caratteri. I caratteri validi sono a-z, 0-9 e - (trattino).

**Per avviare un ciclo umano**
+ Per avviare un ciclo umano, invia una richiesta simile ai seguenti esempi utilizzando l'SDK specifico del linguaggio preferito. 

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

Il seguente esempio di richiesta utilizza l’SDK per Python (Boto3). Per ulteriori informazioni, consulta [Boto 3 Augmented AI Runtime](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker-a2i-runtime.html#AugmentedAIRuntime.Client.start_human_loop) in *AWS SDK for Python (Boto) API Reference*.

```
import boto3

a2i_runtime_client = boto3.client('sagemaker-a2i-runtime')

response = a2i_runtime_client.start_human_loop(
    HumanLoopName='human_loop_name',
    FlowDefinitionArn='arn:aws:sagemaker:aws-region:xyz:flow-definition/flow_def_name',
    HumanLoopInput={
        'InputContent': '{"InputContent": {\"prompt\":\"What is the answer?\"}}'    
    },
    DataAttributes={
        'ContentClassifiers': [
            'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
        ]
    }
)
```

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

Il seguente esempio di richiesta utilizza la AWS CLI. Per ulteriori informazioni, consulta [start-human-loop](https://docs.aws.amazon.com/cli/latest/reference/sagemaker-a2i-runtime/start-human-loop.html) nella *documentazione di riferimento dei comandi della [AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/)*. 

```
$ aws sagemaker-a2i-runtime start-human-loop
        --flow-definition-arn 'arn:aws:sagemaker:aws_region:xyz:flow-definition/flow_def_name' \
        --human-loop-name 'human_loop_name' \
        --human-loop-input '{"InputContent": "{\"prompt\":\"What is the answer?\"}"}' \
        --data-attributes ContentClassifiers="FreeOfPersonallyIdentifiableInformation","FreeOfAdultContent" \
```

------

Quando avvii un ciclo umano richiamando `StartHumanLoop` direttamente, la risposta includerà un oggetto `HumanLoopARN` e un oggetto `HumanLoopActivationResults` che verrà impostato su `NULL`. Puoi utilizzare il nome del ciclo umano per monitorare e gestire il ciclo umano.

## Fasi successive:
<a name="a2i-next-step-starthumanloop"></a>

Dopo aver avviato un ciclo umano, puoi gestirlo e monitorarlo con l'API Amazon Augmented AI Runtime e CloudWatch Amazon Events. Per ulteriori informazioni, consulta [Monitoraggio e gestione del ciclo umano](a2i-monitor-humanloop-results.md).