Comment traduire les fichiers de langue de votre application avec l’IA

Comment traduire les fichiers de langue de votre application avec l’IA

4 octobre 2026

Les fichiers de langue d’une application, c’est une seule tâche et treize extensions de fichier. Vous avez un fichier JSON, un strings.xml, un fichier PO ou un String Catalog, et vous voulez retrouver les mêmes chaînes dans cinq langues supplémentaires sans casser la compilation.

Le format change. Pas la tâche : conserver les clés et les espaces réservés, traduire les valeurs, puis recommencer à la prochaine version.

Quelle option choisir ?

Idéal pour Limites
AI Glot Tous les formats ci-dessous, plusieurs langues en une seule tâche, un glossaire à respecter, chaque version Inutile pour dix chaînes
Une plateforme de gestion de traduction (Crowdin, Lokalise, Phrase) Une équipe avec un processus continu, des réviseurs et une connexion au dépôt Vous devez créer un projet et connecter votre dépôt avant de traiter la première chaîne
DeepL Fichiers XLIFF jusqu’à 10 MB Accepte le XLIFF, mais pas les autres formats présentés ici. Son glossaire remplace les termes sans comprendre pourquoi ils sont imposés
ChatGPT, Claude ou un autre assistant Quelques chaînes Vous rédigez le prompt et devez ajouter votre glossaire à chaque conversation. Un long fichier est généré lentement, jeton par jeton, et consomme votre quota. Chaque exécution risque de modifier une clé ou d’altérer un espace réservé
Un freelance ou une agence La page App Store, votre parcours d’accueil Lent, facturé au mot, et vous devez quand même préparer les fichiers

Confiez à une personne les cinq chaînes qui vendent votre application : la fiche de la boutique et le premier écran. Faites traiter les milliers de chaînes qui se trouvent derrière par un moteur de traduction.

Choisissez votre fichier

Chaque format a sa propre page, avec un outil gratuit et les informations détaillées. Voici ce qu’il faut savoir pour chacun.

Fichier Emplacement À savoir
JSON locales/en.json Les clés sont renvoyées dans le même ordre. Les espaces réservés comme {count} sont protégés par vos instructions
ARB (Flutter) lib/l10n/app_en.arb Les entrées de métadonnées @ sont recopiées. Définissez @@locale sur la langue cible
YAML config/locales/en.yml Les espaces réservés de type Rails %{name} sont détectés. Les commentaires sont supprimés lors de la réécriture du fichier
TOML i18n/en.toml (Hugo) Seules les valeurs textuelles changent. En principe, les commentaires sont conservés
XLIFF Exports de vos outils Versions 1.2 et 2.0. Les balises intégrées sont reconstituées à partir de la source
PO et POT locale/fr/LC_MESSAGES/app.po Les entrées au pluriel reçoivent les formes de la langue cible, et l’en-tête Plural-Forms est réécrit
Qt Linguist app_fr.ts Les messages au pluriel (numerus) ne sont pas encore traduits. Exécutez lrelease ensuite
String Catalog Localizable.xcstrings Toutes les langues sont réunies dans un seul fichier. Les substitutions et les variantes d’appareil restent intactes
iOS .strings fr.lproj/Localizable.strings Le fichier est renvoyé en UTF-8, avec les blocs de commentaires conservés. Les pluriels .stringsdict sont également pris en charge
Android XML res/values-fr/strings.xml Les pluriels et les tableaux de chaînes sont pris en charge. translatable="false" est respecté
RESX et RESW Resources.fr.resx Vous obtenez un fichier par langue. Les commentaires destinés aux développeurs restent en anglais
Java .properties messages_fr.properties UTF-8 uniquement. Si une valeur se poursuit sur la ligne suivante, placez-la d’abord sur une seule ligne

Les formats ne gèrent pas tous les langues de la même façon. Un String Catalog regroupe toutes les langues dans un seul fichier. La plupart des autres formats, notamment JSON, Android et iOS, contiennent une langue par fichier : chaque langue cible a donc son propre fichier.

À quoi ressemble un fichier traduit

Seules les valeurs changent.

Un fichier de langue avant et après traduction. Les clés et les espaces réservés restent tels quels ; seules les valeurs sont traduites.

Le parcours d’un fichier

Les cinq étapes de la traduction d’un fichier de langue. Tout est gratuit jusqu’à la validation : si le plan est incorrect, vous pouvez le corriger sans frais.

