- يمكن لروبوتات الدردشة المدعومة بالذكاء الاصطناعي ترجمة المحادثات تلقائيًا إلى أكثر من 100 لغة باستخدام نموذج لغوي كبير، أو يمكنك بناء تدفقات ترجمة مخصصة لمزيد من التحكم.
- عادةً ما يتم تخزين لغة المستخدم، ثم تُترجم الرسائل الواردة إلى لغة الروبوت، وتُعالج، ثم تُترجم الردود مرة أخرى إلى لغة المستخدم.
- تُعد DeepL خيارًا شائعًا للترجمات عالية الجودة، لكن يمكن دمج أي واجهة برمجة تطبيقات للترجمة (مثل Google Translate) باستخدام كود مشابه.
في عالم اليوم متعدد اللغات، القدرة على التفاعل مع المستخدمين بلغتهم الأم ميزة أساسية لأي روبوت دردشة.
إذا كنت تبني روبوت دردشة بالذكاء الاصطناعي، فإن الترجمة تلقائية إذا استخدمت نموذج لغوي كبير كـ 'عقل' لروبوتك. يمكن لـ وكيل LLM ترجمة المحادثات تلقائيًا إلى أكثر من 100 لغة.
ولكن إذا كنت ترغب في إعداد إمكانيات ترجمة مخصصة أثناء بناء روبوت GPT الخاص بك، يمكننا مساعدتك في ذلك.
في هذا المقال، سنتعمق في تفاصيل الأكواد المطلوبة لتخصيص الترجمة.
كيف تعمل ترجمة روبوت الدردشة؟
تتمحور استراتيجيتنا حول اعتراض رسائل المستخدمين، وتحديد لغتهم، وترجمة هذه الرسائل من وإلى لغة تشغيل الروبوت.
تشمل هذه العملية:
- تخزين اللغة المكتشفة
- ترجمة رسالة المستخدم إلى لغة الروبوت
- معالجة الرسالة، ثم
- ترجمة رد الروبوت مرة أخرى إلى لغة المستخدم
على سبيل المثال، إذا أرسل المستخدم رسالة بالإسبانية، سيخزن الروبوت القيمة "es" كمتغير للغة. سيترجم البرنامج الرسالة إلى الإنجليزية للروبوت، ثم يعيد ترجمة رد الروبوت إلى الإسبانية قبل إرساله للمستخدم.
الخطوة 1: اختر أدواتك
سنستخدم خدمة DeepL للترجمة، المعروفة بدقتها وكفاءتها.
سنوضح هذا التكامل من خلال روبوت صدى بسيط يرد على المستخدمين بتكرار رسائلهم. سنستخدم Axios لإجراء طلبات واجهة البرمجة، حيث إنه مدمج تلقائيًا مع Botpress.

