Central de Ajuda

Automatize a localização com IA

A automação de localização transforma a maneira como você traduz aplicações. O pacote npm ai-l10n traz a tradução alimentada por IA diretamente para seu fluxo de trabalho de desenvolvimento, oferecendo suporte a arquivos de localização com recursos de automação inteligente.

AI-powered localization automation demonstration

Automação de localização alimentada por IA em ação

Por que automatizar a localização?

O gerenciamento manual de traduções é demorado e propenso a erros. A automação oferece:

  • Economize horas de trabalho manual de tradução com a automação alimentada por IA.
  • Garanta consistência em todas as traduções com IA consciente do contexto.
  • Integre traduções diretamente em seu pipeline de CI/CD.
  • Detecte e traduza automaticamente novas strings enquanto preserva as traduções existentes.
  • Suporte a mais de 165 idiomas com qualidade de tradução consciente do contexto.

Recursos alimentados por IA

O pacote ai-l10n usa IA avançada para entregar traduções com qualidade de produção:

Tradução consciente do contexto

A IA entende o contexto de suas strings, preservando placeholders, tags HTML e formatação, enquanto adapta datas e números aos locais de destino. Ela evita inteligentemente a tradução de nomes próprios, URLs e termos técnicos.

Detecção inteligente de projeto

Detecta automaticamente os idiomas de destino a partir da estrutura do seu projeto (baseada em pastas ou arquivos). Não há necessidade de especificar idiomas manualmente se eles já existirem no seu projeto.

Segurança de tipo e preservação de formato

Preserva tipos de dados JSON — números continuam sendo números, booleanos continuam sendo booleanos, valores nulos são mantidos. Suporta formas plurais do i18next com geração automática de sufixos para regras complexas de pluralização.

Detecção inteligente de erros e fragmentação

Detecta e tenta novamente automaticamente caso placeholders ou formatação sejam perdidos. Para arquivos grandes, divide o conteúdo em partes gerenciáveis mantendo o contexto. Previne problemas comuns em uploads diretos de IA onde exceder ~16.000 caracteres causa perda de conteúdo.

Introdução

Instalação

Instale o pacote ai-l10n usando npm, yarn ou pnpm:

npm install ai-l10n

Configurar chave de API

Obtenha sua chave de API gratuita e configure-a:

npx ai-l10n config --api-key YOUR_API_KEY

Sua primeira tradução

Traduza seus arquivos de localização com um comando simples:

# Auto-detect target languages from project structure
npx ai-l10n translate path/to/en.json

# Specify target languages
npx ai-l10n translate path/to/en.json --languages es,fr,de

Cenários de uso

Interface de linha de comando (CLI)

Use a CLI para traduções rápidas com controle total sobre as opções:

npx ai-l10n translate ./locales/en.json \
  --languages es,fr,de,ja,zh-CN \
  --plural \
  --verbose

Uso programático

Integre a tradução diretamente em suas aplicações Node.js:

import { AiTranslator } from 'ai-l10n';

const translator = new AiTranslator();

// Basic translation
const result = await translator.translate({
  sourceFile: './locales/en.json',
  targetLanguages: ['es', 'fr', 'de'],
});

console.log(`Translated to ${result.results.length} languages`);
console.log(`Used ${result.totalCharsUsed} characters`);

Integração CI/CD

Integre perfeitamente a tradução alimentada por IA em seus pipelines de CI/CD com nossa GitHub Action ai-l10n:

Crie um arquivo de configuração:

// example ai-l10n.config.json
[
  {
    "sourceFile": "./locales/en/common.json",
    "targetLanguages": ["es", "fr", "de"],
    "translateOnlyNewStrings": true
  },
  {
    "sourceFile": "./locales/en/common.json",
    "targetLanguages": ["pl", "ar"],
    "generatePluralForms": true,
    "translateOnlyNewStrings": true
  }
]

Adicione ao seu fluxo de trabalho do GitHub Actions:

name: Auto-translate i18n files

on:
  push:
    branches:
      - main
    paths:
      - 'locales/en/**'
      - 'ai-l10n.config.json'

permissions:
  contents: write

