

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# バッチ推論のコード例
<a name="batch-inference-example"></a>

この章のコード例では、バッチ推論ジョブを作成し、その情報を表示して停止する方法を説明しています。この例では、 `InvokeModel` API 形式を使用します。`Converse` API 形式の使用の詳細については、「」を参照してください[バッチ推論データをフォーマットしてアップロードする](batch-inference-data.md)。

言語を選択すると、コードの例が表示されます。

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

*abc.jsonl* という名前の JSONL ファイルを作成し、各レコードに少なくとも最小レコード数 (「[Amazon Bedrock のクォータ](quotas.md)」で ***\$1Model\$1* のバッチ推論ジョブあたりの最小レコード数**を参照) がある JSON オブジェクトを含めます。この例では、Anthropic Claude 3 Haiku モデルを使用します。次の例は、ファイル内の最初の入力 JSON を示しています。

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

*amzn-s3-demo-bucket-input* という名前の S3 バケットを作成し、そのバケットにファイルをアップロードします。次に、*amzn-s3-demo-bucket-output* という名前の S3 バケットを作成して、出力ファイルを書き込みます。次のコードスニペットを実行してジョブを送信し、レスポンスから *jobArn* を取得します。

```
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')
```

ジョブの `status` を返します。

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

*失敗した*バッチ推論ジョブを一覧表示します。

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

開始したジョブを停止します。

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

------