Tutoriel d'utilisation de l'API Google Traduction

Si vous avez besoin d’automatiser le travail de traduction via une API, l’API Google Traduction est un bon choix. Bien que sa qualité de traduction soit peut-être légèrement inférieure à celle de DeepL, elle offre un meilleur rapport qualité-prix, notamment avec un quota gratuit de 500 000 caractères par mois.

Présentation du produit

Google Traduction est utilisé par tout le monde, mais ici nous présentons son service d’API, dont le nom complet est Google Cloud Translation. Grâce à l’API, vous pouvez réaliser des traductions en masse, des modèles de traduction personnalisés et des fonctions de traduction de documents.

Présentation du produit

Tarifs

Quota gratuit de 500 000 caractères par mois, facturation au-delà selon le nombre de caractères.

Graphique des tarifs

Différences entre la version de base et la version avancée

Fonctionnalité Version de base Version avancée
Quota gratuit 500 000 caractères/mois 500 000 caractères/mois
Par million de caractères 20 USD 80 USD
Traduction de documents 0,08/page 0,25/page
Traduction personnalisée

Commencer à utiliser

Créer ou sélectionner un projet

  • Activer l’API, si vous ne l’avez pas activée, un message apparaîtra pour ajouter un compte de facturation, carte de crédit étrangère requise

Activation

Activer l’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
  • Essai
    $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

Exécution réussie

Utilisation de la commande curl sous 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"

À ce stade, vous pouvez utiliser l’API Google Traduction pour effectuer des traductions en masse.

Références d’utilisation

  • Traduire un site web ou une application
  • Entraîner un modèle de traduction personnalisé
  • Ajouter des sous-titres dans différentes langues aux vidéos
  • Doubler les vidéos dans différentes langues
  • Traduire des documents formatés
  • Traduire en temps réel le contenu des interactions clients

Lecture complémentaire

Post-scriptum

La documentation officielle de Google Traduction est longue, avec de nombreuses façons différentes de réaliser la même fonction, et plusieurs chemins pour l’authentification et les étapes d’appel. Cet article ne choisit que la méthode la plus simple et la plus recommandée pour les utilisateurs ordinaires, à titre de référence.

  • Parmi les types d’authentification, nous avons choisi l’authentification locale (gcloud CLI)
  • Parmi les méthodes d’utilisation, nous avons choisi l’API REST (Curl/Invoke-WebRequest)
  • Entre la version de base et la version avancée, nous avons choisi la version avancée

Ceci est un article original publié sur blog.jqknono.dev, la reproduction est interdite sans autorisation