Configuration avancée
Lingo.dev Compiler offre de nombreuses options de configuration pour personnaliser le comportement de traduction et optimiser votre flux de travail de localisation.
Paramètres de configuration
Lors de l'implémentation du compilateur dans votre projet, vous pouvez transmettre un objet de paramètres avec les options suivantes :
// Configuration par défaut
const compilerConfig = {
sourceRoot: "src",
lingoDir: "lingo",
sourceLocale: "en",
targetLocales: ["es"],
rsc: false,
debug: false,
models: {
// Configuration de modèle personnalisée
"*:fr": "qwen/qwen3-32b",
"en:es": "meta-llama/llama-4-maverick-17b-128e-instruct",
"*:*": "qwen/qwen3-32b",
},
prompt:
"You are AI translator. You translate from {SOURCE_LOCALE} to {TARGET_LOCALE}.",
};
// Next.js
lingoCompiler.next(compilerConfig)(nextConfig);
// Vite/React Router
lingoCompiler.vite(compilerConfig)(viteConfig);
Options de configuration
sourceRoot
- Chemin vers votre répertoire source où le répertoirelingo/
sera stockélingoDir
- Nom du répertoire contenant les fichiers de traduction (par défaut :"lingo"
)sourceLocale
- La langue source de votre application (par défaut :"en"
)targetLocales
- Tableau des langues cibles pour la traductionrsc
- Activer la prise en charge des React Server Components (par défaut :false
)debug
- Activer la journalisation de débogage pour le dépannage (par défaut :false
)models
- Configuration personnalisée de modèle d'IA pour des paires de langues spécifiques (optionnel)prompt
- Invite de traduction personnalisée avec des espaces réservés (optionnel)
Modèles Groq suggérés
Pour de meilleurs résultats, nous avons testé et validé la qualité des modèles GROQ suivants pour des locales spécifiques :
qwen/qwen3-32b
- ar - Arabe
- de - Allemand
- fr - Français
- pt-BR - Portugais (Brésil)
meta-llama/llama-4-maverick-17b-128e-instruct
- es - Espagnol
- ja - Japonais
- ko - Coréen
- ru - Russe
- zh - Chinois
Vous pouvez également utiliser des modèles d'autres fournisseurs de LLM.
Configuration de modèle personnalisé
Vous pouvez personnaliser les modèles d'IA et les prompts directement dans votre configuration de compilateur :
const compilerConfig = {
sourceLocale: "en",
targetLocales: ["es", "fr", "de"],
models: {
"*:fr": "qwen/qwen3-32b",
"en:es": "meta-llama/llama-4-maverick-17b-128e-instruct",
"es:fr": "meta-llama/llama-4-maverick-17b-128e-instruct",
"*:*": "qwen/qwen3-32b",
},
prompt:
"You are a professional translator specializing in technical documentation. Translate from {SOURCE_LOCALE} to {TARGET_LOCALE} while maintaining technical accuracy.",
};
Configuration du modèle
- Définissez les paires de locales comme
source-locale:target-locale
- Utilisez
*
comme joker pour n'importe quelle locale - Utilisez
*:*
comme solution de repli pour toutes les traductions - Consultez les fournisseurs LLM alternatifs pour toutes les options
Prompts personnalisés
Vous pouvez définir des prompts de traduction personnalisés avec des placeholders :
{SOURCE_LOCALE}
- Code de la langue source{TARGET_LOCALE}
- Code de la langue cible
Pour créer des glossaires personnalisés, incluez la terminologie dans votre prompt. Référez-vous au prompt par défaut du compilateur pour les meilleures pratiques.
Normalisation de build
Exécutez toujours un build de production en local avant de committer des modifications :
npm run build
Cela garantit que les fichiers meta.json
et dictionary.js
dans le répertoire lingo/
contiennent uniquement les chaînes présentes dans votre application et sont correctement formatés.
Configuration du hook pre-commit
Configurez la normalisation automatique en utilisant husky :
# Installer husky
npm install --save-dev husky
# Ajouter un hook pre-commit
npx husky add .husky/pre-commit "npm run build"
Configuration spécifique à l'environnement
Développement
const isDev = process.env.NODE_ENV === "development";
const compilerConfig = {
debug: isDev,
targetLocales: isDev ? ["es"] : ["es", "fr", "de", "ja"],
};
Intégration CI/CD
Pour les builds automatisés, assurez-vous que votre environnement CI a accès à la clé API pour Lingo.dev ou votre fournisseur LLM configuré. Ex. pour Groq :
# GitHub Actions
GROQ_API_KEY: ${{ secrets.GROQ_API_KEY }}
# Vercel
GROQ_API_KEY=gsk_...
# Netlify
GROQ_API_KEY=gsk_...
Optimisation des performances
Builds incrémentaux
Le compilateur automatiquement :
- Suit les modifications de contenu par empreinte de fichier
- Ne traduit que le contenu nouveau ou modifié
- Réutilise les traductions existantes pour le contenu inchangé
Optimisation des bundles
- Bundles par locale - Chargez uniquement les traductions pour la locale active
- Tree shaking - Supprimez les traductions inutilisées des builds de production
- Code splitting - Chargez les traductions à la demande pour les applications basées sur les routes
Dépannage
Mode debug
Activez la journalisation de débogage pour résoudre les problèmes :
const compilerConfig = {
debug: true,
// ... autres options
};
Problèmes courants
Traductions manquantes : Assurez-vous d'avoir exécuté npm run build
localement et d'avoir commité le répertoire lingo/
. Si vous utilisez NextJS, vous devrez peut-être supprimer le répertoire .next/
pour garantir que tous les fichiers sont reconstruits.
Erreurs de build : Vérifiez que votre clé API pour le fournisseur LLM configuré est correctement définie dans vos variables d'environnement.
Problèmes de performance : Activez le mode debug pour identifier les goulots d'étranglement dans le processus de compilation.
Prochaines étapes
- FAQ : Questions fréquentes et dépannage
- Guides des frameworks : Next.js, React Router, Vite
- Comment ça fonctionne : Comprendre le processus de build