अनुवाद कतार: बैच प्रसंस्करण प्रणाली

यह लेख बताता है कि हम एआई एपीआई उपयोग को अनुकूलित करने के लिए अनुवादों को कैसे कतारबद्ध और बैच-प्रोसेस करते हैं।

समस्या: ऑन-डिमांड अनुवाद महंगा है

सामग्री का ऑन-डिमांड अनुवाद करने में समस्याएं हैं:

  • धीमा: प्रत्येक अनुवाद में 1-2 सेकंड लगते हैं

  • महंगा: प्रति अनुरोध एपीआई लागत

  • अनावश्यक: एक ही पाठ का बार-बार अनुवाद

  • ब्लॉकिंग: उपयोगकर्ता अनुवाद की प्रतीक्षा करता है

हमें एक बेहतर दृष्टिकोण की आवश्यकता है।

समाधान: कतार और बैच

कतार: अनुवाद अनुरोध एकत्र करें

बैच: एक साथ कई अनुवाद प्रक्रिया करें

कैश: पुन: उपयोग के लिए परिणाम संग्रहीत करें

शेड्यूल: कतार को समय-समय पर प्रक्रिया करें (रीयल-टाइम नहीं)

कतार संरचना

कतार फ़ाइल

स्थान: डिस्क पर 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. कतार साफ़ करें: प्रसंस्कृत अनुरोध हटाएं

बैच अनुवाद

एपीआई कॉल

मॉडल: DeepSeek-V3 (Together.ai के माध्यम से)

सिस्टम प्रॉम्प्ट: कैश्ड (भाषा में सभी बैचों के लिए समान)

यूजर प्रॉम्प्ट: परिवर्तनशील (बैच-विशिष्ट)

प्रारूप: क्रमांकित सूची

उदाहरण:

इन 10 पाठों का अनुवाद करें:
1. Mini PC
2. Thin Client
3. Compact Desktop
...

प्रतिक्रिया:

1. मिनी पीसी
2. थिन क्लाइंट
3. कॉम्पैक्ट डेस्कटॉप
...

पार्सिंग

लाइन नंबर द्वारा अनुवाद निकालें:

  • संख्या उपसर्ग हटाएं (1., 2., आदि)

  • स्थिति के अनुसार मूल पाठों से मिलान करें

  • जांचें कि गणना मेल खाती है

त्रुटि प्रबंधन

एपीआई विफलता: फॉलबैक एपीआई के साथ पुन: प्रयास करें

पार्स विफलता: मूल पाठ वापस करें

आंशिक सफलता: सफल अनुवाद सहेजें, विफलताओं को पुन: कतारबद्ध करें

कैशिंग रणनीति

वाक्यांश तालिकाएँ

स्थान: प्रति भाषा JSON फ़ाइलें

प्रारूप: {"English": "Translation"}

लोडिंग: स्टार्टअप पर एक बार लोड होती हैं

लाभ: त्वरित लुकअप, कोई एपीआई कॉल नहीं

कैश हिट दर

पहला रन: कम (सब कुछ नया)

बाद के रन: उच्च (अधिकांश पाठ कैश्ड)

लाभ: एपीआई लागत कम हुई

संरक्षण नियम

अनुवाद के दौरान, हम संरक्षित करते हैं:

ब्रांड नाम: Thinvent®, Intel®, AMD®

HTML टैग: <p>, <br>, <strong>

URL: https://www.thinvent.in

SKU: Treo-N100-8-256

संख्याएँ: 8GB, 256GB, 4 cores

कार्यान्वयन: सिस्टम प्रॉम्प्ट में रेगेक्स पैटर्न

भाषा पहचान

अनुवाद करने से पहले, जांचें कि क्या पहले से अनुवादित है:

विधि: वर्ण सेट विश्लेषण

हिंदी: देवनागरी लिपि

चीनी: CJK वर्ण

अरबी: अरबी लिपि

लाभ: अनावश्यक अनुवाद छोड़ें

प्राथमिकता प्रबंधन

उच्च प्राथमिकता: उत्पाद नाम, विशेषताएँ (पहले प्रक्रिया करें)

सामान्य प्राथमिकता: विवरण, लेख (दूसरे प्रक्रिया करें)

निम्न प्राथमिकता: पुरानी सामग्री, शायद ही देखी गई (अंत में प्रक्रिया करें)

लाभ: महत्वपूर्ण सामग्री पहले अनुवादित

शेड्यूलिंग

क्रॉन जॉब

आवृत्ति: हर 6 घंटे

कमांड: python3 scripts/web/process_translation_queue.py

लॉक फ़ाइल: /tmp/process_translation_queue.lock

लाभ: स्वचालित प्रसंस्करण, कोई मैन्युअल हस्तक्षेप नहीं

साप्ताहिक कार्य

लेख: नए लेखों का साप्ताहिक अनुवाद करें

बेबल स्ट्रिंग्स: टेम्प्लेट अनुवाद साप्ताहिक अपडेट करें

स्क्रिप्ट: scripts/web/translate_articles_weekly.sh

निगरानी

कतार आकार

लंबित अनुरोध ट्रैक करें:

  • कुल अनुरोध

  • प्रति भाषा अनुरोध

  • सबसे पुराने अनुरोध की आयु

अलर्ट: यदि कतार बहुत बड़ी हो जाए

अनुवाद आँकड़े

प्रसंस्करण ट्रैक करें:

  • प्रति बैच अनुवाद

  • एपीआई सफलता दर

  • कैश हिट दर

  • प्रसंस्करण समय

लागत ट्रैकिंग

एपीआई उपयोग की निगरानी करें:

  • प्रति दिन अनुरोध

  • प्रति अनुरोध टोकन

  • प्रति भाषा लागत

संदर्भ

संबंधित लेख

सारांश

अनुवाद कतार कुशल बैच प्रसंस्करण सक्षम करती है:

कतार:

  • ✅ अनुवाद अनुरोध एकत्र करें

  • ✅ बैच के भीतर डीडुप्लिकेट करें

  • ✅ प्राथमिकता प्रबंधन

  • ✅ सत्यापन और फ़िल्टरिंग

बैच प्रसंस्करण:

  • ✅ भाषा के अनुसार समूहित करें

  • ✅ DeepSeek API को भेजें

  • ✅ क्रमांकित प्रतिक्रियाएँ पार्स करें

  • ✅ वाक्यांश तालिकाओं में सहेजें

कैशिंग:

  • ✅ अनुवाद से पहले कैश जांचें

  • ✅ उच्च कैश हिट दर

  • ✅ कम एपीआई लागत

शेड्यूलिंग:

  • ✅ क्रॉन के माध्यम से हर 6 घंटे

  • ✅ लॉक फ़ाइल एक साथ चलने से रोकती है

  • ✅ साप्ताहिक लेख अनुवाद

संरक्षण:

  • ✅ ब्रांड नाम

  • ✅ HTML टैग

  • ✅ URL और SKU

यह दृष्टिकोण बैचिंग और कैशिंग के माध्यम से एपीआई लागत कम करता है और अनुवाद गुणवत्ता में सुधार करता है।


← प्रलेखन सूचकांक पर वापस जाएँ