Руководство по использованию Google Translate API

Если вам нужно автоматизировать работу с переводами с помощью API, Google Translate API — это отличный выбор. Хотя качество перевода может быть немного ниже, чем у DeepL, оно предлагает лучшее соотношение цены и качества, особенно с бесплатным лимитом в 500 тысяч символов каждый месяц.

Описание продукта

Google Translate все знают, здесь мы представляем его сервис API, полное название — Google Cloud Translation. С помощью API можно реализовать массовый перевод, настройку пользовательских моделей перевода, перевод документов и другие функции.

Описание продукта

Цены

Бесплатный лимит 500 тысяч символов в месяц, сверх лимита оплата по количеству символов.

Диаграмма цен

Различия между базовой и расширенной версиями

Функция Базовая версия Расширенная версия
Бесплатный лимит 500 тыс. символов/месяц 500 тыс. символов/месяц
За миллион символов 20 долларов 80 долларов
Перевод документов 0.08/страница 0.25/страница
Пользовательский перевод

Начало использования

Создание или выбор проекта

  • Включение API. Если функция оплаты не включена, здесь появится сообщение о необходимости добавления учетной записи оплаты. Требуется кредитная карта с иностранной валютой

Включение

Включение API

    $cred = gcloud auth print-access-token
    $project_id = "example"
    $headers = @{ "Authorization" = "Bearer $cred" }
    Invoke-WebRequest `
        -Method GET `
        -Headers $headers `
        -Uri "https://cloudresourcemanager.googleapis.com/v3/projects/${project_id}" | Select-Object -Expand Content
  • Пробный запуск
    $cred = gcloud auth print-access-token
    $project_id = "example"
    $body = @{
        "sourceLanguageCode" = "en"
        "targetLanguageCode" = "zh"
        "contents" = @("Hello, world!")
        "mimeType" = "text/plain"
    }
    $body = $body | ConvertTo-Json
    $headers = @{
        "Authorization" = "Bearer $cred"
        "Content-Type" = "application/json; charset=utf-8"
        "x-goog-user-project" = $project_id
    }
    Invoke-WebRequest `
        -Method POST `
        -Headers $headers `
        -Uri "https://translation.googleapis.com/v3/projects/${project_id}:translateText" `
        -Body $body | Select-Object -Expand Content

Выполнение успешно

Использование команды curl в Linux

    export CRED=$(gcloud auth print-access-token)
    export PROJECT_ID="example"
    export SOURCE_LANGUAGE_CODE="en"
    export TARGET_LANGUAGE_CODE="zh"
    export CONTENTS="Hello, world!"
    export MIME_TYPE="text/plain"
    curl -X POST -H "Authorization: Bearer $CRED" -H "Content-Type: application/json; charset=utf-8" -H "x-goog-user-project: $PROJECT_ID" -d "{
        \"sourceLanguageCode\": \"$SOURCE_LANGUAGE_CODE\",
        \"targetLanguageCode\": \"$TARGET_LANGUAGE_CODE\",
        \"contents\": [\"$CONTENTS\"],
        \"mimeType\": \"$MIME_TYPE\"
    }" "https://translation.googleapis.com/v3/projects/$PROJECT_ID:translateText"

На этом этапе вы уже можете использовать Google Translate API для массового перевода.

Ссылки на использование

  • Перевод веб-сайтов или приложений
  • Обучение пользовательских моделей перевода
  • Добавление субтитров на разных языках к видео
  • Дублирование видео на разных языках
  • Перевод документов с форматированием
  • Реализация перевода контента клиентского взаимодействия в реальном времени

Дополнительное чтение

Послесловие

Официальная документация Google Translate длинная, реализация одной и той же функции имеет несколько различных способов, на этапах аутентификации и вызова существует множество путей реализации. В этой статье выбран наиболее рекомендуемый и простой способ использования для обычных пользователей, в качестве справки.

  • Среди типов аутентификации выбрана локальная аутентификация (gcloud CLI)
  • Среди способов использования выбран REST API (Curl/Invoke-WebRequest)
  • Среди базовой и расширенной версий выбрана расширенная версия

Это оригинальная статья, опубликованная на blog.jqknono.dev, запрещено копирование без разрешения