التكوين المتقدم
يوفر مترجم 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 - الصينية
تكوين النموذج المخصص
يمكنك تخصيص نماذج الذكاء الاصطناعي والإرشادات مباشرة في تكوين المترجم الآلي الخاص بك:
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
- استخدم
*
كعلامة شاملة لأي لغة - استخدم
*:*
كخيار احتياطي لجميع الترجمات - راجع مزودي نماذج اللغة الكبيرة البديلة لمعرفة جميع الخيارات
الإرشادات المخصصة
يمكنك تحديد إرشادات ترجمة مخصصة باستخدام العناصر النائبة:
{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 لديك لديها إمكانية الوصول إلى مفتاح API لـ Lingo.dev أو مزود نماذج اللغة الكبيرة المكون لديك. مثال لـ Groq:
# إجراءات GitHub
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/
للتأكد من إعادة بناء جميع الملفات.
أخطاء البناء: تحقق من أن مفتاح API لمزود LLM المكوّن تم تعيينه بشكل صحيح في متغيرات البيئة الخاصة بك.
مشكلات الأداء: قم بتمكين وضع التصحيح لتحديد الاختناقات في عملية التجميع.
الخطوات التالية
- الأسئلة الشائعة: الأسئلة الشائعة واستكشاف الأخطاء وإصلاحها
- أدلة الإطارات: Next.js، React Router، Vite
- كيف يعمل: فهم عملية البناء