jobs:
  translate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - uses: l10n-dev/ai-l10n@v1
        with:
          api-key: ${{ secrets.L10N_API_KEY }}
          config-file: 'ai-l10n.config.json'
          pull-request: false

Configuração do GitLab CI usando o comando batch do ai-l10n:

# .gitlab-ci.yml
translate:
  stage: deploy
  image: node:20-alpine
  only:
    - main
  changes:
    - locales/en/**/*
    - ai-l10n.config.json
  script:
    - npm install -g ai-l10n
    - npx ai-l10n batch ai-l10n.config.json
  variables:
    L10N_API_KEY: $L10N_API_KEY

Configuração do pipeline do Jenkins usando o comando batch do ai-l10n:

// Jenkinsfile
pipeline {
  agent any

  stages {
    stage('Translate') {
      when {
        changeset "locales/en/**"
      }
      steps {
        script {
          sh 'npm install -g ai-l10n'
          withCredentials([string(
            credentialsId: 'l10n-api-key',
            variable: 'L10N_API_KEY'
          )]) {
            sh 'npx ai-l10n batch ai-l10n.config.json'
          }
        }
      }
    }
  }
}

Recursos avançados

Atualizações incrementais

Traduza apenas novas chaves enquanto preserva as traduções existentes:

# Only translate new keys, preserve existing translations
npx ai-l10n translate path/to/en.json --update

Tradução em lote

Traduza vários arquivos de uma vez com um arquivo de configuração:

// example translate-config.json
[
  {
    "sourceFile": "./locales/en/common.json",
    "targetLanguages": ["pl", "ru", "ar"],
    "generatePluralForms": true,
    "translateOnlyNewStrings": true
  },
  {
    "sourceFile": "./locales/en/admin.json",
    "targetLanguages": ["pl", "ru", "ar", "de"]
  }
]
npx ai-l10n batch translate-config.json

Formas plurais do i18next

Gere automaticamente todas as strings de formas plurais necessárias com os sufixos corretos para idiomas com regras complexas de pluralização (como russo, árabe ou polonês):

npx ai-l10n translate ./locales/en.json \
  --languages ru,ar,pl \
  --plural

Suporte a Flutter ARB

Suporte total para arquivos Flutter ARB com atualizações automáticas de metadados:

npx ai-l10n translate ./lib/l10n/app_en_US.arb \
  --languages es_ES,fr_FR,de

Suporte a idiomas

O l10n.dev suporta mais de 165 idiomas com níveis variados de proficiência:

  • Forte (12 idiomas): Inglês, espanhol, francês, alemão, chinês, russo, português, italiano, japonês, coreano, árabe, hindi
  • Alto (53 idiomas): A maioria dos idiomas europeus e asiáticos, incluindo holandês, sueco, polonês, turco, vietnamita, tailandês e mais
  • Moderado (mais de 100 idiomas): Ampla gama de idiomas mundiais

Detecção de estrutura de projeto

O ai-l10n detecta automaticamente a estrutura do seu projeto e gera traduções de acordo:

Estrutura baseada em pastas

Organize traduções por pastas de idiomas:

locales/
  en/
    common.json
    errors.json
  es/              # Auto-detected
    common.json
    errors.json
  fr-FR/           # Auto-detected
    common.json

Estrutura baseada em arquivos

Use arquivos separados para cada idioma:

locales/
  en.json          # Source
  es.json          # Auto-detected
  fr-FR.json       # Auto-detected
  zh-Hans-CN.json  # Auto-detected

Melhores práticas

  • Use atualizações incrementais: Use a flag --update para traduzir apenas novas strings, preservando as traduções existentes e economizando caracteres.
  • Integre com CI/CD: Automatize traduções a cada commit nos seus arquivos de idioma de origem para traduções sempre atualizadas.
  • Armazene chaves de API com segurança: Use variáveis de ambiente ou gerenciamento de segredos para chaves de API em ambientes de CI/CD.
  • Revise o conteúdo filtrado: Verifique arquivos .filtered para strings excluídas devido a violações de política de conteúdo.
  • Use configuração em lote: Para vários arquivos, use a configuração de tradução em lote para gerenciar todas as traduções a partir de um único comando.

Pronto para otimizar seu fluxo de trabalho de localização com IA?