批次推論的程式碼範例 - Amazon Bedrock

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

批次推論的程式碼範例

本章中的程式碼範例說明如何建立批次推論任務、檢視相關資訊,以及將其停止。

選取語言以查看其程式碼範例:

Python

建立名為 abc.jsonl 的 JSONL 檔案,並針對包含至少最低記錄數的每個記錄包含 JSON 物件 (請參閱 {Model} 的每個批次推論任務的記錄數下限Amazon Bedrock 的配額)。在此範例中,您將使用 AnthropicClaude 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 儲存貯體,並將檔案上傳至其中。 demo-bucket-input 然後建立名為 amzn-s3-demo-bucket-output 的 S3 儲存貯體,以寫入輸出檔案。 demo-bucket-output 執行下列程式碼片段以提交任務,並從回應中取得 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)