Traduce documentos

Cloud Translation Advanced proporciona una API de traducción de documentos para traducir directamente documentos con formato, como PDF y DOCX. En comparación con las traducciones de texto sin formato, Document Translation conserva el formato y el diseño originales de los documentos traducidos para ayudarte a conservar gran parte del contexto original, como las divisiones de los párrafos.

En las siguientes secciones, se describe cómo traducir documentos y usar Document Translation con otras funciones de Cloud Translation Advanced, como los glosarios y los modelos de AutoML Translation. Document Translation es compatible con solicitudes de traducción en línea y por lotes.

Para traducir texto sin formato y traducciones HTML, consulta Traducir texto.

Formatos de archivo compatibles

Document Translation admite los siguientes tipos de archivos de entrada y sus tipos de archivos de salida asociados.

Entradas Tipo de documento MIME Resultado
DOCX application/vnd.openxmlformats-officedocument.wordprocessingml.document DOCX
PDF* application/pdf PDF, DOCX
PPTX application/vnd.openxmlformats-officedocument.presentationml.presentation PPTX
XLSX application/vnd.openxmlformats-officedocument.spreadsheetml.sheet XLSX

*Document Translation admite documentos PDF nativos y escaneados con algunas diferencias. Para manejar el formato óptimo, usa archivos PDF nativos cuando sea posible. La traducción de archivos PDF escaneados genera una pérdida de formato. Los diseños complejos de PDF también pueden generar cierta pérdida de formato, que pueden incluir tablas de datos, diseños de varias columnas y gráficos con etiquetas o leyendas.

Si tienes contenido en PDF en formato DOCX o PPTX, te recomendamos que traduzcas el contenido mediante esos formatos antes de convertirlos en PDF. En general, Document Translation conserva el diseño y el estilo de un documento de DOCX y PPTX mejor que los archivos PDF. Después de la traducción de un documento, puedes convertir los resultados en archivos PDF.

Traducciones de documentos PDF nativos y escaneados

Document Translation admite archivos PDF nativos y escaneados, como las traducciones en o desde idiomas que se leen de derecha a izquierda. La compatibilidad con las conversiones de PDF a DOCX está disponible solo para las traducciones de documentos por lotes en archivos PDF nativos. Además, Document Translation conserva los hipervínculos, el tamaño de la fuente, el color de la fuente y el estilo de la fuente solo para los archivos PDF nativos (en el caso de las traducciones síncronas y por lotes).

Antes de comenzar

Antes de comenzar a usar la API de Cloud Translation, debes tener un proyecto que tenga habilitada esta API y una clave privada con las credenciales adecuadas. También puedes instalar bibliotecas cliente para los lenguajes de programación comunes que te ayudarán a realizar llamadas a la API. Para obtener más información, consulta la página Configuración.

Permisos necesarios

Para las solicitudes que requieren acceso a Cloud Storage, como la traducción de documentos por lotes, es posible que necesites permisos de Cloud Storage para leer archivos de entrada o enviar archivos de salida a un bucket. Por ejemplo, para leer archivos de entrada de un bucket, al menos debes tener permisos de objetos de lectura (proporcionados por la función roles/storage.objectViewer) en el bucket. Para obtener más información sobre las funciones de Cloud Storage, consulta su documentación.

Traduce documentos (en línea)

La traducción en línea proporciona procesamiento en tiempo real (procesamiento síncrono) de un solo archivo. En el caso de los archivos PDF, el tamaño del archivo puede ser de hasta 20 MB y hasta 20 páginas. En otros tipos de documentos, los tamaños de archivo no pueden superar los 20 MB sin límite de páginas.

Traduce un documento desde Cloud Storage

En el siguiente ejemplo, se traduce un archivo de un bucket de Cloud Storage y se muestra el resultado a un bucket de Cloud Storage. La respuesta también muestra un flujo de bytes. Puedes especificar el tipo de MIME; Si no lo haces, Document Translation lo determina mediante la extensión del archivo de entrada.

Si no especificas un código de idioma de origen, Document Translation detecta el idioma por ti. El idioma detectado se incluye en el resultado del campo detectedLanguageCode.

