Translation Client#

Client for interacting with the Google Cloud Translation API.

google.cloud.translate.client.BASE = 'base'#

Base translation model.

class google.cloud.translate.client.Client(target_language='en', credentials=None, http=None)[source]#

Bases: google.cloud.client.Client

Client to bundle configuration needed for API requests.

Parameters:
  • target_language (str) – (Optional) The target language used for translations and language names. (Defaults to ENGLISH_ISO_639.)
  • credentials (Credentials) – (Optional) The OAuth2 Credentials to use for this client. If not passed (and if no http object is passed), falls back to the default inferred from the environment.
  • http (Http) – (Optional) HTTP object to make requests. Can be any object that defines request() with the same interface as request(). If not passed, an http object is created that is bound to the credentials for the current object.
SCOPE = ('https://www.googleapis.com/auth/cloud-platform',)#

The scopes required for authenticating.

detect_language(values)[source]#

Detect the language of a string or list of strings.

See: https://cloud.google.com/translate/docs/detecting-language

Parameters:values (str or list) – String or list of strings that will have language detected.
Return type:str or list
Returns:A list of dictionaries for each queried value. Each dictionary typically contains three keys
  • confidence: The confidence in language detection, a float between 0 and 1.
  • input: The corresponding input value.
  • language: The detected language (as an ISO 639-1 language code).

though the key confidence may not always be present.

If only a single value is passed, then only a single dictionary will be returned.

Raises:ValueError if the number of detections is not equal to the number of values. ValueError if a value produces a list of detections with 0 or multiple results in it.
get_languages(target_language=None)[source]#

Get list of supported languages for translation.

Response

See: https://cloud.google.com/translate/docs/discovering-supported-languages

Parameters:target_language (str) – (Optional) The language used to localize returned language names. Defaults to the target language on the current client.
Return type:list
Returns:List of dictionaries. Each dictionary contains a supported ISO 639-1 language code (using the dictionary key language). If target_language is passed, each dictionary will also contain the name of each supported language (localized to the target language).
translate(values, target_language=None, format_=None, source_language=None, customization_ids=(), model=None)[source]#

Translate a string or list of strings.

See: https://cloud.google.com/translate/docs/translating-text

Parameters:
  • values (str or list) – String or list of strings to translate.
  • target_language (str) – The language to translate results into. This is required by the API and defaults to the target language of the current instance.
  • format (str) – (Optional) One of text or html, to specify if the input text is plain text or HTML.
  • source_language (str) – (Optional) The language of the text to be translated.
  • customization_ids (str or list) – (Optional) ID or list of customization IDs for translation. Sets the cid parameter in the query.
  • model (str) – (Optional) The model used to translate the text. The only accepted values are BASE and NMT.
Return type:

str or list

Returns:

A list of dictionaries for each queried value. Each dictionary typically contains three keys (though not all will be present in all cases)

  • detectedSourceLanguage: The detected language (as an ISO 639-1 language code) of the text.
  • translatedText: The translation of the text into the target language.
  • input: The corresponding input value.
  • model: The model used to translate the text.

If only a single value is passed, then only a single dictionary will be returned.

Raises:

ValueError if the number of values and translations differ.

google.cloud.translate.client.ENGLISH_ISO_639 = 'en'#

ISO 639-1 language code for English.

google.cloud.translate.client.NMT = 'nmt'#

Neural Machine Translation model.