Il servizio Vertex AI Translation nell&Google Distributed Cloud39;appliance GDC con air gap consente di tradurre testo normale e HTML tra lingue supportate.
Puoi inviare richieste all'API Vertex AI Translation utilizzando curl o la libreria client Python. L'API fornisce anche metodi per rilevare le lingue di origine ed elencare le lingue supportate.
Prima di iniziare
Prima di poter iniziare a utilizzare l'API Vertex AI Translation, devi avere un progetto in cui sia abilitata l'API Vertex AI Translation e le credenziali appropriate. Puoi anche installare librerie client per facilitare le chiamate all'API. Per saperne di più, consulta Configura un progetto di traduzione.
Traduci testo
Il metodo translateText accetta il testo di input in una determinata lingua e restituisce il testo tradotto in un'altra lingua. Puoi inserire testo normale o HTML come input.
Se inserisci testo HTML, il metodo translateText traduce solo il testo tra i tag HTML senza tradurre i tag. Tuttavia, traduce gli attributi nei tag HTML5, come gli attributi alt. Un esempio di utilizzo di tag e attributi HTML5 è utilizzato nella sintassi per escludere il testo dalla traduzione.
L'output conserva i tag HTML non tradotti e include il testo tradotto tra i tag.
Invia una richiesta curl all'API preaddestrata Vertex AI Translation. In caso contrario, interagisci con l'API preaddestrata Vertex AI Translation da uno script Python per tradurre il testo da una lingua all'altra.
Gli esempi seguenti mostrano come tradurre un testo di input da una lingua all'altra:
curl
Segui questi passaggi per effettuare una richiesta curl:
Effettua la richiesta:
curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:translateText -d '{"parent": "projects/PROJECT_ID", "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE", "contents": ["INPUT_TEXT"]}'
Sostituisci quanto segue:
TOKEN: il token di autenticazione che hai ottenuto.ENDPOINT: l'endpoint di Vertex AI Translation che utilizzi per la tua organizzazione. Per saperne di più, visualizza lo stato del servizio e gli endpoint.PROJECT_ID: il tuo ID progetto.SOURCE_LANGUAGE: il codice lingua del testo di input. Consulta l'elenco delle lingue supportate e i relativi codici lingua.TARGET_LANGUAGE: il codice lingua in cui vuoi tradurre il testo. Consulta l'elenco delle lingue supportate e i relativi codici lingua.INPUT_TEXT: il testo di input nella lingua di origine.
Utilizza il campo mime_type per specificare un tipo di file. Imposta il campo mime_type su uno dei seguenti valori:
text/plain: l'input è testo normale.text/html: l'input è un testo HTML.
Se il campo mime_type è vuoto, il valore predefinito è text/html.
L'esempio seguente utilizza il campo mime_type:
curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:translateText -d '{"mime_type": "text/html", "parent": "projects/PROJECT_ID", "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE", "contents": ["INPUT_TEXT"]}'
L'output restituisce il testo tradotto.
Python
Segui questi passaggi per utilizzare il servizio Vertex AI Translation da uno script Python:
Installa l'ultima versione della libreria client di Vertex AI Translation.
Imposta le variabili di ambiente richieste in uno script Python.
Aggiungi il seguente codice allo script Python che hai creato:
from google.cloud import translate import google.auth from google.auth.transport import requests from google.api_core.client_options import ClientOptions audience = "https://ENDPOINT:443" api_endpoint="ENDPOINT:443" def translate_client(creds): opts = ClientOptions(api_endpoint=api_endpoint) return translate.TranslationServiceClient(credentials=creds, client_options=opts) def main(): creds = None try: creds, project_id = google.auth.default() creds = creds.with_gdch_audience(audience) req = requests.Request() creds.refresh(req) except Exception as e: print("Caught exception" + str(e)) raise e return creds def translate_func(creds): tc = translate_client(creds) req = { "parent": "projects/PROJECT_ID", "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE", "mime_type": "text/plain", "contents": ["INPUT_TEXT"] } resp = tc.translate_text(req) print(resp) if __name__=="__main__": creds = main() translate_func(creds)Sostituisci quanto segue:
ENDPOINT: l'endpoint di Vertex AI Translation che utilizzi per la tua organizzazione. Per saperne di più, visualizza lo stato del servizio e gli endpoint.PROJECT_ID: il tuo ID progetto.SOURCE_LANGUAGE: il codice lingua del testo di input. Consulta l'elenco delle lingue supportate e i relativi codici lingua.TARGET_LANGUAGE: il codice lingua in cui vuoi tradurre il testo. Consulta l'elenco delle lingue supportate e i relativi codici lingua.INPUT_TEXT: il testo di input nella lingua di origine.
Utilizza il campo
mime_typeper specificare un tipo di file. Imposta il campomime_typesu uno dei seguenti valori:text/plain: l'input è testo normale.text/html: l'input è un testo HTML.
Se il campo
mime_typeè vuoto, il valore predefinito ètext/html.Salva lo script Python.
Esegui lo script Python per tradurre il testo:
python SCRIPT_NAMESostituisci
SCRIPT_NAMEcon il nome che hai assegnato allo script Python, ad esempiotranslation.py.
Escludi il testo dalla traduzione
Utilizza uno dei seguenti tag HTML nel campo contents delle richieste per escludere parti del testo dalla traduzione:
<span translate="no">"TEXT"</span><span class="notranslate">"TEXT"</span>
Sostituisci TEXT con la parte di testo che vuoi escludere dalla traduzione.
Ad esempio, se hai il seguente testo di input in francese:
Bonjour, c'est un test.
Questo testo viene poi tradotto in inglese con la seguente frase:
Hello, this is a test.
Supponiamo che tu voglia tradurre solo la seguente parte del testo, escludendo Bonjour, dal testo di input:
c'est un test.
Questa parte del testo si traduce in inglese con la seguente frase:
this is a test.
Utilizza i tag HTML per escludere il testo dalla traduzione. Ad esempio, la seguente richiesta curl utilizza il tag <span class="notranslate">"TEXT"</span> per escludere Bonjour, dal testo di input precedente in francese durante la traduzione del testo in inglese:
curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:translateText -d '{"parent": "projects/PROJECT_ID", "source_language_code": "fr", "target_language_code": "en", "contents": ["<span class=\"notranslate\">\"Bonjour,\"</span>\"c'est un test.\""]}'
Rileva lingua
Il metodo detectLanguage restituisce la lingua di una stringa di testo inviando una richiesta HTTP.
Ad esempio, la seguente richiesta rileva l'inglese come lingua del testo di input Hello, this is a test:
curl
curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:detectLanguage -d '{"parent": "projects/PROJECT_ID", "content": "Hello, this is a test"}'
Visualizza le lingue supportate
Il metodo supportedLanguages restituisce l'elenco delle lingue supportate dall'API Vertex AI Translation.
Ad esempio, la seguente richiesta restituisce le lingue supportate specificando l'endpoint Vertex AI Translation:
curl
curl -vv -X GET -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID/locations/PROJECT_ID/supportedLanguages
Per l'elenco completo delle lingue supportate, consulta Lingue supportate per Vertex AI Translation.