फ़ीचर स्पॉटलाइट: टॉगल करने योग्य लाइव ट्रांसलेशन मोड लागू करना

हमारा प्लगइनेबल वॉयस असिस्टेंट फ्रेमवर्क अधिकतम लचीलेपन के लिए डिज़ाइन किया गया है। यह मार्गदर्शिका एक शक्तिशाली सुविधा प्रदर्शित करती है: एक लाइव अनुवाद मोड जिसे एक साधारण वॉयस कमांड के साथ चालू और बंद किया जा सकता है। कल्पना करें कि आप अपने सहायक से जर्मन में बात कर रहे हैं और पुर्तगाली में आउटपुट सुन रहे हैं, फिर तुरंत सामान्य व्यवहार पर वापस आ जाएं।

यह कोर इंजन को बदलकर नहीं, बल्कि नियम कॉन्फ़िगरेशन फ़ाइल में चतुराई से हेरफेर करके हासिल किया जाता है।

इसका उपयोग कैसे करना है

इसे सेट करने में आपकी FUZZY_MAP_pre.py फ़ाइल में दो नियम जोड़ना और संबंधित स्क्रिप्ट बनाना शामिल है।

1. टॉगल नियम: यह नियम अनुवाद मोड को चालू या बंद करने के आदेश को सुनता है।

CODE_ब्लॉक_0 जब आप कहते हैं “Übersetzung einschalten” (अनुवाद चालू करें), toggle_translation_mode.py स्क्रिप्ट निष्पादित होती है।

2. अनुवाद नियम: यह एक “कैच-ऑल” नियम है, जो सक्रिय होने पर, किसी भी पाठ से मेल खाता है और इसे अनुवाद स्क्रिप्ट में भेजता है।

CODE_ब्लॉक_1 यहां कुंजी # TRANSLATION_RULE टिप्पणी है। यह एक “एंकर” के रूप में कार्य करता है जिसका उपयोग टॉगल स्क्रिप्ट इसके नीचे के नियम को खोजने और संशोधित करने के लिए करती है।

यह कैसे काम करता है: पर्दे के पीछे का जादू

आंतरिक स्थिति का उपयोग करने के बजाय, यह विधि सीधे फ़ाइल सिस्टम पर नियम मानचित्र को संपादित करती है। toggle_translation_mode.py स्क्रिप्ट एक कॉन्फ़िगरेशन प्रबंधक के रूप में कार्य करती है।

  1. नियम ढूंढें: ट्रिगर होने पर, स्क्रिप्ट FUZZY_MAP_pre.py की सामग्री को पढ़ती है। यह अद्वितीय एंकर टिप्पणी # TRANSLATION_RULE की खोज करता है।

  2. राज्य को टॉगल करें:

  • अक्षम करने के लिए: यदि एंकर के नीचे नियम रेखा सक्रिय है, तो स्क्रिप्ट पंक्ति की शुरुआत में एक # जोड़ती है, प्रभावी रूप से उस पर टिप्पणी करती है और उसे अक्षम कर देती है।

  • सक्षम करने के लिए: यदि नियम पंक्ति पर पहले से ही टिप्पणी की गई है, तो स्क्रिप्ट नियम को पुनः सक्रिय करते हुए, प्रमुख # को सावधानीपूर्वक हटा देती है।

  1. सहेजें और पुनः लोड करें: स्क्रिप्ट संशोधित सामग्री को वापस FUZZY_MAP_pre.py में सहेजती है। इसके बाद यह एक विशेष ट्रिगर फ़ाइल बनाता है (उदाहरण के लिए, RELOAD_RULES.trigger)। मुख्य सेवा इस ट्रिगर फ़ाइल पर लगातार नज़र रखती है। जब यह प्रकट होता है, तो सेवा को पता चलता है कि इसका कॉन्फ़िगरेशन बदल गया है और परिवर्तन को तुरंत लागू करते हुए, डिस्क से संपूर्ण नियम मानचित्र को पुनः लोड करता है।

डिज़ाइन दर्शन: लाभ और विचार

कॉन्फ़िगरेशन फ़ाइल को सीधे संशोधित करने का यह तरीका अंतिम-उपयोगकर्ता के लिए इसकी स्पष्टता और सरलता के लिए चुना गया था।

लाभ:

  • उच्च पारदर्शिता: सिस्टम की वर्तमान स्थिति हमेशा दिखाई देती है। FUZZY_MAP_pre.py फ़ाइल पर एक त्वरित नज़र डालने से तुरंत पता चलता है कि अनुवाद नियम सक्रिय है या टिप्पणी की गई है।

  • कोई कोर इंजन परिवर्तन नहीं: इस शक्तिशाली सुविधा को कोर नियम-प्रसंस्करण इंजन की एक भी लाइन में बदलाव किए बिना लागू किया गया था। यह प्लगइन सिस्टम के लचीलेपन को प्रदर्शित करता है।

  • डेवलपर्स के लिए सहज ज्ञान युक्त: कॉन्फ़िगरेशन के एक टुकड़े पर टिप्पणी करके उसे सक्षम या अक्षम करने की अवधारणा उन लोगों के लिए एक परिचित, सरल और विश्वसनीय पैटर्न है, जिन्होंने कोड या कॉन्फ़िगरेशन फ़ाइलों के साथ काम किया है।

विचार:

  • फ़ाइल सिस्टम अनुमतियाँ: इस विधि के काम करने के लिए, सहायक की प्रक्रिया के पास अपनी कॉन्फ़िगरेशन फ़ाइलों के लिए लिखने की अनुमति होनी चाहिए। कुछ उच्च-सुरक्षा वातावरणों में, इस पर विचार किया जा सकता है।