الخطوة 2: أنشئ المتغيرات اللازمة
أولاً، نحتاج إلى إضافة متغير مستخدم باسم `language` لتخزين اللغة الأولية أو المكتشفة.
تسهل DeepL هذه العملية من خلال اكتشاف وإرجاع لغة النص المدخل، مما يبسط مهمتنا إلى طلب واحد فقط لواجهة البرمجة.
الخطوة 3: أنشئ خطافات الاعتراض
خطاف قبل رسالة واردة
لاعتراض وترجمة رسالة المستخدم قبل وصولها إلى Botpress، نضيف خطاف "قبل الرسالة الواردة". سنسمي هذا الخطاف "Translation-In"، وهو مسؤول عن ترجمة الرسالة الواردة إلى الإنجليزية واستبدال الرسالة الأصلية، بحيث يعالجها Botpress كما لو كانت بالإنجليزية.
إليك كيف يبدو كود هذا الخطاف:
await axios
.post(
'https://api-free.deepl.com/v2/translate',
{
text: [event.preview],
target_lang: 'EN'
},
{
headers: {
Authorization: 'DeepL-Auth-Key {{your key here}}',
'Content-Type': 'application/json'
}
}
)
.then((response) => {
event.payload.text = response.data.translations[0].text
event.preview = response.data.translations[0].text
event.state.user.language = response.data.translations[0].detected_source_language
})
.catch(function (error) {
// Error handling
});ملاحظة هامة: استخدم دائمًا متغيرات إعدادات Botpress عند إدخال مفتاح واجهة البرمجة الخاص بك.
خطاف قبل رسالة صادرة
بالنسبة لخطاف "قبل الرسالة الصادرة"، سنسميه "Translation-Out". سيعترض رد الروبوت ليعيد ترجمته إلى لغة المستخدم، لضمان استمرار المحادثة بلغة المستخدم المفضلة.
يتضمن التنفيذ استبدال الرسالة الصادرة بنسختها المترجمة:
await axios
.post(
'https://api-free.deepl.com/v2/translate',
{
text: [outgoingEvent.preview],
target_lang: event.state.user.language
},
{
headers: {
Authorization: 'DeepL-Auth-Key {{your key here}}',
'Content-Type': 'application/json'
}
}
)
.then((response) => {
outgoingEvent.payload.text = response.data.translations[0].text
outgoingEvent.preview = response.data.translations[0].text
})
.catch(function (error) {
// Error handling
});ابدأ البناء اليوم
من أبرز فوائد استخدام روبوت الدردشة بالذكاء الاصطناعي قدرته على التحدث بعدة لغات. مع منصات مثل Botpress، يمكنك إعداد روبوتك بسرعة للتفاعل مع المستخدمين بأكثر من 100 لغة.
إذا كنت تريد روبوت دردشة سهل الوصول وسهل الاستخدام، يمكنك دمج أي خدمة ترجمة مع Botpress بسهولة. ومع تكامل القنوات لدينا، يمكنك نشر روبوتك عبر واتساب، فيسبوك ماسنجر، أو موقعك الإلكتروني.
ابدأ اليوم. الخدمة مجانية.
مراجع إضافية
- متغيرات الإعداد
- واجهة برمجة تطبيقات DeepL Translate
- حزمة Axios على NPM
- معالجة الأخطاء في Axios
- قناة Botpress على يوتيوب
الأسئلة الشائعة
1. هل يمكنني استخدام خدمة ترجمة غير DeepL، مثل Google Translate أو Microsoft Translator؟
نعم، يمكنك استخدام خدمات ترجمة أخرى من خلال تعديل خطاف الترجمة في Botpress ليتوافق مع تنسيق الطلب والاستجابة الخاص بالخدمة التي تختارها. يمكن دمج هذه الخدمات بسهولة عبر طلبات HTTP ضمن الإجراءات أو الخطافات المخصصة.
2. هل يمكنني ترجمة أجزاء محددة فقط من المحادثة؟
نعم، يمكنك ترجمة أجزاء محددة فقط من المحادثة عن طريق إضافة منطق شرطي في خطاف الترجمة يتحقق من أنواع رسائل معينة أو متغيرات يحددها المستخدم قبل تنفيذ الترجمة. يتيح لك ذلك التحكم الكامل فيما يتم ترجمته ومتى.
3. هل يمكنني إخفاء هوية بيانات المستخدم قبل إرسالها إلى خدمة الترجمة؟
نعم، يمكنك إخفاء بيانات المستخدم قبل إرسالها إلى خدمة الترجمة عن طريق معالجة الرسالة مسبقًا (مثلاً باستخدام regex لإخفاء الأسماء أو عناوين البريد الإلكتروني أو المعرفات) ضمن خطاف أو إجراء Botpress. يضمن ذلك الامتثال لمتطلبات الخصوصية مع استمرار الترجمة.
4. هل يمكنني استخدام إعداد الترجمة هذا عبر قنوات مختلفة (مثل WhatsApp، Messenger)؟
نعم، يمكنك استخدام نفس إعداد الترجمة عبر قنوات متعددة مثل واتساب، ماسنجر، Slack، أو موقعك الإلكتروني. طالما أن روبوتك يستقبل الرسالة، سيعمل منطق الترجمة بغض النظر عن المنصة.
5. كيف يمكنني تسجيل أخطاء الترجمة لأغراض التحليل أو تصحيح الأخطاء؟
لتسجيل أخطاء الترجمة في Botpress، يمكنك استخدام console.error() أثناء التطوير، أو إرسال الأخطاء إلى جدول مخصص في Botpress، أو إلى خدمة تسجيل خارجية مثل Loggly أو Datadog، أو إلى واجهة برمجة تطبيقات داخلية. يساعدك ذلك في تتبع الإخفاقات ومراقبة الأداء مع مرور الوقت.