LÍNEA DE REST Y CMD

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_NUMBER_OR_ID: el número o ID de tu proyecto de Google Cloud
  • LOCATION: la región en la que deseas ejecutar esta operación Por ejemplo: us-central1
  • SOURCE_LANGUAGE: el código de idioma del documento de entrada (opcional) Si lo conoces, configura uno de los códigos de idioma que aparecen en la sección Idiomas admitidos.
  • TARGET_LANGUAGE: el idioma de destino al que se traducirá el documento de entrada. Establece uno de los códigos de idioma que se indican en Idiomas admitidos.
  • INPUT_FILE_PATH por la ubicación de Cloud Storage y el nombre de archivo del documento de entrada
  • OUTPUT_FILE_PREFIX: la ubicación de Cloud Storage en la que se almacenará el documento de salida

Método HTTP y URL:

POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:translateDocument

Cuerpo JSON de la solicitud:

{
  "source_language_code": "SOURCE_LANGUAGE",
  "target_language_code": "TARGET_LANGUAGE",
  "document_input_config": {
    "gcsSource": {
      "inputUri": "gs://INPUT_FILE_PATH"
    }
  },
  "document_output_config": {
    "gcsDestination": {
      "outputUriPrefix": "gs://OUTPUT_FILE_PREFIX"
    }
  }
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "documentTranslation": {
    "byteStreamOutputs": ["BYTE_STREAM"],
    "mimeType": "MIME_TYPE"
  },
  "model": "projects/PROJECT_NUMBER/locations/LOCATION/models/general/nmt"
}

Node.js

Antes de probar este ejemplo, sigue las instrucciones de configuración para Node.js que encontrarás en la guía de inicio rápido sobre las bibliotecas cliente de Translation. Si deseas obtener más información, consulta la documentación de referencia de la API de Translation para Node.js.

/**
 * TODO(developer): Uncomment these variables before running the sample.
 */
// const projectId = 'YOUR_PROJECT_ID';
// const location = 'global';
// const inputUri = 'path_to_your_file';

// Imports the Google Cloud Translation library
const {TranslationServiceClient} = require('@google-cloud/translate').v3beta1;

// Instantiates a client
const translationClient = new TranslationServiceClient();

const documentInputConfig = {
  gcsSource: {
    inputUri: inputUri,
  },
};

async function translateDocument() {
  // Construct request
  const request = {
    parent: translationClient.locationPath(projectId, location),
    documentInputConfig: documentInputConfig,
    sourceLanguageCode: 'en-US',
    targetLanguageCode: 'sr-Latn',
  };

  // Run request
  const [response] = await translationClient.translateDocument(request);

  console.log(
    `Response: Mime Type - ${response.documentTranslation.mimeType}`
  );
}

translateDocument();

Traduce un documento intercalado

En el siguiente ejemplo, se envía un documento intercalado como parte de la solicitud. Debes incluir el tipo de MIME para traducciones de documentos intercalados.

Si no especificas un código de idioma de origen, Document Translation detecta el idioma por ti. El idioma detectado se incluye en el resultado del campo detectedLanguageCode.

LÍNEA DE REST Y CMD

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_NUMBER_OR_ID: el número o ID de tu proyecto de Google Cloud
  • LOCATION: la región en la que deseas ejecutar esta operación Por ejemplo: us-central1
  • SOURCE_LANGUAGE: el código de idioma del documento de entrada (opcional) Si lo conoces, configura uno de los códigos de idioma que aparecen en la sección Idiomas admitidos.
  • TARGET_LANGUAGE: el idioma de destino al que se traducirá el documento de entrada. Establece uno de los códigos de idioma que se indican en Idiomas admitidos.
  • MIME_TYPE: el formato del documento de origen, como application/pdf
  • INPUT_BYTE_STREAM: el contenido del documento de entrada representado como un flujo de bytes
  • OUTPUT_FILE_PREFIX: la ubicación de Cloud Storage en la que se almacenará el documento de salida

Método HTTP y URL:

POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:translateDocument

Cuerpo JSON de la solicitud:

