ترجمہ قطار: بیچ پروسیسنگ سسٹم
یہ مضمون وضاحت کرتا ہے کہ ہم AI API کے استعمال کو بہتر بنانے کے لیے ترجمے کیسے قطار میں لگاتے اور بیچ پروسیس کرتے ہیں۔
مسئلہ: مانگ پر ترجمہ مہنگا ہے
مانگ پر مواد کا ترجمہ کرنے میں مسائل ہیں:
-
سست: ہر ترجمے میں 1-2 سیکنڈ لگتے ہیں
-
مہنگا: فی درخواست API لاگت
-
فالتو: ایک ہی متن کئی بار ترجمہ ہوتا ہے
-
بلاکنگ: صارف ترجمے کا انتظار کرتا ہے
ہمیں ایک بہتر طریقہ کار کی ضرورت ہے۔
حل: قطار اور بیچ
قطار: ترجمے کی درخواستیں جمع کریں
بیچ: متعدد ترجمے ایک ساتھ پروسیس کریں
کیش: دوبارہ استعمال کے لیے نتائج محفوظ کریں
شیڈول: قطار کو وقتاً فوقتاً پروسیس کریں (ریئل ٹائم نہیں)
قطار کی ساخت
قطار فائل
مقام: ڈسک پر JSON فائل
فارمیٹ: ترجمے کی درخواستوں کی صف
فیلڈز:
-
text: ترجمہ کرنے کے لیے انگریزی متن -
target_lang: زبان کا کوڈ (hi، de، fr، وغیرہ) -
context: متن کہاں ظاہر ہوتا ہے (پروڈکٹ، استفسار، مضمون) -
priority: اعلیٰ/عام/کم
قطار میں شامل کرنا
جب ترجمہ غائب ہو:
queue_translation(text, target_lang, context="product")
ڈیڈپلیکیشن: چیک کریں کہ پہلے سے قطار میں ہے
توثیق: غلط اقدار مسترد کریں
بیچ پروسیسنگ
اسکرپٹ
مقام: scripts/web/process_translation_queue.py
شیڈول: کرون کے ذریعے ہر 6 گھنٹے بعد چلتا ہے
لاک فائل: بیک وقت رنز کو روکتا ہے
پروسیس فلو
1. قطار لوڈ کریں: تمام زیر التواء درخواستیں پڑھیں
2. زبان کے لحاظ سے گروپ کریں: ایک ہی زبان کی درخواستیں بیچ کریں
3. ڈیڈپلیکیٹ کریں: بیچ کے اندر نقول ہٹائیں
4. کیش چیک کریں: پہلے سے ترجمہ شدہ متون چھوڑیں
5. بیچ ترجمہ کریں: DeepSeek API کو بھیجیں
6. نتائج پارس کریں: جواب سے ترجمے نکالیں
7. کیش میں محفوظ کریں: فریز ٹیبلز میں اسٹور کریں
8. قطار صاف کریں: پروسیس شدہ درخواستیں ہٹائیں
بیچ ترجمہ
API کال
ماڈل: DeepSeek-V3 (Together.ai کے ذریعے)
سسٹم پرامپٹ: کیش شدہ (زبان میں تمام بیچز کے لیے یکساں)
یوزر پرامپٹ: متغیر (بیچ کے مطابق)
فارمیٹ: نمبر شدہ فہرست
مثال:
Translate these 10 texts:
1. Mini PC
2. Thin Client
3. Compact Desktop
...
جواب:
1. मिनी पीसी
2. थिन क्लाइंट
3. कॉम्पैक्ट डेस्कटॉप
...
پارسنگ
لائن نمبر کے ذریعے ترجمے نکالیں:
-
نمبر کا سابقہ ہٹائیں (
1.،2.، وغیرہ) -
اصل متون سے پوزیشن کے ذریعے ملائیں
-
گنتی کی مطابقت کی توثیق کریں
ایرر ہینڈلنگ
API ناکامی: فال بیک API کے ساتھ دوبارہ کوشش کریں
پارس ناکامی: اصل متون واپس کریں
جزوی کامیابی: کامیاب ترجمے محفوظ کریں، ناکام دوبارہ قطار میں ڈالیں
کیشنگ حکمت عملی
فریز ٹیبلز
مقام: فی زبان JSON فائلیں
فارمیٹ: {"English": "Translation"}
لوڈنگ: اسٹارٹ اپ پر ایک بار لوڈ ہوتی ہیں
فائدہ: تیز تلاش، کوئی API کال نہیں
کیش ہٹ ریٹ
پہلا رن: کم (سب کچھ نیا)
بعد کے رنز: زیادہ (زیادہ تر متون کیش شدہ)
فائدہ: کم API لاگت
تحفظ کے قواعد
ترجمے کے دوران، ہم محفوظ رکھتے ہیں:
برانڈ نام: Thinvent®، Intel®، AMD®
HTML ٹیگز: <p>، <br>، <strong>
URLs: https://www.thinvent.in
SKUs: Treo-N100-8-256
نمبر: 8GB، 256GB، 4 cores
عمل درآمد: سسٹم پرامپٹ میں ریجیکس پیٹرنز
زبان کی شناخت
ترجمہ کرنے سے پہلے چیک کریں کہ پہلے سے ترجمہ شدہ ہے:
طریقہ: کریکٹر سیٹ تجزیہ
ہندی: دیوناگری اسکرپٹ
چینی: CJK حروف
عربی: عربی اسکرپٹ
فائدہ: غیر ضروری ترجمے چھوڑیں
ترجیحی ہینڈلنگ
اعلیٰ ترجیح: پروڈکٹ نام، خصوصیات (پہلے پروسیس کریں)
عام ترجیح: تفصیلات، مضامین (دوسرے پروسیس کریں)
کم ترجیح: پرانا مواد، کم دیکھا جانے والا (آخر میں پروسیس کریں)
فائدہ: اہم مواد پہلے ترجمہ ہوتا ہے
شیڈولنگ
کرون جاب
تعدد: ہر 6 گھنٹے بعد
کمانڈ: python3 scripts/web/process_translation_queue.py
لاک فائل: /tmp/process_translation_queue.lock
فائدہ: خودکار پروسیسنگ، کوئی دستی مداخلت نہیں
ہفتہ وار کام
مضامین: نئے مضامین ہر ہفتے ترجمہ کریں
Babel اسٹرینگز: ٹیمپلیٹ ترجمے ہر ہفتے اپ ڈیٹ کریں
اسکرپٹ: scripts/web/translate_articles_weekly.sh
نگرانی
قطار کا سائز
زیر التواء درخواستوں کو ٹریک کریں:
-
کل درخواستیں
-
فی زبان درخواستیں
-
سب سے پرانی درخواست کی عمر
الرٹ: اگر قطار بہت بڑی ہو جائے
ترجمہ کے اعداد و شمار
پروسیسنگ ٹریک کریں:
-
فی بیچ ترجمے
-
API کامیابی کی شرح
-
کیش ہٹ ریٹ
-
پروسیسنگ کا وقت
لاگت کی ٹریکنگ
API استعمال مانیٹر کریں:
-
فی دن درخواستیں
-
فی درخواست ٹوکنز
-
فی زبان لاگت
حوالہ جات
متعلقہ مضامین
-
ترجمہ سسٹم - تین ٹیکنالوجی ہائبرڈ
-
مواد AI جنریشن - DeepSeek انٹیگریشن
-
زبان کی شناخت - صارف کی زبان کی ترجیح
خلاصہ
ترجمہ قطار مؤثر بیچ پروسیسنگ کو ممکن بناتی ہے:
قطار:
-
ترجمے کی درخواستیں جمع کریں
-
بیچ کے اندر ڈیڈپلیکیٹ کریں
-
ترجیحی ہینڈلنگ
-
توثیق اور فلٹرنگ
بیچ پروسیسنگ:
-
زبان کے لحاظ سے گروپ کریں
-
DeepSeek API کو بھیجیں
-
نمبر شدہ جوابات پارس کریں
-
فریز ٹیبلز میں محفوظ کریں
کیشنگ:
-
ترجمہ سے پہلے کیش چیک کریں
-
زیادہ کیش ہٹ ریٹ
-
کم API لاگت
شیڈولنگ:
-
کرون کے ذریعے ہر 6 گھنٹے بعد
-
لاک فائل بیک وقت رنز روکتی ہے
-
ہفتہ وار مضمون ترجمے
تحفظ:
-
برانڈ نام
-
HTML ٹیگز
-
URLs اور SKUs
یہ طریقہ بیچنگ اور کیشنگ کے ذریعے API لاگت کم کرتا ہے اور ترجمے کا معیار بہتر بناتا ہے۔