Vous ne dépensez rien avant la quatrième étape, et corriger un plan inadapté ne vous coûte rien.

Comment procéder, étape par étape

1. Testez gratuitement un fichier. Chaque page de format propose un outil gratuit, sans création de compte.

2. Importez le fichier dans l’application, ou envoyez-le depuis la ligne de commande, comme expliqué plus bas.

3. Indiquez en une phrase ce dont vous avez besoin.

Translate this file into French.
Skip every key that starts with "internal.".
Instructions for this batchOptional
Apply
Décrivez la tâche en anglais simple. AI Glot la transforme en un plan que vous pouvez lire et corriger avant l'exécution.

Cette phrase détermine ce qui sera traduit dans l’ensemble du fichier. Les règles de formulation, comme « conservez chaque {placeholder} exactement tel quel » ou « utilisez le registre informel », sont à saisir dans le deuxième champ au moment de la validation, car elles s’appliquent à chaque chaîne au moment de sa rédaction.

4. Ajoutez un glossaire avec le nom du produit, les noms des fonctionnalités et les mots que votre application utilise toujours de la même manière. Comment en créer un.

Un glossaire fixe les termes qui ne doivent pas varier et applique la même décision à chaque fichier.

5. Choisissez un niveau de qualité.

Deux niveaux de qualité, choisissables par fichier. Le mode Lite traite environ trois fois plus de mots pour le même crédit.

Lite permet de traduire environ trois fois plus de mots par crédit et va plus vite : idéal pour les nombreux paramètres et textes d’aide secondaires. Standard convient aux chaînes que les utilisateurs lisent en premier. Un crédit correspond à un mot en Standard.

6. Validez et téléchargez.

Un seul fichier est retourné, dans son format d'origine.

Un fichier, plusieurs langues

Un fichier source donne un fichier traduit par langue, tous avec les mêmes clés et le même glossaire.

Les noms de fichiers ne sont qu’un exemple. Pour traiter tout un dossier de fichiers de langue, regroupez-les dans un ZIP : jusqu’à 200 fichiers et 20 MB sont traités en une seule tâche.

Trois façons de lancer le traitement

Trois façons de traduire vos fichiers de langue. Le résultat est toujours le même ensemble de fichiers traduits.

La ligne de commande est la méthode que les développeurs gardent. Les mêmes quatre étapes, dans un script :

# 1. Create the job. Free. Returns a plan and an id.
id=$(aiglot batches create locales/en.json \
      --instruction "Translate into French. Skip every key that starts with internal." \
      --json | jq -r '.data.id')

# 2. Read the plan for free, then commit.
aiglot batches get "$id" --json | jq '.data.plan'
aiglot batches approve "$id" --quality lite \
  --instructions "Keep every {placeholder} exactly as written."

# 3. When the status is completed, bring the file back.
aiglot batches download "$id" --output locales/fr.json

Avec votre agent IA : connectez AI Glot en tant que serveur MCP. L’agent peut lire votre dépôt, proposer les termes de glossaire qu’il y trouve, les ajouter à votre espace de travail, lancer le traitement et remettre les fichiers à leur place.

Dans l’application : importez, cliquez, téléchargez. Idéal pour un traitement ponctuel.

Pour intégrer l’API, consultez la documentation de l’API.

Vérifiez le résultat

Créez l’application dans une langue traduite et ouvrez les trois écrans qui contiennent les chaînes les plus longues. Lancez ensuite votre vérification habituelle avec le linter ou un outil de détection des clés manquantes : une clé modifiée apparaît comme une chaîne manquante. Les textes traduits sont souvent plus longs qu’en anglais ; vérifiez donc que les boutons et les libellés ne débordent pas.

La page Tarifs indique le coût pour un volume plus important. Un compte gratuit inclut des crédits pour traiter un vrai fichier.


Les limites indiquées ici sont celles en vigueur au moment de la rédaction : 200 fichiers et 20 MB par ZIP. La limite de DeepL provient de sa propre documentation. Les noms de fichiers et le nombre de chaînes dans les schémas sont des exemples. Votre forfait indique les chiffres réels pour vos propres fichiers, et sa consultation est gratuite.

10 000 mots gratuits à l'inscription

Prêt à traduire vos fichiers volumineux ?