{
  "source_language_code": "SOURCE_LANGUAGE",
  "target_language_code": "TARGET_LANGUAGE",
  "document_input_config": {
    "mimeType": "MIME_TYPE",
    "content": "INPUT_BYTE_STREAM"
  },
  "document_output_config": {
    "gcsDestination": {
      "outputUriPrefix": "gs://OUTPUT_FILE_PREFIX"
    }
  }
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "documentTranslation": {
    "byteStreamOutputs": ["BYTE_STREAM"],
    "mimeType": "MIME_TYPE"
  },
  "model": "projects/PROJECT_NUMBER/locations/LOCATION/models/general/nmt"
}

Python

Antes de probar este ejemplo, sigue las instrucciones de configuración para Python que encontrarás en la guía de inicio rápido sobre las bibliotecas cliente de Translation. Si deseas obtener más información, consulta la documentación de referencia de la API de Translation para Python.

from google.cloud import translate_v3beta1 as translate

def translate_document(project_id: str, file_path: str):

    client = translate.TranslationServiceClient()

    location = "us-central1"

    parent = f"projects/{project_id}/locations/{location}"

    # Supported file types: https://cloud.google.com/translate/docs/supported-formats
    with open(file_path, "rb") as document:
        document_content = document.read()

    document_input_config = {
        "content": document_content,
        "mime_type": "application/pdf",
    }

    response = client.translate_document(
        request={
            "parent": parent,
            "target_language_code": "fr-FR",
            "document_input_config": document_input_config,
        }
    )

    # To output the translated document, uncomment the code below.
    # f = open('/tmp/output', 'wb')
    # f.write(response.document_translation.byte_stream_outputs)
    # f.close()

    # If not provided in the TranslationRequest, the translated file will only be returned through a byte-stream
    # and its output mime type will be the same as the input file's mime type
    print("Response: Detected Language Code - {}".format(response.document_translation.detected_language_code))

Usa un modelo o un glosario de AutoML

En lugar del modelo administrado por Google, puedes usar tus propios modelos de AutoML Translation para traducir documentos. Además de especificar un modelo, también puedes incluir un glosario para manejar la terminología específica del dominio. Si especificas un modelo o un glosario, debes especificar el idioma de origen. En el siguiente ejemplo, se usa un modelo de AutoML y un glosario. Si el modelo o el glosario están en un proyecto diferente, debes tener el permiso de IAM correspondiente para acceder a esos recursos.

LÍNEA DE REST Y CMD

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_NUMBER_OR_ID: el número o ID de tu proyecto de Google Cloud
  • LOCATION: la región en la que deseas ejecutar esta operación, como us-central1. La ubicación debe coincidir con la región en la que se encuentran tu modelo, glosario o ambos.
  • SOURCE_LANGUAGE: es el código de idioma del documento de entrada. Establece uno de los códigos de idioma que se indican en Idiomas admitidos.
  • TARGET_LANGUAGE: el idioma de destino al que se traducirá el documento de entrada. Establece uno de los códigos de idioma que se indican en Idiomas admitidos.
  • INPUT_FILE_PATH por la ubicación de Cloud Storage y el nombre de archivo del documento de entrada
  • OUTPUT_FILE_PREFIX: la ubicación de Cloud Storage en la que se almacenará el documento de salida
  • MODEL_PROJECT_ID: el ID del proyecto en el que se encuentra el modelo
  • MODEL_LOCATION: la región en la que se encuentra el modelo
  • MODEL_ID: el ID del modelo que se usará
  • GLOSSARY_PROJECT_ID: el ID del proyecto en el que se encuentra el glosario
  • GLOSSARY_LOCATION: la región en la que se encuentra el glosario
  • GLOSSARY_ID: es el ID del glosario que se usará

Método HTTP y URL:

POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:translateDocument

Cuerpo JSON de la solicitud:

