-
Notifications
You must be signed in to change notification settings - Fork 592
/
translation_service.batch_translate_document.js
141 lines (131 loc) · 5.41 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
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
// Copyright 2024 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_v3beta1_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 = ['abc','def']
/**
* 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 = [1,2,3,4]
/**
* 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 = [1,2,3,4]
/**
* Optional. Glossaries to be applied. It's keyed by target language code.
*/
// const glossaries = [1,2,3,4]
/**
* 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 = [1,2,3,4]
/**
* Optional. This flag is to support user customized attribution.
* If not provided, the default is `Machine Translated by Google`.
* Customized attribution should follow rules in
* https://cloud.google.com/translate/attribution#attribution_and_logos
*/
// const customizedAttribution = 'abc123'
/**
* Optional. If true, use the text removal server to remove the shadow text on
* background image for native pdf translation.
* Shadow removal feature can only be enabled when
* is_translate_native_pdf_only: false && pdf_native_only: false
*/
// const enableShadowRemovalNativePdf = true
/**
* Optional. If true, enable auto rotation correction in DVS.
*/
// const enableRotationCorrection = true
// Imports the Translation library
const {TranslationServiceClient} = require('@google-cloud/translate').v3beta1;
// 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_v3beta1_generated_TranslationService_BatchTranslateDocument_async]
}
process.on('unhandledRejection', err => {
console.error(err.message);
process.exitCode = 1;
});
main(...process.argv.slice(2));