建立批次推論任務 - Amazon Bedrock

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

建立批次推論任務

注意

批次推論為預覽版,可能會有所變更。批次推論目前只能透過 API 使用。透過下列 SDK 存取批次 API。

我們建議您建立虛擬環境以使用 SDK。由於最新的 SDK 中無法使用批次推論 API,因此建議您先從虛擬環境中解除安裝最新版本的 SDK,然後再使用批次推論 API 安裝版本。如需引導範例,請參閱程式碼範例

Request format
POST /model-invocation-job HTTP/1.1 Content-type: application/json { "clientRequestToken": "string", "inputDataConfig": { "s3InputDataConfig": { "s3Uri": "string", "s3InputFormat": "JSONL" } }, "jobName": "string", "modelId": "string", "outputDataConfig": { "s3OutputDataConfig": { "s3Uri": "string" } }, "roleArn": "string", "tags": [ { "key": "string", "value": "string" } ] }
Response format
HTTP/1.1 200 Content-type: application/json { "jobArn": "string" }

若要建立批次推論任務,請傳送 CreateModelInvocationJob 請求。請提供下列資訊。

  • 角色的 ARN,具有在 roleArn 中執行批次推論的權限。

  • S3 儲存貯體的資訊,其中包含 inputDataConfig 中的輸入資料,以及要在 outputDataConfig 中寫入資訊的儲存貯體資訊。

  • modelId 中用於推論的模型 ID (請參閱 Amazon 基本模型 ID (隨需輸送量) )。

  • jobName 中輸入任務的名稱。

  • (選用) 您希望附加到 tags 中的任務的任何標籤。

回應會傳回 jobArn,其可用於其他批次推論相關 API 呼叫。

您可以使用 GetModelInvocationJobListModelInvocationJobs API 檢查任務的 status

當任務是 Completed 時,您可以從您在請求中為 outputDataConfig 指定的 S3 儲存貯體中的檔案,擷取批次推論任務的結果。S3 儲存貯體包含下列檔案:

  1. 包含模型推論結果的輸出檔案。

    • 如果輸出的是文字,Amazon Bedrock 會為每個輸入 JSONL 檔案產生一個輸出 JSONL 檔案。輸出檔案包含以下格式的每個輸入的模型輸出。error 物件會在推論中發生錯誤的任一行中取代 modelOutput 欄位。modelOutput JSON 物件的格式符合您在 InvokeModel 回應中使用之模型的 body 欄位。如需詳細資訊,請參閱 基礎模型的推論參數

      { "recordId" : "11 character alphanumeric string", "modelInput": {JSON body}, "modelOutput": {JSON body} }

      下列範例展示可能的輸出檔案。

      { "recordId" : "3223593EFGH", "modelInput" : {"inputText": "Roses are red, violets are"}, "modelOutput" : {'inputTextTokenCount': 8, 'results': [{'tokenCount': 3, 'outputText': 'blue\n', 'completionReason': 'FINISH'}]}} { "recordId" : "1223213ABCD", "modelInput" : {"inputText": "Hello world"}, "error" : {"errorCode" : 400, "errorMessage" : "bad request" }}
    • 如果輸出的是影像,Amazon Bedrock 會為每個影像產生檔案。

  2. 包含批次推論任務摘要的 manifest.json.out 檔案。

    { "processedRecordCount" : number, "successRecordCount": number, "errorRecordCount": number, "inputTextTokenCount": number, // For embedding/text to text models "outputTextTokenCount" : number, // For text to text models "outputImgCount512x512pStep50": number, // For text to image models "outputImgCount512x512pStep150" : number, // For text to image models "outputImgCount512x896pStep50" : number, // For text to image models "outputImgCount512x896pStep150" : number // For text to image models }