અનુવાદ શ્રેણી: બેચ પ્રોસેસિંગ સિસ્ટમ
આ લેખ સમજાવે છે કે અમે AI API ના ઉપયોગને અનુકૂળ બનાવવા માટે અનુવાદોને કેવી રીતે કતારબદ્ધ અને બેચ-પ્રોસેસ કરીએ છીએ.
સમસ્યા: માંગ પરનો અનુવાદ ખર્ચાળ છે
માંગ પર સામગ્રીનો અનુવાદ કરવામાં સમસ્યાઓ છે:
-
ધીમું: દરેક અનુવાદ 1-2 સેકન્ડ લે છે
-
ખર્ચાળ: દરેક વિનંતી દીઠ API ખર્ચ
-
બિનજરૂરી: સમાન ટેક્સ્ટ ઘણી વખત અનુવાદિત થાય છે
-
અવરોધક: વપરાશકર્તા અનુવાદની રાહ જુએ છે
અમને વધુ સારી રીતની જરૂર છે.
ઉકેલ: કતાર અને બેચ
કતાર: અનુવાદ વિનંતીઓ એકત્રિત કરો
બેચ: ઘણા અનુવાદો એકસાથે પ્રોસેસ કરો
કેશ: પુનઃઉપયોગ માટે પરિણામો સંગ્રહ કરો
શેડ્યૂલ: કતારને સમયાંતરે પ્રોસેસ કરો (રીઅલ-ટાઇમ નહીં)
કતાર સંરચના
કતાર ફાઇલ
સ્થાન: ડિસ્ક પર JSON ફાઇલ
ફોર્મેટ: અનુવાદ વિનંતીઓની એરે
ફીલ્ડ્સ:
-
text: અનુવાદ કરવાનું અંગ્રેજી ટેક્સ્ટ -
target_lang: ભાષા કોડ (hi, de, fr, વગેરે) -
context: ટેક્સ્ટ ક્યાં દેખાય છે (product, query, article) -
priority: ઉચ્ચ/સામાન્ય/નીચું
કતારમાં ઉમેરવું
જ્યારે અનુવાદ ગુમ થાય ત્યારે:
queue_translation(text, target_lang, context="product")
ડુપ્લિકેશન દૂર કરવું: પહેલેથી કતારમાં છે કે નહીં તે ચકાસો
માન્યતા: અમાન્ય મૂલ્યોને નકારો
બેચ પ્રોસેસિંગ
સ્ક્રિપ્ટ
સ્થાન: scripts/web/process_translation_queue.py
શેડ્યૂલ: cron દ્વારા દર 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
અમલીકરણ: સિસ્ટમ પ્રોમ્પ્ટમાં Regex પેટર્ન
ભાષા શોધ
અનુવાદ કરતા પહેલા, પહેલેથી અનુવાદિત છે કે નહીં તે ચકાસો:
પદ્ધતિ: અક્ષર સેટ વિશ્લેષણ
હિન્દી: દેવનાગરી લિપિ
ચાઇનીઝ: CJK અક્ષરો
અરબી: અરબી લિપિ
લાભ: બિનજરૂરી અનુવાદો છોડી દો
પ્રાયોરિટી હેન્ડલિંગ
ઉચ્ચ પ્રાયોરિટી: ઉત્પાદન નામ, સુવિધાઓ (પ્રથમ પ્રોસેસ કરો)
સામાન્ય પ્રાયોરિટી: વર્ણન, લેખો (બીજા પ્રોસેસ કરો)
નીચી પ્રાયોરિટી: જૂની સામગ્રી, ભાગ્યે જ જોવાયેલી (છેલ્લે પ્રોસેસ કરો)
લાભ: મહત્વપૂર્ણ સામગ્રી પ્રથમ અનુવાદિત
શેડ્યૂલિંગ
Cron જોબ
આવર્તન: દર 6 કલાકે
કમાન્ડ: python3 scripts/web/process_translation_queue.py
લોક ફાઇલ: /tmp/process_translation_queue.lock
લાભ: સ્વચાલિત પ્રોસેસિંગ, કોઈ મેન્યુઅલ હસ્તક્ષેપ નહીં
સાપ્તાહિક કાર્યો
લેખો: નવા લેખો સાપ્તાહિક અનુવાદ કરો
Babel સ્ટ્રિંગ: ટેમ્પલેટ અનુવાદો સાપ્તાહિક અપડેટ કરો
સ્ક્રિપ્ટ: scripts/web/translate_articles_weekly.sh
મોનિટરિંગ
કતાર કદ
બાકી વિનંતીઓ ટ્રૅક કરો:
-
કુલ વિનંતીઓ
-
ભાષા દીઠ વિનંતીઓ
-
સૌથી જૂની વિનંતીની ઉંમર
ચેતવણી: જો કતાર ખૂબ મોટી થાય તો
અનુવાદ આંકડા
પ્રોસેસિંગ ટ્રૅક કરો:
-
બેચ દીઠ અનુવાદો
-
API સફળતા દર
-
કેશ હિટ દર
-
પ્રોસેસિંગ સમય
ખર્ચ ટ્રૅકિંગ
API ઉપયોગ મોનિટર કરો:
-
દિવસ દીઠ વિનંતીઓ
-
વિનંતી દીઠ ટોકન
-
ભાષા દીઠ ખર્ચ
સંદર્ભો
સંબંધિત લેખો
-
Translation System - ત્રણ-ટેકનોલોજી હાઇબ્રિડ
-
Content AI Generation - DeepSeek એકીકરણ
-
Language Detection - વપરાશકર્તા ભાષા પ્રાધાન્ય
સારાંશ
અનુવાદ કતાર કાર્યક્ષમ બેચ પ્રોસેસિંગ સક્ષમ કરે છે:
કતાર:
-
અનુવાદ વિનંતીઓ એકત્રિત કરો
-
બેચની અંદર ડુપ્લિકેશન દૂર કરો
-
પ્રાયોરિટી હેન્ડલિંગ
-
માન્યતા અને ફિલ્ટરિંગ
બેચ પ્રોસેસિંગ:
-
ભાષા દ્વારા જૂથ કરો
-
DeepSeek API પર મોકલો
-
ક્રમાંકિત પ્રતિસાદો પાર્સ કરો
-
ફ્રેઝ ટેબલમાં સાચવો
કેશિંગ:
-
અનુવાદ કરતા પહેલા કેશ ચકાસો
-
ઊંચો કેશ હિટ દર
-
ઘટાડેલ API ખર્ચ
શેડ્યૂલિંગ:
-
cron દ્વારા દર 6 કલાકે
-
લોક ફાઇલ સમવર્તી રનને અટકાવે છે
-
સાપ્તાહિક લેખ અનુવાદો
સંરક્ષણ:
-
બ્રાન્ડ નામ
-
HTML ટૅગ્સ
-
URLs અને SKUs
આ અભિગમ બેચિંગ અને કેશિંગ દ્વારા API ખર્ચ ઘટાડે છે અને અનુવાદ ગુણવત્તા સુધારે છે.