

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

# Esempio di codice per inferenza in batch
<a name="batch-inference-example"></a>

L’esempio di codice fornito in questo capitolo mostra come creare un processo di inferenza in batch, visualizzare le relative informazioni e arrestarlo. Questo esempio utilizza il formato `InvokeModel` API. Per informazioni sull'utilizzo del formato `Converse` API, vedere[Formattazione e caricamento dei propri dati di inferenza in batch](batch-inference-data.md).

Seleziona un linguaggio per visualizzarne un esempio di codice:

------
#### [ Python ]

Crea un file JSONL denominato *abc.jsonl* e includi un oggetto JSON per ogni record che contiene almeno il numero minimo di record (vedi Numero minimo di record per processo **di inferenza in batch per**). *\$1Model\$1* [Quote per Amazon Bedrock](quotas.md) In questo esempio, utilizzerai il modello Anthropic Claude 3 Haiku. L’esempio seguente mostra il primo JSON di input nel file:

```
{
    "recordId": "CALL0000001", 
    "modelInput": {
        "anthropic_version": "bedrock-2023-05-31", 
        "max_tokens": 1024,
        "messages": [ 
            { 
                "role": "user", 
                "content": [
                    {
                        "type": "text", 
                        "text": "Summarize the following call transcript: ..." 
                    } 
                ]
            }
        ]
    }
}
... 
# Add records until you hit the minimum
```

Crea un bucket S3 chiamato *amzn-s3-demo-bucket-input* e carica il file su di esso. Quindi crea un bucket S3 chiamato su cui *amzn-s3-demo-bucket-output* scrivere i file di output. Esegui il seguente frammento di codice per inviare un lavoro e ottenere la risposta dalla *jobArn* risposta:

```
import boto3

bedrock = boto3.client(service_name="bedrock")

inputDataConfig=({
    "s3InputDataConfig": {
        "s3Uri": "s3://amzn-s3-demo-bucket-input/abc.jsonl"
    }
})

outputDataConfig=({
    "s3OutputDataConfig": {
        "s3Uri": "s3://amzn-s3-demo-bucket-output/"
    }
})

response=bedrock.create_model_invocation_job(
    roleArn="arn:aws:iam::123456789012:role/MyBatchInferenceRole",
    modelId="anthropic.claude-3-haiku-20240307-v1:0",
    jobName="my-batch-job",
    inputDataConfig=inputDataConfig,
    outputDataConfig=outputDataConfig
)

jobArn = response.get('jobArn')
```

Restituisci lo `status` del processo.

```
bedrock.get_model_invocation_job(jobIdentifier=jobArn)['status']
```

Elenca i lavori di inferenza in batch che. *Failed*

```
bedrock.list_model_invocation_jobs(
    maxResults=10,
    statusEquals="Failed",
    sortOrder="Descending"
)
```

Arresta il processo che hai iniziato.

```
bedrock.stop_model_invocation_job(jobIdentifier=jobArn)
```

------