-
Notifications
You must be signed in to change notification settings - Fork 592
/
translation_service.batch_translate_document.js
123 lines (113 loc) · 4.63 KB
/
translation_service.batch_translate_document.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
// Copyright 2022 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// ** This file is automatically generated by gapic-generator-typescript. **
// ** https://github.com/googleapis/gapic-generator-typescript **
// ** All changes to this file may be overwritten. **
'use strict';
function main(parent, sourceLanguageCode, targetLanguageCodes, inputConfigs, outputConfig) {
// [START translate_v3_generated_TranslationService_BatchTranslateDocument_async]
/**
* This snippet has been automatically generated and should be regarded as a code template only.
* It will require modifications to work.
* It may require correct/in-range values for request initialization.
* TODO(developer): Uncomment these variables before running the sample.
*/
/**
* Required. Location to make a regional call.
* Format: `projects/{project-number-or-id}/locations/{location-id}`.
* The `global` location is not supported for batch translation.
* Only AutoML Translation models or glossaries within the same region (have
* the same location-id) can be used, otherwise an INVALID_ARGUMENT (400)
* error is returned.
*/
// const parent = 'abc123'
/**
* Required. The BCP-47 language code of the input document if known, for
* example, "en-US" or "sr-Latn". Supported language codes are listed in
* Language Support (https://cloud.google.com/translate/docs/languages).
*/
// const sourceLanguageCode = 'abc123'
/**
* Required. The BCP-47 language code to use for translation of the input
* document. Specify up to 10 language codes here.
*/
// const targetLanguageCodes = 'abc123'
/**
* Required. Input configurations.
* The total number of files matched should be <= 100.
* The total content size to translate should be <= 100M Unicode codepoints.
* The files must use UTF-8 encoding.
*/
// const inputConfigs = 1234
/**
* Required. Output configuration.
* If 2 input configs match to the same file (that is, same input path),
* we don't generate output for duplicate inputs.
*/
// const outputConfig = {}
/**
* Optional. The models to use for translation. Map's key is target language
* code. Map's value is the model name. Value can be a built-in general model,
* or an AutoML Translation model.
* The value format depends on model type:
* - AutoML Translation models:
* `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}`
* - General (built-in) models:
* `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`,
* If the map is empty or a specific model is
* not requested for a language pair, then default google model (nmt) is used.
*/
// const models = 1234
/**
* Optional. Glossaries to be applied. It's keyed by target language code.
*/
// const glossaries = 1234
/**
* Optional. File format conversion map to be applied to all input files.
* Map's key is the original mime_type. Map's value is the target mime_type of
* translated documents.
* Supported file format conversion includes:
* - `application/pdf` to
* `application/vnd.openxmlformats-officedocument.wordprocessingml.document`
* If nothing specified, output files will be in the same format as the
* original file.
*/
// const formatConversions = 1234
// Imports the Translation library
const {TranslationServiceClient} = require('@google-cloud/translate').v3;
// Instantiates a client
const translationClient = new TranslationServiceClient();
async function callBatchTranslateDocument() {
// Construct request
const request = {
parent,
sourceLanguageCode,
targetLanguageCodes,
inputConfigs,
outputConfig,
};
// Run request
const [operation] = await translationClient.batchTranslateDocument(request);
const [response] = await operation.promise();
console.log(response);
}
callBatchTranslateDocument();
// [END translate_v3_generated_TranslationService_BatchTranslateDocument_async]
}
process.on('unhandledRejection', err => {
console.error(err.message);
process.exitCode = 1;
});
main(...process.argv.slice(2));