{
  "source_language_code": "SOURCE_LANGUAGE",
  "target_language_code": "TARGET_LANGUAGE",
  "document_input_config": {
    "gcsSource": {
      "inputUri": "gs://INPUT_FILE_PATH"
    }
  },
  "document_output_config": {
    "gcsDestination": {
      "outputUriPrefix": "gs://OUTPUT_FILE_PREFIX"
    }
  },
  "model": "projects/MODEL_PROJECT_ID/locations/MODEL_LOCATION/models/MODEL_ID",
  "glossary_config": {
    "glossary": "projects/GLOSSARY_PROJECT_ID/locations/MODEL_LOCATION/glossaries/GLOSSARY_ID"
  }
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "documentTranslation": {
    "byteStreamOutputs": ["BYTE_STREAM"],
    "mimeType": "MIME_TYPE"
  },
  "glossary_document_translation": {
    "byteStreamOutputs": ["BYTE_STREAM_USING_GLOSSARY"],
    "mimeType": "MIME_TYPE"
  },
  "model": "projects/MODEL_PROJECT_ID/locations/MODEL_LOCATION/models/MODEL_ID",
  "glossaryConfig": {
    "glossary": "projects/GLOSSARY_PROJECT_ID/locations/MODEL_LOCATION/glossaries/GLOSSARY_ID"
  }
}

Traduce documentos (por lotes)

La traducción por lotes te permite traducir varios archivos a varios idiomas en una sola solicitud. Para cada solicitud, puedes enviar hasta 100 archivos con un tamaño de contenido total de hasta 1 GB o 100 millones de puntos de código Unicode, el límite que se alcance primero. Puedes especificar un modelo de traducción particular para cada idioma.

Traduce varios documentos

En el siguiente ejemplo, se incluyen varios parámetros de configuración de entrada. Cada configuración de entrada es un puntero a un archivo en un bucket de Cloud Storage.

LÍNEA DE REST Y CMD

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_NUMBER_OR_ID: el número o ID de tu proyecto de Google Cloud
  • LOCATION: la región en la que deseas ejecutar esta operación Por ejemplo: us-central1
  • SOURCE_LANGUAGE: el código de idioma de los documentos de entrada. Establece uno de los códigos de idioma que se indican en Idiomas admitidos.
  • TARGET_LANGUAGE: los idioma de segmentación o idiomas a los que se traducen los documentos de entrada. Usa los códigos de idioma que se indican en Idiomas admitidos.
  • INPUT_FILE_PATH: la ubicación de Cloud Storage y el nombre de archivo de uno o más documentos de entrada
  • OUTPUT_FILE_PREFIX: la ubicación de Cloud Storage en la que se almacenan todos los documentos de salida

Método HTTP y URL:

POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:batchTranslateDocument

Cuerpo JSON de la solicitud:

{
  "source_language_code": "SOURCE_LANGUAGE",
  "target_language_codes": ["TARGET_LANGUAGE", ...],
  "input_configs": [
    {
      "gcsSource": {
        "inputUri": "gs://INPUT_FILE_PATH_1"
      }
    },
    {
      "gcsSource": {
        "inputUri": "gs://INPUT_FILE_PATH_2"
      }
    },
    ...
  ],
  "output_config": {
    "gcsDestination": {
      "outputUriPrefix": "gs://OUTPUT_FILE_PREFIX"
    }
  }
}

Para enviar tu solicitud, expande una de estas opciones:

La respuesta contiene el ID de una [operación de larga duración](/translate/docs/advanced/long-running-operation).
{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.translation.v3.BatchTranslateDocumentMetadata",
    "state": "RUNNING"
  }
}

Node.js

Antes de probar este ejemplo, sigue las instrucciones de configuración para Node.js que encontrarás en la guía de inicio rápido sobre las bibliotecas cliente de Translation. Si deseas obtener más información, consulta la documentación de referencia de la API de Translation para Node.js.

/**
 * TODO(developer): Uncomment these variables before running the sample.
 */
// const projectId = 'YOUR_PROJECT_ID';
// const location = 'us-central1';
// const inputUri = 'path_to_your_files';
// const outputUri = 'path_to_your_output_bucket';

// Imports the Google Cloud Translation library
const {TranslationServiceClient} = require('@google-cloud/translate').v3beta1;

// Instantiates a client
const translationClient = new TranslationServiceClient();

const documentInputConfig = {
  gcsSource: {
    inputUri: inputUri,
  },
};

