التكوين المتقدم
يوفر مترجم Lingo.dev خيارات تكوين واسعة لتخصيص سلوك الترجمة وتحسين سير عمل التوطين الخاص بك.
إعدادات التكوين
عند تنفيذ المُجمِّع في مشروعك، يمكنك تمرير كائن إعدادات بالخيارات التالية:
// الإعدادات الافتراضية
const compilerConfig = {
sourceRoot: "src",
lingoDir: "lingo",
sourceLocale: "en",
targetLocales: ["es"],
rsc: false,
debug: false,
models: {
// تكوين النموذج المخصص
"*:fr": "mistral-saba-24b",
"en:es": "meta-llama/llama-4-maverick-17b-128e-instruct",
"*:*": "mistral-saba-24b",
},
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);
خيارات التكوين
sourceRoot
- المسار إلى دليل المصدر الخاص بك حيث سيتم تخزين دليلlingo/
lingoDir
- اسم الدليل الذي يحتوي على ملفات الترجمة (الافتراضي:"lingo"
)sourceLocale
- اللغة المصدر لتطبيقك (الافتراضي:"en"
)targetLocales
- مصفوفة اللغات المستهدفة للترجمة إليهاrsc
- تمكين دعم مكونات خادم React (الافتراضي:false
)debug
- تمكين تسجيل التصحيح لاستكشاف الأخطاء وإصلاحها (الافتراضي:false
)models
- تكوين نموذج الذكاء الاصطناعي المخصص لأزواج لغات محددة (اختياري)prompt
- مطالبة ترجمة مخصصة مع العناصر النائبة (اختياري)
نماذج Groq المقترحة
للحصول على أفضل النتائج، قمنا باختبار والتحقق من جودة نماذج GROQ التالية للغات محددة:
mistral-saba-24b
- ar - العربية
- de - الألمانية
- fr - الفرنسية
- pt-BR - البرتغالية (البرازيل)
meta-llama/llama-4-maverick-17b-128e-instruct
- es - الإسبانية
- ja - اليابانية
- ko - الكورية
- ru - الروسية
- zh - الصينية
التحكم في معالجة الملفات
تخطي الترجمات
أضف السمة data-lingo-skip
إلى العناصر التي لا تريد ترجمتها:
<div data-lingo-skip>هذا المحتوى لن تتم ترجمته</div>
تجاوزات الترجمة
يمكنك تجاوز الترجمات للغات محددة باستخدام سمات data-lingo-override-
:
<button data-lingo-override-es="¡Hola!" data-lingo-override-fr="Bonjour!">
Hello
</button>
تكوين النموذج المخصص
يمكنك تخصيص نماذج الذكاء الاصطناعي والتوجيهات مباشرة في تكوين المُجمِّع الخاص بك:
const compilerConfig = {
sourceLocale: "en",
targetLocales: ["es", "fr", "de"],
models: {
"*:fr": "mistral-saba-24b",
"en:es": "meta-llama/llama-4-maverick-17b-128e-instruct",
"es:fr": "meta-llama/llama-4-maverick-17b-128e-instruct",
"*:*": "mistral-saba-24b",
},
prompt:
"You are a professional translator specializing in technical documentation. Translate from {SOURCE_LOCALE} to {TARGET_LOCALE} while maintaining technical accuracy.",
};
تكوين النموذج
- حدد أزواج اللغات كـ
source-locale:target-locale
- استخدم
*
كبديل لأي لغة - استخدم
*:*
كخيار احتياطي لجميع الترجمات - راجع نماذج GROQ للخيارات المتاحة
المطالبات المخصصة
يمكنك تحديد مطالبات ترجمة مخصصة مع العناصر النائبة:
{SOURCE_LOCALE}
- رمز اللغة المصدر{TARGET_LOCALE}
- رمز اللغة الهدف
لبناء مسارد مخصصة، قم بتضمين المصطلحات في المطالبة الخاصة بك. راجع مطالبة المترجم الافتراضية لأفضل الممارسات.
تطبيع البناء
قم دائمًا بتشغيل بناء الإنتاج محليًا قبل الالتزام بالتغييرات:
npm run build
هذا يضمن أن ملفات meta.json
و dictionary.js
في دليل lingo/
تحتوي فقط على السلاسل النصية الموجودة في تطبيقك وأنها منسقة بشكل صحيح.
إعداد خطاف ما قبل الالتزام
قم بإعداد التطبيع التلقائي باستخدام husky:
# تثبيت husky
npm install --save-dev husky
# إضافة خطاف ما قبل الالتزام
npx husky add .husky/pre-commit "npm run build"
التكوين الخاص بالبيئة
التطوير
const isDev = process.env.NODE_ENV === "development";
const compilerConfig = {
debug: isDev,
targetLocales: isDev ? ["es"] : ["es", "fr", "de", "ja"],
};
تكامل CI/CD
للبناء الآلي، تأكد من أن بيئة CI لديك لديها حق الوصول إلى مفتاح GROQ API:
# GitHub Actions
GROQ_API_KEY: ${{ secrets.GROQ_API_KEY }}
# Vercel
GROQ_API_KEY=gsk_...
# Netlify
GROQ_API_KEY=gsk_...
تحسين الأداء
البناء التدريجي
يقوم المترجم تلقائيًا بما يلي:
- تتبع تغييرات المحتوى من خلال بصمات الملفات
- ترجمة المحتوى الجديد أو المعدل فقط
- إعادة استخدام الترجمات الموجودة للمحتوى غير المتغير
تحسين الحزمة
- حزم لكل لغة محلية - تحميل الترجمات للغة المحلية النشطة فقط
- تقليم الشجرة - إزالة الترجمات غير المستخدمة من إصدارات الإنتاج
- تقسيم الكود - تحميل الترجمات عند الطلب للتطبيقات المعتمدة على المسارات
استكشاف الأخطاء وإصلاحها
وضع التصحيح
تمكين تسجيل التصحيح لاستكشاف المشكلات وإصلاحها:
const compilerConfig = {
debug: true,
// ... خيارات أخرى
};
المشكلات الشائعة
ترجمات مفقودة: تأكد من تشغيل npm run build
محليًا والالتزام بدليل lingo/
. إذا كنت تستخدم NextJS، قد تحتاج إلى حذف دليل .next/
للتأكد من إعادة بناء جميع الملفات.
أخطاء البناء: تحقق من تعيين GROQ_API_KEY
بشكل صحيح في متغيرات البيئة الخاصة بك.
مشكلات الأداء: قم بتمكين وضع التصحيح لتحديد الاختناقات في عملية التجميع.
الخطوات التالية
- الأسئلة الشائعة: الأسئلة الشائعة واستكشاف الأخطاء وإصلاحها
- أدلة الإطارات: Next.js، React Router، Vite
- كيف يعمل: فهم عملية البناء