અનુવાદ શ્રેણી: બેચ પ્રોસેસિંગ સિસ્ટમ

આ લેખ સમજાવે છે કે અમે 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 ઉપયોગ મોનિટર કરો:

  • દિવસ દીઠ વિનંતીઓ

  • વિનંતી દીઠ ટોકન

  • ભાષા દીઠ ખર્ચ

સંદર્ભો

સંબંધિત લેખો

સારાંશ

અનુવાદ કતાર કાર્યક્ષમ બેચ પ્રોસેસિંગ સક્ષમ કરે છે:

કતાર:

  • અનુવાદ વિનંતીઓ એકત્રિત કરો

  • બેચની અંદર ડુપ્લિકેશન દૂર કરો

  • પ્રાયોરિટી હેન્ડલિંગ

  • માન્યતા અને ફિલ્ટરિંગ

બેચ પ્રોસેસિંગ:

  • ભાષા દ્વારા જૂથ કરો

  • DeepSeek API પર મોકલો

  • ક્રમાંકિત પ્રતિસાદો પાર્સ કરો

  • ફ્રેઝ ટેબલમાં સાચવો

કેશિંગ:

  • અનુવાદ કરતા પહેલા કેશ ચકાસો

  • ઊંચો કેશ હિટ દર

  • ઘટાડેલ API ખર્ચ

શેડ્યૂલિંગ:

  • cron દ્વારા દર 6 કલાકે

  • લોક ફાઇલ સમવર્તી રનને અટકાવે છે

  • સાપ્તાહિક લેખ અનુવાદો

સંરક્ષણ:

  • બ્રાન્ડ નામ

  • HTML ટૅગ્સ

  • URLs અને SKUs

આ અભિગમ બેચિંગ અને કેશિંગ દ્વારા API ખર્ચ ઘટાડે છે અને અનુવાદ ગુણવત્તા સુધારે છે.


← ડોક્યુમેન્ટેશન ઇન્ડેક્સ પર પાછા જાઓ