async function batchTranslateDocument() {
  // Construct request
  const request = {
    parent: translationClient.locationPath(projectId, location),
    documentInputConfig: documentInputConfig,
    sourceLanguageCode: 'en-US',
    targetLanguageCodes: ['sr-Latn'],
    inputConfigs: [
      {
        gcsSource: {
          inputUri: inputUri,
        },
      },
    ],
    outputConfig: {
      gcsDestination: {
        outputUriPrefix: outputUri,
      },
    },
  };

  // Batch translate documents using a long-running operation.
  // You can wait for now, or get results later.
  const [operation] = await translationClient.batchTranslateDocument(request);

  // Wait for operation to complete.
  const [response] = await operation.promise();

  console.log(`Total Pages: ${response.totalPages}`);
}

batchTranslateDocument();

Python

Antes de probar este ejemplo, sigue las instrucciones de configuración para Python que encontrarás en la guía de inicio rápido sobre las bibliotecas cliente de Translation. Si deseas obtener más información, consulta la documentación de referencia de la API de Translation para Python.


from google.cloud import translate_v3beta1 as translate

def batch_translate_document(
    input_uri: str,
    output_uri: str,
    project_id: str,
    timeout=180,
):

    client = translate.TranslationServiceClient()

    # The ``global`` location is not supported for batch translation
    location = "us-central1"

    # Google Cloud Storage location for the source input. This can be a single file
    # (for example, ``gs://translation-test/input.docx``) or a wildcard
    # (for example, ``gs://translation-test/*``).
    # Supported file types: https://cloud.google.com/translate/docs/supported-formats
    gcs_source = {"input_uri": input_uri}

    batch_document_input_configs = {
        "gcs_source": gcs_source,
    }
    gcs_destination = {"output_uri_prefix": output_uri}
    batch_document_output_config = {"gcs_destination": gcs_destination}
    parent = f"projects/{project_id}/locations/{location}"

    # Supported language codes: https://cloud.google.com/translate/docs/language
    operation = client.batch_translate_document(
        request={
            "parent": parent,
            "source_language_code": "en-US",
            "target_language_codes": ["fr-FR"],
            "input_configs": [batch_document_input_configs],
            "output_config": batch_document_output_config,
        }
    )

    print("Waiting for operation to complete...")
    response = operation.result(timeout)

    print("Total Pages: {}".format(response.total_pages))

Traduce y convierte un archivo PDF nativo

En el siguiente ejemplo, se traduce un archivo PDF nativo y se convierte en un archivo DOCX. Puedes especificar varias entradas de varios tipos de archivos (no todos tienen que ser archivos PDF nativos). Sin embargo, los archivos PDF escaneados no se pueden incluir cuando se incluye una conversión; la solicitud se rechaza y no se realizan traducciones. Solo los archivos PDF nativos se traducen y se convierten en archivos DOCX. Por ejemplo, si incluyes archivos PPTX, estos se traducen y se muestran como archivos PPTX.

Si traduces con frecuencia una combinación de archivos PDF nativos y escaneados, te recomendamos que los organices en buckets de Cloud Storage independientes. De esta manera, cuando solicitas una traducción por lotes y una conversión, puedes excluir con facilidad el bucket que contiene archivos PDF escaneados en lugar de tener que excluir archivos individuales.

LÍNEA DE REST Y CMD

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_NUMBER_OR_ID: el número o ID de tu proyecto de Google Cloud
  • LOCATION: la región en la que deseas ejecutar esta operación Por ejemplo: us-central1
  • SOURCE_LANGUAGE: el código de idioma de los documentos de entrada. Establece uno de los códigos de idioma que se indican en Idiomas admitidos.
  • TARGET_LANGUAGE: los idioma de segmentación o idiomas a los que se traducen los documentos de entrada. Usa los códigos de idioma que se indican en Idiomas admitidos.
  • INPUT_FILE_PATH: La ubicación de Cloud Storage y el nombre de archivo de uno o más archivos PDF nativos.
  • OUTPUT_FILE_PREFIX: la ubicación de Cloud Storage en la que se almacenan todos los documentos de salida

Método HTTP y URL:

POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:batchTranslateDocument

Cuerpo JSON de la solicitud:

{
  "source_language_code": "SOURCE_LANGUAGE",
  "target_language_codes": ["TARGET_LANGUAGE", ...],
  "input_configs": [
    {
      "gcsSource": {
        "inputUri": "gs://INPUT_FILE_PATH_1"
      }
    },
    {
      "gcsSource": {
        "inputUri": "gs://INPUT_FILE_PATH_2"
      }
    },
    ...
  ],
  "output_config": {
    "gcsDestination": {
      "outputUriPrefix": "gs://OUTPUT_FILE_PREFIX"
    }
  },
  "format_conversions": {
    "application/pdf": "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
  }
}

Para enviar tu solicitud, expande una de estas opciones:

La respuesta contiene el ID de una [operación de larga duración](/translate/docs/advanced/long-running-operation).
{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.translation.v3.BatchTranslateDocumentMetadata",
    "state": "RUNNING"
  }
}

Usa un modelo o un glosario de AutoML

En lugar del modelo administrado por Google, puedes usar tus propios modelos de AutoML Translation para traducir documentos. Además de especificar un modelo, también puedes incluir un glosario para manejar la terminología específica del dominio. Si especificas un modelo o un glosario, debes especificar el idioma de origen. En el siguiente ejemplo, se usa un modelo de AutoML y un glosario. Puedes especificar hasta 10 idiomas objetivo con su propio modelo y glosario.

Si especificas un modelo para algunos idiomas objetivo y no para otros, Document Translation usa el modelo administrado por Google para los idiomas no especificados. Del mismo modo, si especificas un glosario para algunos idiomas objetivo, la traducción de documentos no usa ningún glosario para los idiomas no especificados.

LÍNEA DE REST Y CMD

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_NUMBER_OR_ID: el número o ID de tu proyecto de Google Cloud
  • LOCATION: la región en la que deseas ejecutar esta operación, como us-central1. La ubicación debe coincidir con la región en la que se encuentran tu modelo, glosario o ambos.
  • SOURCE_LANGUAGE: el código de idioma de los documentos de entrada. Establece uno de los códigos de idioma que se indican en Idiomas admitidos.
  • TARGET_LANGUAGE: los idioma de segmentación o idiomas a los que se traducen los documentos de entrada. Usa los códigos de idioma que se indican en Idiomas admitidos.
  • INPUT_FILE_PATH: la ubicación de Cloud Storage y el nombre de archivo de uno o más documentos de entrada
  • OUTPUT_FILE_PREFIX: la ubicación de Cloud Storage en la que se almacenan todos los documentos de salida
  • MODEL_PROJECT_ID: el ID del proyecto en el que se encuentra el modelo
  • MODEL_LOCATION: la región en la que se encuentra el modelo
  • MODEL_ID: el ID del modelo que se usará
  • GLOSSARY_PROJECT_ID: el ID del proyecto en el que se encuentra el glosario
  • GLOSSARY_LOCATION: la región en la que se encuentra el glosario
  • GLOSSARY_ID: es el ID del glosario que se usará

Método HTTP y URL:

POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/LOCATION:translateDocument

Cuerpo JSON de la solicitud:

{
  "source_language_code": "SOURCE_LANGUAGE",
  "target_language_codes": "[TARGET_LANGUAGE, ...]",
  "input_configs": [
    {
      "gcsSource": {
        "inputUri": "gs://INPUT_FILE_PATH"
      }
    }
  ],
  "output_config": {
    "gcsDestination": {
      "outputUriPrefix": "gs://OUTPUT_FILE_PREFIX"
    }
  },
  "models": {
    "TARGET_LANGUAGE": "projects/MODEL_PROJECT_ID/locations/MODEL_LOCATION/models/MODEL_ID",
    ...
  },
  "glossaries": {
    "TARGET_LANGUAGE": {
      "glossary": "projects/GLOSSARY_PROJECT_ID/locations/MODEL_LOCATION/glossaries/GLOSSARY_ID"
    },
    ...
  }
}

Para enviar tu solicitud, expande una de estas opciones:

La respuesta contiene el ID de una [operación de larga duración](/translate/docs/advanced/long-running-operation).
{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.translation.v3.BatchTranslateDocumentMetadata",
    "state": "RUNNING"
  }
}

¿Qué sigue?

  • El precio de Document Translation se calcula por página. Para obtener más información, consulta Precios.