

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

# バッチ翻訳ジョブの実行
<a name="async-start"></a>

Amazon Translate コンソール、、または Amazon Amazon Translateを使用して AWS CLI、バッチ翻訳ジョブを実行できます。

**注記**  
バッチ翻訳ジョブは長時間実行されるオペレーションであり、完了するまでにかなりの時間がかかる場合があります。たとえば、小さいデータセットのバッチ翻訳に数分かかり、巨大なデータセットのバッチ翻訳には最大 2 日かかることがあります。完了時間はリソースの可用性によっても異なります。

## Amazon Translate コンソール
<a name="async-start-console"></a>

Amazon Translate コンソールを使用して翻訳ジョブを実行するには、**バッチ翻訳**ページでジョブを作成します。

1. [Amazon Translate コンソール](https://console.aws.amazon.com/translate/home)を開きます。

1. 左側のナビゲーションメニューで、[**Batch translation (バッチ翻訳)**] を選択します。

1. [**Translation jobs (翻訳ジョブ)**] ページで、[**Create job (ジョブの作成)**] を選択します。コンソールに [**Create translation job (翻訳ジョブの作成)**] ページが表示されます。

1. [**Job settings (ジョブ設定)**] で、次の作業を実行します。

   1. [**Name (名前)**] で、バッチ翻訳ジョブのカスタム名を入力します。

   1. **[ソース言語]** で、ソースファイルの言語を選択します。ソースファイルの言語がわからない場合や、入力ドキュメントに異なるソース言語が含まれている場合は、`auto` を選択します。Amazon Translate が各ファイルのソース言語を自動検出します。

   1. **[ターゲット言語]** では、最大 10 個の言語を選択できます。Amazon Translate が各ソースファイルを各ターゲット言語に翻訳します。

1. [**Input data (入力データ)**] で、次の作業を行います。

   1. [**Input S3 location (S3 での入力先)**] で、Amazon S3 内にあって、翻訳ソースファイルが含まれている入力フォルダを指定します。Amazon S3 でフォルダに移動することでフォルダを提供するには、[**Select folder (フォルダを選択)**] を選択します。

   1. [**File format (ファイル形式)**] で、翻訳ソースファイルの形式を選択します。

1. [**Output data (出力データ)**] で、次の作業を行います。

   1. [**Output S3 location (S3 での出力先)**] で、Amazon S3 内にあって、Amazon Translate からの翻訳の出力先となる出力フォルダーを指定します。Amazon S3 でフォルダに移動することでフォルダを提供するには、[**Select folder (フォルダを選択)**] を選択します。

   1. オプションで、 **() で管理するカスタマーマネージドキーを使用して出力を暗号化する場合は、暗号化設定をカスタマイズ (詳細**) を選択しますAWS KMS。 AWS Key Management Service 

      デフォルトでは、Amazon Translate は AWSがユーザーに代わって作成、管理、使用する KMS キーを用いて翻訳出力を暗号化します。また、独自の KMS キーで出力を暗号化する場合はこのオプションを選択します。

      現在の AWS アカウントから KMS キーを使用する場合は、**「 AWS Key Management Service キー**の選択」で選択します。また、別の AWS アカウントから KMS キーを使用する場合は、そのキーの Amazon リソースネーム (ARN) を入力します。
**注記**  
独自の KMS キーを使用できるようにするには、IAM で Amazon Translate のサービスロールにアクセス許可を追加する必要があります。別のアカウントの KMS キーを使用する場合は、 でキーポリシーも更新する必要があります AWS KMS。詳細については、「[暗号化をカスタマイズするための前提となるアクセス許可](async-prereqs.md#async-prereqs-permissions-custom-encryption)」を参照してください。

1. [**Customizations - optional (カスタマイズ - オプション)**]では、次の設定を使用して翻訳ジョブの出力をカスタマイズすることができます。  
**Profanity (不敬)**  
翻訳出力内の不適切な単語やフレーズをマスクします。ジョブに複数のターゲット言語を指定する場合、すべてのターゲット言語が不敬表現のマスクキングをサポートしている必要があります。いずれかのターゲット言語が不敬表現のマスキングをサポートしていない場合、翻訳ジョブはどのターゲット言語でも不敬表現をマスクしません。  
詳細については、「[Amazon Translate における不適切な言葉やフレーズのマスキング](customizing-translations-profanity.md)」を参照してください。  
**鮮やかさ**  
Amazon Translate は、バッチ翻訳ジョブの簡潔さをサポートしていません。  
詳細については、「[Amazon Translate での簡潔さの使用](customizing-translations-brevity.md)」を参照してください。  
**形式**  
一部のターゲット言語では、**[形式]** をフォーマルまたはインフォーマルに設定できます。ジョブに複数のターゲット言語を指定した場合、Translate はサポートされていないターゲット言語の形式設定を無視します。  
 詳細については、「[Amazon Translate の形式設定](customizing-translations-formality.md)」を参照してください。  
**Custom terminology (カスタム用語)**  
各用語のソース用語例と翻訳例で構成されています。ジョブに複数のターゲット言語を指定した場合、Translate は、用語ファイルにソース用語のエントリがある要求されたターゲット言語ごとに、指定された用語を使用します。  
詳細については、「[カスタム用語による翻訳のカスタマイズ](how-custom-terminology.md)」を参照してください。  
**Parallel data (並列データ)**  
テキストのセグメントの翻訳方法を示した例で構成されています。ジョブに複数のターゲット言語を指定する場合、並列データファイルにはすべてのターゲット言語の翻訳が含まれている必要があります。  
並列データをバッチ翻訳ジョブに追加するときは、*Active Custom Translation* ジョブを作成します。  
Active Custom Translation ジョブは、並列データを使用しない他のジョブよりも高いレートで料金が設定されます。詳細については、「[Amazon Translate 料金表](https://aws.amazon.com/translate/pricing/)」を参照してください。
詳細については、「[並列データによる翻訳のカスタマイズ (Active Custom Translation)](customizing-translations-parallel-data.md)」を参照してください。

1. [**Access permissions (アクセス許可)**] で、Amazon Translate に対し、Amazon S3 において入力ファイルと出力ファイルに必要なアクセス許可を付与する IAM ロールを提供します。
   + アカウントにこの IAM ロールがすでにある場合は、[**Use an existing IAM role (既存の IAM ロールを使用する)**] を選択し、[**IAM role (IAM ロール)**] でそれを選択します。
   + アカウントにこの IAM ロールがない場合は、[**Create an IAM role (IAM ロールを作成する)**] を選択します。[**IAM role (IAM ロール)**] で、**Input and output S3 buckets (S3 バケットの入力と出力)**] を選択します。[**Role name (ロール名)**] にカスタムの名前を入力します。翻訳ジョブを作成すると、Amazon Translate によってロールが自動的に作成されます。IAM のロール名にはプレフィックスとして *AmazonTranslateServiceRole-* が付きます。
**注記**  
独自の KMS キーでの翻訳出力の暗号化を選択した場合は、[**Create an IAM role (IAM ロールを作成する)**] を選択できません。この場合、既存の IAM ロールを使用する必要があります。また、KMS キーには、ロールでキーを使用できるようにするキーポリシーが必要です。  
詳細については「[暗号化をカスタマイズするための前提となるアクセス許可](async-prereqs.md#async-prereqs-permissions-custom-encryption)」を参照してください。

1. [**Create job (ジョブの作成)**] を選択します。

   コンソールが [**Translation jobs (翻訳ジョブ)**] ページに戻ります。このぺージの上部にあるバナーにジョブ作成ステータスが表示されます。数分後、ジョブがテーブルに表示されます。

1. [**Name (名前)**] 列でジョブ名を選択すると、ジョブの詳細ページが開きます。

   翻訳ジョブの実行中は、[**Status (ステータス)**] フィールドに[**In progress (進行中)**] と表示されます。

1. ステータスが [**Completed (完了)**] になったら、[**Output file location (出力ファイルの場所)**] でリンクを選択して翻訳出力に進みます。コンソールが Amazon S3 の出力バケットに移動します。

1. 出力ファイルをダウンロードするには、それぞれのチェックボックスを選択して、**[ダウンロード]** を選択します。

## AWS CLI
<a name="async-start-cli"></a>

を使用して翻訳ジョブを実行するには AWS CLI、 [https://docs.aws.amazon.com/cli/latest/reference/translate/start-text-translation-job.html](https://docs.aws.amazon.com/cli/latest/reference/translate/start-text-translation-job.html) コマンドを使用し、 `parallel-data-names`パラメータに並列データリソースの名前を指定します。

**Example Start-text-translation-job コマンド**  
次の例では、Amazon S3 の入力バケットに保存されている Excel ファイルを送信して、翻訳ジョブを実行します。このジョブは、リクエストに含まれる並列データによってカスタマイズされます。  

```
$ aws translate start-text-translation-job \
> --input-data-config ContentType={{application/vnd.openxmlformats-officedocument.spreadsheetml.sheet}},S3Uri=s3://{{amzn-s3-demo-bucket/input}}/ \
> --output-data-config S3Uri=s3://{{amzn-s3-demo-bucket/output}}/ \
> --data-access-role-arn {{arn:aws:iam::111122223333:role/my-iam-role}} \
> --source-language-code {{en}} \
> --target-language-codes {{es it}} \
> --job-name {{my-translation-job}}
```
コマンドが成功すると、Amazon Translate からジョブ ID と次のステータスでの応答があります。  

```
{
    "JobId": "4446f95f20c88a4b347449d3671fbe3d",
    "JobStatus": "SUBMITTED"
}
```
翻訳ジョブの出力をカスタマイズする場合は、次のパラメータを使用できます。    
`--settings`  
翻訳出力を構成するための設定で、以下のオプションを含みます。  
翻訳出力で簡潔性を有効にします。Amazon Translate は、バッチ翻訳ジョブの簡潔さをサポートしていません。詳細については、「[Amazon Translate での簡潔さの使用](customizing-translations-brevity.md)」を参照してください。  
不敬表現のマスキングを有効にして、不適切な単語やフレーズをマスクします。有効にするには、不敬表現のパラメータを `Profanity=MASK` に設定します。詳細については、「[Amazon Translate における不適切な言葉やフレーズのマスキング](customizing-translations-profanity.md)」を参照してください。いずれかのターゲット言語が不敬表現のマスキングをサポートしていない場合、翻訳ジョブはどのターゲット言語でも不敬表現をマスクしません。  
翻訳出力の形式レベルを設定します。`Formality` パラメータを `FORMAL` または `INFORMAL` に設定します。ジョブに複数のターゲット言語を指定した場合、Translate はサポートされていないターゲット言語の形式設定を無視します。詳細については、「[Amazon Translate の形式設定](customizing-translations-formality.md)」を参照してください。  
`--terminology-names`  
翻訳ジョブに追加するカスタム用語リソースの名前。このリソースでは、各用語のソース用語と翻訳例を挙げています。ジョブに複数のターゲット言語を指定した場合、Translate は、用語ファイルにソース用語のエントリがある要求されたターゲット言語ごとに、指定された用語を使用します。  
このパラメータでは、カスタム用語リソースが 1 つだけ許容されます。  
使用可能なカスタム用語リソースのリストについては、[https://docs.aws.amazon.com/cli/latest/reference/translate/list-terminologies.html](https://docs.aws.amazon.com/cli/latest/reference/translate/list-terminologies.html) コマンドを使用してください。  
詳細については、「[カスタム用語による翻訳のカスタマイズ](how-custom-terminology.md)」を参照してください。  
`--parallel-data-names`  
翻訳ジョブに追加する並列データリソースの名前。このリソースには、テキストのセグメントの翻訳方法を示した例が含まれています。ジョブに複数のターゲット言語を指定する場合、並列データファイルにはすべてのターゲット言語の翻訳が含まれている必要があります。  
並列データを翻訳ジョブに追加するときは、*Active Custom Translation* ジョブを作成します。  
このパラメータでは、並列データリソースが 1 つだけ許容されます。  
Active Custom Translation ジョブは、並列データを使用しない他のジョブよりも高いレートで料金が設定されます。詳細については、「[Amazon Translate 料金表](https://aws.amazon.com/translate/pricing/)」を参照してください。
使用可能な並列データリソースのリストについては、[https://docs.aws.amazon.com/cli/latest/reference/translate/list-parallel-data.html](https://docs.aws.amazon.com/cli/latest/reference/translate/list-parallel-data.html) コマンドを使用してください。  
詳細については、「[並列データによる翻訳のカスタマイズ (Active Custom Translation)](customizing-translations-parallel-data.md)」を参照してください。

翻訳ジョブのステータスを確認するには、[https://docs.aws.amazon.com/cli/latest/reference/translate/describe-text-translation-job.html](https://docs.aws.amazon.com/cli/latest/reference/translate/describe-text-translation-job.html) コマンドを使用します。

**Example Describe-text-translation-job コマンド**  

次の例では、ジョブ ID を指定してジョブのステータスを確認します。この ID は、ジョブが `start-text-translation-job` コマンドで開始されたときに Amazon Translate により提供されたものです。

```
$ aws translate describe-text-translation-job \
> --job-id 4446f95f20c88a4b347449d3671fbe3d
```

Amazon Translate からジョブプロパティでの応答があります。これにはそのジョブのステータスが含まれます。

```
{
    "TextTranslationJobProperties": {
        "JobId": "4446f95f20c88a4b347449d3671fbe3d",
        "JobName": "my-translation-job",
        "JobStatus": "COMPLETED",
        "JobDetails": {
            "TranslatedDocumentsCount": 0,
            "DocumentsWithErrorsCount": 0,
            "InputDocumentsCount": 1
        },
        "SourceLanguageCode": "en",
        "TargetLanguageCodes": [
            "es", 
            "it" 
        ],
        "SubmittedTime": 1598661012.468,
        "InputDataConfig": {
            "S3Uri": "s3://amzn-s3-demo-bucket/input/",
            "ContentType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
        },
        "OutputDataConfig": {
            "S3Uri": "s3://amzn-s3-demo-bucket/output/111122223333-TranslateText-4446f95f20c88a4b347449d3671fbe3d/"
        },
        "DataAccessRoleArn": "arn:aws:iam::111122223333:role/my-iam-role"
    }
}
```

`JobStatus` 値が `IN_PROGRESS` である場合は、数分が経過してから [https://docs.aws.amazon.com/cli/latest/reference/translate/describe-text-translation-job.html](https://docs.aws.amazon.com/cli/latest/reference/translate/describe-text-translation-job.html) を再実行し、ステータスが `COMPLETED` になるまで続けます。ジョブが完了すれば、`OutputDataConfig` の `S3Uri` フィールドにある場所に翻訳結果をダウンロードできます。

## Amazon Translate API
<a name="async-start-api"></a>

Amazon Translate API を使用してバッチ翻訳ジョブを送信するには、[StartTextTranslationJob](https://docs.aws.amazon.com/translate/latest/APIReference/API_StartTextTranslationJob.html) オペレーションを使用します。