Job キューイング - Amazon Transcribe

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

Job キューイング

ジョブキューイングを使用すると、同時に処理できる数よりも多くの文字起こしジョブのリクエストを送信できます。ジョブキューを使用しない場合、同時リクエストの許容数に達したら、1 つ以上のリクエストが完了するまで待ってから、新しいリクエストを送信する必要があります。

転記ジョブリクエストでは、ジョJob キューイングはオプションです。コール後の分析リクエストでは、ジョブキューイングが自動的に有効になります。

ジョブキューを有効にすると、Amazon Transcribe制限を超えるすべてのリクエストを含むキューが作成されます。リクエストが完了するとすぐに、新しいリクエストがキューから取り出されて処理されます。キューに入っているリクエストは、FIFO (先入れ先出し) の順序で処理されます。

キューには最大 10,000 ジョブを追加できます。この制限を超えた場合、LimitExceededConcurrentJobExceptionエラーが表示されます。最適なパフォーマンスを維持するために、キューに入っているジョブの処理にはクォータの最大 90% (帯域幅比 0.9)Amazon Transcribe しか使用しません。これらはデフォルト値で、リクエストに応じて引き上げることができます。

ヒント

Amazon Transcribeリソースのデフォルトの制限とクォータのリストは、「AWS一般リファレンス」にあります。これらのデフォルトの一部は、リクエストに応じて引き上げることができます。

ジョブキューを有効にしても、同時リクエストのクォータを超えない場合、すべてのリクエストが同時に処理されます。

ジョブキューの有効化

AWS Management ConsoleAWS CLIまたは AWSSDK を使用してジョブキューを有効にできます。例については以下を参照してください。例については以下を参照してください。

  1. AWS Management Consoleにサインインします。

  2. ナビゲーションペインで、変換ジョブを選択後、ジョブの作成ジョブの作成ジョブの作成ジョブの( 右上) を選択します。これにより、ジョブの詳細を指定 ページが開きます。

  3. Job 設定ボックスには追加設定パネルがあります。このパネルを展開すると、「ジョブキューに追加」ボックスを選択してジョブキューを有効にできます。

    Amazon Transcribeコンソールのスクリーンショット:「ジョブの詳細を指定」ページ
  4. [ジョブの詳細の指定] ページに含めたい他のフィールドを入力し、[次へ] を選択します。これにより、ジョブの設定 : オプション ページ へ移動します。

  5. ジョブの作成を選択後、変換ジョブを選択します。

この例では、start-transcription-jobjob-execution-settingsAllowDeferredExecutionコマンドとパラメーターをサブパラメーターと共に使用しています。AllowDeferredExecutionリクエストに含める場合は、必ず含める必要があることに注意してくださいDataAccessRoleArn

詳細については、「StartTranscriptionJob」および「JobExecutionSettings」を参照してください。

aws transcribe start-transcription-job \ --region us-west-2 \ --transcription-job-name my-first-transcription-job \ --media MediaFileUri=s3://DOC-EXAMPLE-BUCKET/my-input-files/my-media-file.flac \ --output-bucket-name DOC-EXAMPLE-BUCKET \ --output-key my-output-files/ \ --language-code en-US \ --job-execution-settings AllowDeferredExecution=true,DataAccessRoleArn=arn:aws:iam::111122223333:role/ExampleRole

次に、start-transcription-jobコマンドと、キューイングを有効にするリクエスト本文を使用する別の例を示します。

aws transcribe start-transcription-job \ --region us-west-2 \ --cli-input-json file://my-first-queueing-request.json

ファイル my-first-queueing-request.json には次のリクエストボディが入ります。

{ "TranscriptionJobName": "my-first-transcription-job", "Media": { "MediaFileUri": "s3://DOC-EXAMPLE-BUCKET/my-input-files/my-media-file.flac" }, "OutputBucketName": "DOC-EXAMPLE-BUCKET", "OutputKey": "my-output-files/", "LanguageCode": "en-US", "JobExecutionSettings": { "AllowDeferredExecution": true, "DataAccessRoleArn": "arn:aws:iam::111122223333:role/ExampleRole" } }

この例では、AWS SDK for Python (Boto3)を使用して start_transcription_jobAllowDeferredExecution メソッドの引数を使用してジョブキューイングを有効にしますAllowDeferredExecutionリクエストに含める場合は、必ず含める必要があることに注意してくださいDataAccessRoleArn。詳細については、「StartTranscriptionJob」および「JobExecutionSettings」を参照してください。

機能固有、シナリオ、サービス間の例など、AWS SDK を使用するその他の例については、SDK を使用した Amazon Transcribe のコード例 AWS SDKsこの章を参照してください。

from __future__ import print_function import time import boto3 transcribe = boto3.client('transcribe', 'us-west-2') job_name = "my-first-queueing-request" job_uri = "s3://DOC-EXAMPLE-BUCKET/my-input-files/my-media-file.flac" transcribe.start_transcription_job( TranscriptionJobName = job_name, Media = { 'MediaFileUri': job_uri }, OutputBucketName = 'DOC-EXAMPLE-BUCKET', OutputKey = 'my-output-files/', LanguageCode = 'en-US', JobExecutionSettings = { 'AllowDeferredExecution': True, 'DataAccessRoleArn': 'arn:aws:iam::111122223333:role/ExampleRole' } ) while True: status = transcribe.get_transcription_job(TranscriptionJobName = job_name) if status['TranscriptionJob']['TranscriptionJobStatus'] in ['COMPLETED', 'FAILED']: break print("Not ready yet...") time.sleep(5) print(status)

キューに入っているジョブの進行状況は、AWS Management ConsoleGetTranscriptionJobまたはリクエストを送信して確認できます。ジョブがキューに登録されている場合、StatusはですQUEUED。ステータスは、IN_PROGRESSジョブの処理が開始されるとに変わり、FAILED処理が終了すると、COMPLETEDまたはに変わります。