google-cloud-translate 1.4.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/AUTHENTICATION.md +6 -2
- data/CHANGELOG.md +33 -0
- data/CONTRIBUTING.md +1 -1
- data/LICENSE +1 -1
- data/OVERVIEW.md +223 -18
- data/lib/google-cloud-translate.rb +79 -91
- data/lib/google/cloud/translate.rb +127 -114
- data/lib/google/cloud/translate/v2.rb +169 -0
- data/lib/google/cloud/translate/v2/api.rb +255 -0
- data/lib/google/cloud/translate/v2/credentials.rb +58 -0
- data/lib/google/cloud/translate/v2/detection.rb +132 -0
- data/lib/google/cloud/translate/v2/language.rb +68 -0
- data/lib/google/cloud/translate/v2/service.rb +205 -0
- data/lib/google/cloud/translate/v2/translation.rb +120 -0
- data/lib/google/cloud/translate/v3.rb +144 -0
- data/lib/google/cloud/translate/v3/credentials.rb +42 -0
- data/lib/google/cloud/translate/v3/doc/google/cloud/translate/v3/translation_service.rb +663 -0
- data/lib/google/cloud/translate/v3/doc/google/longrunning/operations.rb +51 -0
- data/lib/google/cloud/translate/v3/doc/google/protobuf/any.rb +131 -0
- data/lib/google/cloud/translate/v3/doc/google/protobuf/timestamp.rb +113 -0
- data/lib/google/cloud/translate/v3/doc/google/rpc/status.rb +87 -0
- data/lib/google/cloud/translate/v3/translation_service_client.rb +927 -0
- data/lib/google/cloud/translate/v3/translation_service_client_config.json +66 -0
- data/lib/google/cloud/translate/v3/translation_service_pb.rb +226 -0
- data/lib/google/cloud/translate/v3/translation_service_services_pb.rb +68 -0
- data/lib/google/cloud/translate/version.rb +1 -1
- metadata +47 -37
- data/lib/google/cloud/translate/api.rb +0 -274
- data/lib/google/cloud/translate/credentials.rb +0 -57
- data/lib/google/cloud/translate/detection.rb +0 -139
- data/lib/google/cloud/translate/language.rb +0 -70
- data/lib/google/cloud/translate/service.rb +0 -206
- data/lib/google/cloud/translate/translation.rb +0 -125
@@ -0,0 +1,42 @@
|
|
1
|
+
# Copyright 2019 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
|
16
|
+
require "googleauth"
|
17
|
+
|
18
|
+
module Google
|
19
|
+
module Cloud
|
20
|
+
module Translate
|
21
|
+
module V3
|
22
|
+
class Credentials < Google::Auth::Credentials
|
23
|
+
SCOPE = [
|
24
|
+
"https://www.googleapis.com/auth/cloud-platform",
|
25
|
+
"https://www.googleapis.com/auth/cloud-translation"
|
26
|
+
].freeze
|
27
|
+
PATH_ENV_VARS = %w(TRANSLATE_CREDENTIALS
|
28
|
+
TRANSLATE_KEYFILE
|
29
|
+
GOOGLE_CLOUD_CREDENTIALS
|
30
|
+
GOOGLE_CLOUD_KEYFILE
|
31
|
+
GCLOUD_KEYFILE)
|
32
|
+
JSON_ENV_VARS = %w(TRANSLATE_CREDENTIALS_JSON
|
33
|
+
TRANSLATE_KEYFILE_JSON
|
34
|
+
GOOGLE_CLOUD_CREDENTIALS_JSON
|
35
|
+
GOOGLE_CLOUD_KEYFILE_JSON
|
36
|
+
GCLOUD_KEYFILE_JSON)
|
37
|
+
DEFAULT_PATHS = ["~/.config/gcloud/application_default_credentials.json"]
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
@@ -0,0 +1,663 @@
|
|
1
|
+
# Copyright 2019 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
|
16
|
+
module Google
|
17
|
+
module Cloud
|
18
|
+
module Translate
|
19
|
+
module V3
|
20
|
+
# Configures which glossary should be used for a specific target language,
|
21
|
+
# and defines options for applying that glossary.
|
22
|
+
# @!attribute [rw] glossary
|
23
|
+
# @return [String]
|
24
|
+
# Required. Specifies the glossary used for this translation. Use
|
25
|
+
# this format: projects/*/locations/*/glossaries/*
|
26
|
+
# @!attribute [rw] ignore_case
|
27
|
+
# @return [true, false]
|
28
|
+
# Optional. Indicates match is case-insensitive.
|
29
|
+
# Default value is false if missing.
|
30
|
+
class TranslateTextGlossaryConfig; end
|
31
|
+
|
32
|
+
# The request message for synchronous translation.
|
33
|
+
# @!attribute [rw] contents
|
34
|
+
# @return [Array<String>]
|
35
|
+
# Required. The content of the input in string format.
|
36
|
+
# We recommend the total content be less than 30k codepoints.
|
37
|
+
# Use BatchTranslateText for larger text.
|
38
|
+
# @!attribute [rw] mime_type
|
39
|
+
# @return [String]
|
40
|
+
# Optional. The format of the source text, for example, "text/html",
|
41
|
+
# "text/plain". If left blank, the MIME type defaults to "text/html".
|
42
|
+
# @!attribute [rw] source_language_code
|
43
|
+
# @return [String]
|
44
|
+
# Optional. The BCP-47 language code of the input text if
|
45
|
+
# known, for example, "en-US" or "sr-Latn". Supported language codes are
|
46
|
+
# listed in Language Support. If the source language isn't specified, the API
|
47
|
+
# attempts to identify the source language automatically and returns the
|
48
|
+
# source language within the response.
|
49
|
+
# @!attribute [rw] target_language_code
|
50
|
+
# @return [String]
|
51
|
+
# Required. The BCP-47 language code to use for translation of the input
|
52
|
+
# text, set to one of the language codes listed in Language Support.
|
53
|
+
# @!attribute [rw] parent
|
54
|
+
# @return [String]
|
55
|
+
# Required. Project or location to make a call. Must refer to a caller's
|
56
|
+
# project.
|
57
|
+
#
|
58
|
+
# Format: `projects/{project-number-or-id}` or
|
59
|
+
# `projects/{project-number-or-id}/locations/{location-id}`.
|
60
|
+
#
|
61
|
+
# For global calls, use `projects/{project-number-or-id}/locations/global` or
|
62
|
+
# `projects/{project-number-or-id}`.
|
63
|
+
#
|
64
|
+
# Non-global location is required for requests using AutoML models or
|
65
|
+
# custom glossaries.
|
66
|
+
#
|
67
|
+
# Models and glossaries must be within the same region (have same
|
68
|
+
# location-id), otherwise an INVALID_ARGUMENT (400) error is returned.
|
69
|
+
# @!attribute [rw] model
|
70
|
+
# @return [String]
|
71
|
+
# Optional. The `model` type requested for this translation.
|
72
|
+
#
|
73
|
+
# The format depends on model type:
|
74
|
+
#
|
75
|
+
# * AutoML Translation models:
|
76
|
+
# `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}`
|
77
|
+
#
|
78
|
+
# * General (built-in) models:
|
79
|
+
# `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`,
|
80
|
+
# `projects/{project-number-or-id}/locations/{location-id}/models/general/base`
|
81
|
+
#
|
82
|
+
#
|
83
|
+
# For global (non-regionalized) requests, use `location-id` `global`.
|
84
|
+
# For example,
|
85
|
+
# `projects/{project-number-or-id}/locations/global/models/general/nmt`.
|
86
|
+
#
|
87
|
+
# If missing, the system decides which google base model to use.
|
88
|
+
# @!attribute [rw] glossary_config
|
89
|
+
# @return [Google::Cloud::Translate::V3::TranslateTextGlossaryConfig]
|
90
|
+
# Optional. Glossary to be applied. The glossary must be
|
91
|
+
# within the same region (have the same location-id) as the model, otherwise
|
92
|
+
# an INVALID_ARGUMENT (400) error is returned.
|
93
|
+
# @!attribute [rw] labels
|
94
|
+
# @return [Hash{String => String}]
|
95
|
+
# Optional. The labels with user-defined metadata for the request.
|
96
|
+
#
|
97
|
+
# Label keys and values can be no longer than 63 characters
|
98
|
+
# (Unicode codepoints), can only contain lowercase letters, numeric
|
99
|
+
# characters, underscores and dashes. International characters are allowed.
|
100
|
+
# Label values are optional. Label keys must start with a letter.
|
101
|
+
#
|
102
|
+
# See https://cloud.google.com/translate/docs/labels for more information.
|
103
|
+
class TranslateTextRequest; end
|
104
|
+
|
105
|
+
# @!attribute [rw] translations
|
106
|
+
# @return [Array<Google::Cloud::Translate::V3::Translation>]
|
107
|
+
# Text translation responses with no glossary applied.
|
108
|
+
# This field has the same length as
|
109
|
+
# {Google::Cloud::Translate::V3::TranslateTextRequest#contents `contents`}.
|
110
|
+
# @!attribute [rw] glossary_translations
|
111
|
+
# @return [Array<Google::Cloud::Translate::V3::Translation>]
|
112
|
+
# Text translation responses if a glossary is provided in the request.
|
113
|
+
# This can be the same as
|
114
|
+
# {Google::Cloud::Translate::V3::TranslateTextResponse#translations `translations`}
|
115
|
+
# if no terms apply. This field has the same length as
|
116
|
+
# {Google::Cloud::Translate::V3::TranslateTextRequest#contents `contents`}.
|
117
|
+
class TranslateTextResponse; end
|
118
|
+
|
119
|
+
# A single translation response.
|
120
|
+
# @!attribute [rw] translated_text
|
121
|
+
# @return [String]
|
122
|
+
# Text translated into the target language.
|
123
|
+
# @!attribute [rw] model
|
124
|
+
# @return [String]
|
125
|
+
# Only present when `model` is present in the request.
|
126
|
+
# `model` here is normalized to have project number.
|
127
|
+
#
|
128
|
+
# For example:
|
129
|
+
# If the `model` requested in TranslationTextRequest is
|
130
|
+
# `projects/{project-id}/locations/{location-id}/models/general/nmt` then
|
131
|
+
# `model` here would be normalized to
|
132
|
+
# `projects/{project-number}/locations/{location-id}/models/general/nmt`.
|
133
|
+
# @!attribute [rw] detected_language_code
|
134
|
+
# @return [String]
|
135
|
+
# The BCP-47 language code of source text in the initial request, detected
|
136
|
+
# automatically, if no source language was passed within the initial
|
137
|
+
# request. If the source language was passed, auto-detection of the language
|
138
|
+
# does not occur and this field is empty.
|
139
|
+
# @!attribute [rw] glossary_config
|
140
|
+
# @return [Google::Cloud::Translate::V3::TranslateTextGlossaryConfig]
|
141
|
+
# The `glossary_config` used for this translation.
|
142
|
+
class Translation; end
|
143
|
+
|
144
|
+
# The request message for language detection.
|
145
|
+
# @!attribute [rw] parent
|
146
|
+
# @return [String]
|
147
|
+
# Required. Project or location to make a call. Must refer to a caller's
|
148
|
+
# project.
|
149
|
+
#
|
150
|
+
# Format: `projects/{project-number-or-id}/locations/{location-id}` or
|
151
|
+
# `projects/{project-number-or-id}`.
|
152
|
+
#
|
153
|
+
# For global calls, use `projects/{project-number-or-id}/locations/global` or
|
154
|
+
# `projects/{project-number-or-id}`.
|
155
|
+
#
|
156
|
+
# Only models within the same region (has same location-id) can be used.
|
157
|
+
# Otherwise an INVALID_ARGUMENT (400) error is returned.
|
158
|
+
# @!attribute [rw] model
|
159
|
+
# @return [String]
|
160
|
+
# Optional. The language detection model to be used.
|
161
|
+
#
|
162
|
+
# Format:
|
163
|
+
# `projects/{project-number-or-id}/locations/{location-id}/models/language-detection/{model-id}`
|
164
|
+
#
|
165
|
+
# Only one language detection model is currently supported:
|
166
|
+
# `projects/{project-number-or-id}/locations/{location-id}/models/language-detection/default`.
|
167
|
+
#
|
168
|
+
# If not specified, the default model is used.
|
169
|
+
# @!attribute [rw] content
|
170
|
+
# @return [String]
|
171
|
+
# The content of the input stored as a string.
|
172
|
+
# @!attribute [rw] mime_type
|
173
|
+
# @return [String]
|
174
|
+
# Optional. The format of the source text, for example, "text/html",
|
175
|
+
# "text/plain". If left blank, the MIME type defaults to "text/html".
|
176
|
+
# @!attribute [rw] labels
|
177
|
+
# @return [Hash{String => String}]
|
178
|
+
# Optional. The labels with user-defined metadata for the request.
|
179
|
+
#
|
180
|
+
# Label keys and values can be no longer than 63 characters
|
181
|
+
# (Unicode codepoints), can only contain lowercase letters, numeric
|
182
|
+
# characters, underscores and dashes. International characters are allowed.
|
183
|
+
# Label values are optional. Label keys must start with a letter.
|
184
|
+
#
|
185
|
+
# See https://cloud.google.com/translate/docs/labels for more information.
|
186
|
+
class DetectLanguageRequest; end
|
187
|
+
|
188
|
+
# The response message for language detection.
|
189
|
+
# @!attribute [rw] language_code
|
190
|
+
# @return [String]
|
191
|
+
# The BCP-47 language code of source content in the request, detected
|
192
|
+
# automatically.
|
193
|
+
# @!attribute [rw] confidence
|
194
|
+
# @return [Float]
|
195
|
+
# The confidence of the detection result for this language.
|
196
|
+
class DetectedLanguage; end
|
197
|
+
|
198
|
+
# The response message for language detection.
|
199
|
+
# @!attribute [rw] languages
|
200
|
+
# @return [Array<Google::Cloud::Translate::V3::DetectedLanguage>]
|
201
|
+
# A list of detected languages sorted by detection confidence in descending
|
202
|
+
# order. The most probable language first.
|
203
|
+
class DetectLanguageResponse; end
|
204
|
+
|
205
|
+
# The request message for discovering supported languages.
|
206
|
+
# @!attribute [rw] parent
|
207
|
+
# @return [String]
|
208
|
+
# Required. Project or location to make a call. Must refer to a caller's
|
209
|
+
# project.
|
210
|
+
#
|
211
|
+
# Format: `projects/{project-number-or-id}` or
|
212
|
+
# `projects/{project-number-or-id}/locations/{location-id}`.
|
213
|
+
#
|
214
|
+
# For global calls, use `projects/{project-number-or-id}/locations/global` or
|
215
|
+
# `projects/{project-number-or-id}`.
|
216
|
+
#
|
217
|
+
# Non-global location is required for AutoML models.
|
218
|
+
#
|
219
|
+
# Only models within the same region (have same location-id) can be used,
|
220
|
+
# otherwise an INVALID_ARGUMENT (400) error is returned.
|
221
|
+
# @!attribute [rw] display_language_code
|
222
|
+
# @return [String]
|
223
|
+
# Optional. The language to use to return localized, human readable names
|
224
|
+
# of supported languages. If missing, then display names are not returned
|
225
|
+
# in a response.
|
226
|
+
# @!attribute [rw] model
|
227
|
+
# @return [String]
|
228
|
+
# Optional. Get supported languages of this model.
|
229
|
+
#
|
230
|
+
# The format depends on model type:
|
231
|
+
#
|
232
|
+
# * AutoML Translation models:
|
233
|
+
# `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}`
|
234
|
+
#
|
235
|
+
# * General (built-in) models:
|
236
|
+
# `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`,
|
237
|
+
# `projects/{project-number-or-id}/locations/{location-id}/models/general/base`
|
238
|
+
#
|
239
|
+
#
|
240
|
+
# Returns languages supported by the specified model.
|
241
|
+
# If missing, we get supported languages of Google general base (PBMT) model.
|
242
|
+
class GetSupportedLanguagesRequest; end
|
243
|
+
|
244
|
+
# The response message for discovering supported languages.
|
245
|
+
# @!attribute [rw] languages
|
246
|
+
# @return [Array<Google::Cloud::Translate::V3::SupportedLanguage>]
|
247
|
+
# A list of supported language responses. This list contains an entry
|
248
|
+
# for each language the Translation API supports.
|
249
|
+
class SupportedLanguages; end
|
250
|
+
|
251
|
+
# A single supported language response corresponds to information related
|
252
|
+
# to one supported language.
|
253
|
+
# @!attribute [rw] language_code
|
254
|
+
# @return [String]
|
255
|
+
# Supported language code, generally consisting of its ISO 639-1
|
256
|
+
# identifier, for example, 'en', 'ja'. In certain cases, BCP-47 codes
|
257
|
+
# including language and region identifiers are returned (for example,
|
258
|
+
# 'zh-TW' and 'zh-CN')
|
259
|
+
# @!attribute [rw] display_name
|
260
|
+
# @return [String]
|
261
|
+
# Human readable name of the language localized in the display language
|
262
|
+
# specified in the request.
|
263
|
+
# @!attribute [rw] support_source
|
264
|
+
# @return [true, false]
|
265
|
+
# Can be used as source language.
|
266
|
+
# @!attribute [rw] support_target
|
267
|
+
# @return [true, false]
|
268
|
+
# Can be used as target language.
|
269
|
+
class SupportedLanguage; end
|
270
|
+
|
271
|
+
# The Google Cloud Storage location for the input content.
|
272
|
+
# @!attribute [rw] input_uri
|
273
|
+
# @return [String]
|
274
|
+
# Required. Source data URI. For example, `gs://my_bucket/my_object`.
|
275
|
+
class GcsSource; end
|
276
|
+
|
277
|
+
# Input configuration for BatchTranslateText request.
|
278
|
+
# @!attribute [rw] mime_type
|
279
|
+
# @return [String]
|
280
|
+
# Optional. Can be "text/plain" or "text/html".
|
281
|
+
# For `.tsv`, "text/html" is used if mime_type is missing.
|
282
|
+
# For `.html`, this field must be "text/html" or empty.
|
283
|
+
# For `.txt`, this field must be "text/plain" or empty.
|
284
|
+
# @!attribute [rw] gcs_source
|
285
|
+
# @return [Google::Cloud::Translate::V3::GcsSource]
|
286
|
+
# Required. Google Cloud Storage location for the source input.
|
287
|
+
# This can be a single file (for example,
|
288
|
+
# `gs://translation-test/input.tsv`) or a wildcard (for example,
|
289
|
+
# `gs://translation-test/*`). If a file extension is `.tsv`, it can
|
290
|
+
# contain either one or two columns. The first column (optional) is the id
|
291
|
+
# of the text request. If the first column is missing, we use the row
|
292
|
+
# number (0-based) from the input file as the ID in the output file. The
|
293
|
+
# second column is the actual text to be
|
294
|
+
# translated. We recommend each row be <= 10K Unicode codepoints,
|
295
|
+
# otherwise an error might be returned.
|
296
|
+
# Note that the input tsv must be RFC 4180 compliant.
|
297
|
+
#
|
298
|
+
# You could use https://github.com/Clever/csvlint to check potential
|
299
|
+
# formatting errors in your tsv file.
|
300
|
+
# csvlint --delimiter='\t' your_input_file.tsv
|
301
|
+
#
|
302
|
+
# The other supported file extensions are `.txt` or `.html`, which is
|
303
|
+
# treated as a single large chunk of text.
|
304
|
+
class InputConfig; end
|
305
|
+
|
306
|
+
# The Google Cloud Storage location for the output content.
|
307
|
+
# @!attribute [rw] output_uri_prefix
|
308
|
+
# @return [String]
|
309
|
+
# Required. There must be no files under 'output_uri_prefix'.
|
310
|
+
# 'output_uri_prefix' must end with "/" and start with "gs://", otherwise an
|
311
|
+
# INVALID_ARGUMENT (400) error is returned.
|
312
|
+
class GcsDestination; end
|
313
|
+
|
314
|
+
# Output configuration for BatchTranslateText request.
|
315
|
+
# @!attribute [rw] gcs_destination
|
316
|
+
# @return [Google::Cloud::Translate::V3::GcsDestination]
|
317
|
+
# Google Cloud Storage destination for output content.
|
318
|
+
# For every single input file (for example, gs://a/b/c.[extension]), we
|
319
|
+
# generate at most 2 * n output files. (n is the # of target_language_codes
|
320
|
+
# in the BatchTranslateTextRequest).
|
321
|
+
#
|
322
|
+
# Output files (tsv) generated are compliant with RFC 4180 except that
|
323
|
+
# record delimiters are '\n' instead of '\r\n'. We don't provide any way to
|
324
|
+
# change record delimiters.
|
325
|
+
#
|
326
|
+
# While the input files are being processed, we write/update an index file
|
327
|
+
# 'index.csv' under 'output_uri_prefix' (for example,
|
328
|
+
# gs://translation-test/index.csv) The index file is generated/updated as
|
329
|
+
# new files are being translated. The format is:
|
330
|
+
#
|
331
|
+
# input_file,target_language_code,translations_file,errors_file,
|
332
|
+
# glossary_translations_file,glossary_errors_file
|
333
|
+
#
|
334
|
+
# input_file is one file we matched using gcs_source.input_uri.
|
335
|
+
# target_language_code is provided in the request.
|
336
|
+
# translations_file contains the translations. (details provided below)
|
337
|
+
# errors_file contains the errors during processing of the file. (details
|
338
|
+
# below). Both translations_file and errors_file could be empty
|
339
|
+
# strings if we have no content to output.
|
340
|
+
# glossary_translations_file and glossary_errors_file are always empty
|
341
|
+
# strings if the input_file is tsv. They could also be empty if we have no
|
342
|
+
# content to output.
|
343
|
+
#
|
344
|
+
# Once a row is present in index.csv, the input/output matching never
|
345
|
+
# changes. Callers should also expect all the content in input_file are
|
346
|
+
# processed and ready to be consumed (that is, no partial output file is
|
347
|
+
# written).
|
348
|
+
#
|
349
|
+
# The format of translations_file (for target language code 'trg') is:
|
350
|
+
# gs://translation_test/a_b_c_'trg'_translations.[extension]
|
351
|
+
#
|
352
|
+
# If the input file extension is tsv, the output has the following
|
353
|
+
# columns:
|
354
|
+
# Column 1: ID of the request provided in the input, if it's not
|
355
|
+
# provided in the input, then the input row number is used (0-based).
|
356
|
+
# Column 2: source sentence.
|
357
|
+
# Column 3: translation without applying a glossary. Empty string if there
|
358
|
+
# is an error.
|
359
|
+
# Column 4 (only present if a glossary is provided in the request):
|
360
|
+
# translation after applying the glossary. Empty string if there is an
|
361
|
+
# error applying the glossary. Could be same string as column 3 if there is
|
362
|
+
# no glossary applied.
|
363
|
+
#
|
364
|
+
# If input file extension is a txt or html, the translation is directly
|
365
|
+
# written to the output file. If glossary is requested, a separate
|
366
|
+
# glossary_translations_file has format of
|
367
|
+
# gs://translation_test/a_b_c_'trg'_glossary_translations.[extension]
|
368
|
+
#
|
369
|
+
# The format of errors file (for target language code 'trg') is:
|
370
|
+
# gs://translation_test/a_b_c_'trg'_errors.[extension]
|
371
|
+
#
|
372
|
+
# If the input file extension is tsv, errors_file contains the following:
|
373
|
+
# Column 1: ID of the request provided in the input, if it's not
|
374
|
+
# provided in the input, then the input row number is used (0-based).
|
375
|
+
# Column 2: source sentence.
|
376
|
+
# Column 3: Error detail for the translation. Could be empty.
|
377
|
+
# Column 4 (only present if a glossary is provided in the request):
|
378
|
+
# Error when applying the glossary.
|
379
|
+
#
|
380
|
+
# If the input file extension is txt or html, glossary_error_file will be
|
381
|
+
# generated that contains error details. glossary_error_file has format of
|
382
|
+
# gs://translation_test/a_b_c_'trg'_glossary_errors.[extension]
|
383
|
+
class OutputConfig; end
|
384
|
+
|
385
|
+
# The batch translation request.
|
386
|
+
# @!attribute [rw] parent
|
387
|
+
# @return [String]
|
388
|
+
# Required. Location to make a call. Must refer to a caller's project.
|
389
|
+
#
|
390
|
+
# Format: `projects/{project-number-or-id}/locations/{location-id}`.
|
391
|
+
#
|
392
|
+
# The `global` location is not supported for batch translation.
|
393
|
+
#
|
394
|
+
# Only AutoML Translation models or glossaries within the same region (have
|
395
|
+
# the same location-id) can be used, otherwise an INVALID_ARGUMENT (400)
|
396
|
+
# error is returned.
|
397
|
+
# @!attribute [rw] source_language_code
|
398
|
+
# @return [String]
|
399
|
+
# Required. Source language code.
|
400
|
+
# @!attribute [rw] target_language_codes
|
401
|
+
# @return [Array<String>]
|
402
|
+
# Required. Specify up to 10 language codes here.
|
403
|
+
# @!attribute [rw] models
|
404
|
+
# @return [Hash{String => String}]
|
405
|
+
# Optional. The models to use for translation. Map's key is target language
|
406
|
+
# code. Map's value is model name. Value can be a built-in general model,
|
407
|
+
# or an AutoML Translation model.
|
408
|
+
#
|
409
|
+
# The value format depends on model type:
|
410
|
+
#
|
411
|
+
# * AutoML Translation models:
|
412
|
+
# `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}`
|
413
|
+
#
|
414
|
+
# * General (built-in) models:
|
415
|
+
# `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`,
|
416
|
+
# `projects/{project-number-or-id}/locations/{location-id}/models/general/base`
|
417
|
+
#
|
418
|
+
#
|
419
|
+
# If the map is empty or a specific model is
|
420
|
+
# not requested for a language pair, then default google model (nmt) is used.
|
421
|
+
# @!attribute [rw] input_configs
|
422
|
+
# @return [Array<Google::Cloud::Translate::V3::InputConfig>]
|
423
|
+
# Required. Input configurations.
|
424
|
+
# The total number of files matched should be <= 1000.
|
425
|
+
# The total content size should be <= 100M Unicode codepoints.
|
426
|
+
# The files must use UTF-8 encoding.
|
427
|
+
# @!attribute [rw] output_config
|
428
|
+
# @return [Google::Cloud::Translate::V3::OutputConfig]
|
429
|
+
# Required. Output configuration.
|
430
|
+
# If 2 input configs match to the same file (that is, same input path),
|
431
|
+
# we don't generate output for duplicate inputs.
|
432
|
+
# @!attribute [rw] glossaries
|
433
|
+
# @return [Hash{String => Google::Cloud::Translate::V3::TranslateTextGlossaryConfig}]
|
434
|
+
# Optional. Glossaries to be applied for translation.
|
435
|
+
# It's keyed by target language code.
|
436
|
+
# @!attribute [rw] labels
|
437
|
+
# @return [Hash{String => String}]
|
438
|
+
# Optional. The labels with user-defined metadata for the request.
|
439
|
+
#
|
440
|
+
# Label keys and values can be no longer than 63 characters
|
441
|
+
# (Unicode codepoints), can only contain lowercase letters, numeric
|
442
|
+
# characters, underscores and dashes. International characters are allowed.
|
443
|
+
# Label values are optional. Label keys must start with a letter.
|
444
|
+
#
|
445
|
+
# See https://cloud.google.com/translate/docs/labels for more information.
|
446
|
+
class BatchTranslateTextRequest; end
|
447
|
+
|
448
|
+
# State metadata for the batch translation operation.
|
449
|
+
# @!attribute [rw] state
|
450
|
+
# @return [Google::Cloud::Translate::V3::BatchTranslateMetadata::State]
|
451
|
+
# The state of the operation.
|
452
|
+
# @!attribute [rw] translated_characters
|
453
|
+
# @return [Integer]
|
454
|
+
# Number of successfully translated characters so far (Unicode codepoints).
|
455
|
+
# @!attribute [rw] failed_characters
|
456
|
+
# @return [Integer]
|
457
|
+
# Number of characters that have failed to process so far (Unicode
|
458
|
+
# codepoints).
|
459
|
+
# @!attribute [rw] total_characters
|
460
|
+
# @return [Integer]
|
461
|
+
# Total number of characters (Unicode codepoints).
|
462
|
+
# This is the total number of codepoints from input files times the number of
|
463
|
+
# target languages and appears here shortly after the call is submitted.
|
464
|
+
# @!attribute [rw] submit_time
|
465
|
+
# @return [Google::Protobuf::Timestamp]
|
466
|
+
# Time when the operation was submitted.
|
467
|
+
class BatchTranslateMetadata; end
|
468
|
+
|
469
|
+
# Stored in the
|
470
|
+
# {Google::Longrunning::Operation#response}
|
471
|
+
# field returned by BatchTranslateText if at least one sentence is translated
|
472
|
+
# successfully.
|
473
|
+
# @!attribute [rw] total_characters
|
474
|
+
# @return [Integer]
|
475
|
+
# Total number of characters (Unicode codepoints).
|
476
|
+
# @!attribute [rw] translated_characters
|
477
|
+
# @return [Integer]
|
478
|
+
# Number of successfully translated characters (Unicode codepoints).
|
479
|
+
# @!attribute [rw] failed_characters
|
480
|
+
# @return [Integer]
|
481
|
+
# Number of characters that have failed to process (Unicode codepoints).
|
482
|
+
# @!attribute [rw] submit_time
|
483
|
+
# @return [Google::Protobuf::Timestamp]
|
484
|
+
# Time when the operation was submitted.
|
485
|
+
# @!attribute [rw] end_time
|
486
|
+
# @return [Google::Protobuf::Timestamp]
|
487
|
+
# The time when the operation is finished and
|
488
|
+
# {Google::Longrunning::Operation#done} is
|
489
|
+
# set to true.
|
490
|
+
class BatchTranslateResponse; end
|
491
|
+
|
492
|
+
# Input configuration for glossaries.
|
493
|
+
# @!attribute [rw] gcs_source
|
494
|
+
# @return [Google::Cloud::Translate::V3::GcsSource]
|
495
|
+
# Required. Google Cloud Storage location of glossary data.
|
496
|
+
# File format is determined based on the filename extension. API returns
|
497
|
+
# [google.rpc.Code.INVALID_ARGUMENT] for unsupported URI-s and file
|
498
|
+
# formats. Wildcards are not allowed. This must be a single file in one of
|
499
|
+
# the following formats:
|
500
|
+
#
|
501
|
+
# For unidirectional glossaries:
|
502
|
+
#
|
503
|
+
# * TSV/CSV (`.tsv`/`.csv`): 2 column file, tab- or comma-separated.
|
504
|
+
# The first column is source text. The second column is target text.
|
505
|
+
# The file must not contain headers. That is, the first row is data, not
|
506
|
+
# column names.
|
507
|
+
#
|
508
|
+
# * TMX (`.tmx`): TMX file with parallel data defining source/target term
|
509
|
+
# pairs.
|
510
|
+
#
|
511
|
+
# For equivalent term sets glossaries:
|
512
|
+
#
|
513
|
+
# * CSV (`.csv`): Multi-column CSV file defining equivalent glossary terms
|
514
|
+
# in multiple languages. The format is defined for Google Translation
|
515
|
+
# Toolkit and documented in [Use a
|
516
|
+
# glossary](https://support.google.com/translatortoolkit/answer/6306379?hl=en).
|
517
|
+
class GlossaryInputConfig; end
|
518
|
+
|
519
|
+
# Represents a glossary built from user provided data.
|
520
|
+
# @!attribute [rw] name
|
521
|
+
# @return [String]
|
522
|
+
# Required. The resource name of the glossary. Glossary names have the form
|
523
|
+
# `projects/{project-number-or-id}/locations/{location-id}/glossaries/{glossary-id}`.
|
524
|
+
# @!attribute [rw] language_pair
|
525
|
+
# @return [Google::Cloud::Translate::V3::Glossary::LanguageCodePair]
|
526
|
+
# Used with unidirectional glossaries.
|
527
|
+
# @!attribute [rw] language_codes_set
|
528
|
+
# @return [Google::Cloud::Translate::V3::Glossary::LanguageCodesSet]
|
529
|
+
# Used with equivalent term set glossaries.
|
530
|
+
# @!attribute [rw] input_config
|
531
|
+
# @return [Google::Cloud::Translate::V3::GlossaryInputConfig]
|
532
|
+
# Required. Provides examples to build the glossary from.
|
533
|
+
# Total glossary must not exceed 10M Unicode codepoints.
|
534
|
+
# @!attribute [rw] entry_count
|
535
|
+
# @return [Integer]
|
536
|
+
# Output only. The number of entries defined in the glossary.
|
537
|
+
# @!attribute [rw] submit_time
|
538
|
+
# @return [Google::Protobuf::Timestamp]
|
539
|
+
# Output only. When CreateGlossary was called.
|
540
|
+
# @!attribute [rw] end_time
|
541
|
+
# @return [Google::Protobuf::Timestamp]
|
542
|
+
# Output only. When the glossary creation was finished.
|
543
|
+
class Glossary
|
544
|
+
# Used with unidirectional glossaries.
|
545
|
+
# @!attribute [rw] source_language_code
|
546
|
+
# @return [String]
|
547
|
+
# Required. The BCP-47 language code of the input text, for example,
|
548
|
+
# "en-US". Expected to be an exact match for GlossaryTerm.language_code.
|
549
|
+
# @!attribute [rw] target_language_code
|
550
|
+
# @return [String]
|
551
|
+
# Required. The BCP-47 language code for translation output, for example,
|
552
|
+
# "zh-CN". Expected to be an exact match for GlossaryTerm.language_code.
|
553
|
+
class LanguageCodePair; end
|
554
|
+
|
555
|
+
# Used with equivalent term set glossaries.
|
556
|
+
# @!attribute [rw] language_codes
|
557
|
+
# @return [Array<String>]
|
558
|
+
# The BCP-47 language code(s) for terms defined in the glossary.
|
559
|
+
# All entries are unique. The list contains at least two entries.
|
560
|
+
# Expected to be an exact match for GlossaryTerm.language_code.
|
561
|
+
class LanguageCodesSet; end
|
562
|
+
end
|
563
|
+
|
564
|
+
# Request message for CreateGlossary.
|
565
|
+
# @!attribute [rw] parent
|
566
|
+
# @return [String]
|
567
|
+
# Required. The project name.
|
568
|
+
# @!attribute [rw] glossary
|
569
|
+
# @return [Google::Cloud::Translate::V3::Glossary]
|
570
|
+
# Required. The glossary to create.
|
571
|
+
class CreateGlossaryRequest; end
|
572
|
+
|
573
|
+
# Request message for GetGlossary.
|
574
|
+
# @!attribute [rw] name
|
575
|
+
# @return [String]
|
576
|
+
# Required. The name of the glossary to retrieve.
|
577
|
+
class GetGlossaryRequest; end
|
578
|
+
|
579
|
+
# Request message for DeleteGlossary.
|
580
|
+
# @!attribute [rw] name
|
581
|
+
# @return [String]
|
582
|
+
# Required. The name of the glossary to delete.
|
583
|
+
class DeleteGlossaryRequest; end
|
584
|
+
|
585
|
+
# Request message for ListGlossaries.
|
586
|
+
# @!attribute [rw] parent
|
587
|
+
# @return [String]
|
588
|
+
# Required. The name of the project from which to list all of the glossaries.
|
589
|
+
# @!attribute [rw] page_size
|
590
|
+
# @return [Integer]
|
591
|
+
# Optional. Requested page size. The server may return fewer glossaries than
|
592
|
+
# requested. If unspecified, the server picks an appropriate default.
|
593
|
+
# @!attribute [rw] page_token
|
594
|
+
# @return [String]
|
595
|
+
# Optional. A token identifying a page of results the server should return.
|
596
|
+
# Typically, this is the value of [ListGlossariesResponse.next_page_token]
|
597
|
+
# returned from the previous call to `ListGlossaries` method.
|
598
|
+
# The first page is returned if `page_token`is empty or missing.
|
599
|
+
# @!attribute [rw] filter
|
600
|
+
# @return [String]
|
601
|
+
# Optional. Filter specifying constraints of a list operation.
|
602
|
+
# Filtering is not supported yet, and the parameter currently has no effect.
|
603
|
+
# If missing, no filtering is performed.
|
604
|
+
class ListGlossariesRequest; end
|
605
|
+
|
606
|
+
# Response message for ListGlossaries.
|
607
|
+
# @!attribute [rw] glossaries
|
608
|
+
# @return [Array<Google::Cloud::Translate::V3::Glossary>]
|
609
|
+
# The list of glossaries for a project.
|
610
|
+
# @!attribute [rw] next_page_token
|
611
|
+
# @return [String]
|
612
|
+
# A token to retrieve a page of results. Pass this value in the
|
613
|
+
# [ListGlossariesRequest.page_token] field in the subsequent call to
|
614
|
+
# `ListGlossaries` method to retrieve the next page of results.
|
615
|
+
class ListGlossariesResponse; end
|
616
|
+
|
617
|
+
# Stored in the
|
618
|
+
# {Google::Longrunning::Operation#metadata}
|
619
|
+
# field returned by CreateGlossary.
|
620
|
+
# @!attribute [rw] name
|
621
|
+
# @return [String]
|
622
|
+
# The name of the glossary that is being created.
|
623
|
+
# @!attribute [rw] state
|
624
|
+
# @return [Google::Cloud::Translate::V3::CreateGlossaryMetadata::State]
|
625
|
+
# The current state of the glossary creation operation.
|
626
|
+
# @!attribute [rw] submit_time
|
627
|
+
# @return [Google::Protobuf::Timestamp]
|
628
|
+
# The time when the operation was submitted to the server.
|
629
|
+
class CreateGlossaryMetadata; end
|
630
|
+
|
631
|
+
# Stored in the
|
632
|
+
# {Google::Longrunning::Operation#metadata}
|
633
|
+
# field returned by DeleteGlossary.
|
634
|
+
# @!attribute [rw] name
|
635
|
+
# @return [String]
|
636
|
+
# The name of the glossary that is being deleted.
|
637
|
+
# @!attribute [rw] state
|
638
|
+
# @return [Google::Cloud::Translate::V3::DeleteGlossaryMetadata::State]
|
639
|
+
# The current state of the glossary deletion operation.
|
640
|
+
# @!attribute [rw] submit_time
|
641
|
+
# @return [Google::Protobuf::Timestamp]
|
642
|
+
# The time when the operation was submitted to the server.
|
643
|
+
class DeleteGlossaryMetadata; end
|
644
|
+
|
645
|
+
# Stored in the
|
646
|
+
# {Google::Longrunning::Operation#response}
|
647
|
+
# field returned by DeleteGlossary.
|
648
|
+
# @!attribute [rw] name
|
649
|
+
# @return [String]
|
650
|
+
# The name of the deleted glossary.
|
651
|
+
# @!attribute [rw] submit_time
|
652
|
+
# @return [Google::Protobuf::Timestamp]
|
653
|
+
# The time when the operation was submitted to the server.
|
654
|
+
# @!attribute [rw] end_time
|
655
|
+
# @return [Google::Protobuf::Timestamp]
|
656
|
+
# The time when the glossary deletion is finished and
|
657
|
+
# {Google::Longrunning::Operation#done} is
|
658
|
+
# set to true.
|
659
|
+
class DeleteGlossaryResponse; end
|
660
|
+
end
|
661
|
+
end
|
662
|
+
end
|
663
|
+
end
|