जनरेटिव आर्टिफ़िशियल इंटेलिजेंस (जनरेटिव एआई) की मदद से, अलग-अलग तरह का कॉन्टेंट जनरेट किया जा सकता है. यह कॉन्टेंट, पहले के मुकाबले ज़्यादा बेहतर और ज़्यादा बड़े पैमाने पर जनरेट किया जा सकता है. ज़्यादातर मामलों में, इसका इस्तेमाल सही कामों के लिए किया जाता है. हालांकि, इस बात की आशंका है कि इसका इस्तेमाल गलत जानकारी देने और क्रेडिट का गलत इस्तेमाल करने के लिए भी किया जा सकता है. वीडियो पर वॉटरमार्क लगाने की तकनीक से, इन संभावित असर को कम किया जा सकता है. एआई से जनरेट किए गए कॉन्टेंट पर, ऐसे वॉटरमार्क लगाए जा सकते हैं जो इंसानों को न दिखें. साथ ही, कॉन्टेंट की पहचान करने वाले मॉडल, किसी भी कॉन्टेंट को स्कोर कर सकते हैं, ताकि यह पता चल सके कि उस पर वॉटरमार्क लगा है या नहीं.
SynthID, Google DeepMind की एक टेक्नोलॉजी है. यह जनरेटिव एआई से तैयार किए गए कॉन्टेंट को वॉटरमार्क करती है और उसकी पहचान करती है. इसके लिए, यह सीधे तौर पर जनरेटिव एआई से तैयार की गई इमेज, ऑडियो, टेक्स्ट या वीडियो में डिजिटल वॉटरमार्क जोड़ती है. डेवलपर के लिए, टेक्स्ट जनरेट करने के लिए वॉटरमार्किंग की सुविधा उपलब्ध कराने के मकसद से, SynthID Text को ओपन सोर्स किया गया है. इस तरीके के बारे में पूरी तकनीकी जानकारी पाने के लिए, Nature में मौजूद पेपर पढ़ें.
Hugging Face Transformers v4.46.0+ में, प्रोडक्शन-ग्रेड में SynthID टेक्स्ट लागू करने की सुविधा उपलब्ध है. इसे SynthID Text Space के आधिकारिक वर्शन में आज़माया जा सकता है. GitHub पर, लागू करने का रेफ़रंस भी उपलब्ध है. यह ओपन सोर्स के रखरखाव करने वाले और योगदान देने वाले लोगों के लिए मददगार हो सकता है. वे इस तकनीक को दूसरे फ़्रेमवर्क में इस्तेमाल करना चाहते हैं.
वॉटरमार्क करने की सुविधा
व्यावहारिक तौर पर, SynthID Text एक लॉगिट प्रोसेसर है. इसे Top-K और Top-P के बाद, आपके मॉडल की जनरेशन पाइपलाइन पर लागू किया जाता है. यह मॉडल के लॉगिट को बेहतर बनाता है. इसके लिए, यह वॉटरमार्किंग की जानकारी को इस तरह से कोड में बदलता है कि टेक्स्ट की क्वालिटी पर काफ़ी असर न पड़े. एल्गोरिदम के बारे में पूरी तकनीकी जानकारी पाने और यह जानने के लिए कि अलग-अलग कॉन्फ़िगरेशन वैल्यू से परफ़ॉर्मेंस पर क्या असर पड़ता है, पेपर देखें.
वॉटरमार्क को कॉन्फ़िगर किया जाता है, ताकि g-फ़ंक्शन को पैरामीटर के तौर पर इस्तेमाल किया जा सके और जनरेट करने के दौरान इसे लागू करने का तरीका तय किया जा सके. आपके इस्तेमाल किए गए हर वॉटरमार्क कॉन्फ़िगरेशन को सुरक्षित और निजी तौर पर सेव किया जाना चाहिए. ऐसा न करने पर, दूसरे लोग आपके वॉटरमार्क को आसानी से कॉपी कर सकते हैं.
आपको हर वॉटरमार्किंग कॉन्फ़िगरेशन में दो पैरामीटर तय करने होंगे:
keys
पैरामीटर, यूनीक और रैंडम इंटेजर की सूची होती है. इसका इस्तेमाल, मॉडल की शब्दावली में g-फ़ंक्शन के स्कोर का हिसाब लगाने के लिए किया जाता है. इस सूची की लंबाई से तय होता है कि वॉटरमार्क की कितनी लेयर लागू की जाएंगी. ज़्यादा जानकारी के लिए, पेपर में दिया गया परिशिष्ट C.1 देखें.ngram_len
पैरामीटर का इस्तेमाल, इमेज में बदलाव होने पर भी वॉटरमार्क को आसानी से पहचानने और उसे सुरक्षित रखने के लिए किया जाता है. वैल्यू जितनी ज़्यादा होगी, वॉटरमार्क को पहचानना उतना ही आसान होगा. हालांकि, इसकी वजह से इमेज में बदलाव होने पर, वॉटरमार्क को हटाना भी आसान हो जाएगा. पांच, डिफ़ॉल्ट वैल्यू के तौर पर एक अच्छी वैल्यू है.
परफ़ॉर्मेंस की ज़रूरतों के हिसाब से, वॉटरमार्क को और कॉन्फ़िगर किया जा सकता है:
- सैंपलिंग टेबल को दो प्रॉपर्टी,
sampling_table_size
औरsampling_table_seed
से कॉन्फ़िगर किया जाता है. सैंपलिंग के दौरान, g-फ़ंक्शन के बिना किसी पक्षपात के और स्थिर तरीके से काम करने के लिए, कम से कम216 केsampling_table_size
का इस्तेमाल करें. हालांकि, ध्यान रखें कि सैंपलिंग टेबल का साइज़, अनुमान लगाने के समय ज़रूरी मेमोरी पर असर डालता है.sampling_table_seed
के तौर पर, अपनी पसंद के किसी भी पूर्णांक का इस्तेमाल किया जा सकता है. context_history_size
से पहले के टोकन में, दोहराए गए n-ग्राम को वॉटरमार्क नहीं किया जाता, ताकि उन्हें आसानी से पहचाना जा सके.
अपने मॉडल का इस्तेमाल करके, SynthID टेक्स्ट वॉटरमार्क वाला टेक्स्ट जनरेट करने के लिए, किसी और ट्रेनिंग की ज़रूरत नहीं होती. इसके लिए, सिर्फ़ वॉटरमार्किंग कॉन्फ़िगरेशन की ज़रूरत होती है. यह कॉन्फ़िगरेशन, SynthID टेक्स्ट लॉजिस्ट प्रोसेसर को चालू करने के लिए, मॉडल के .generate()
तरीके पर पास किया जाता है. Transformers लाइब्रेरी में वॉटरमार्क लागू करने का तरीका बताने वाले कोड के उदाहरणों के लिए, ब्लॉग पोस्ट और Space देखें.
वॉटरमार्क का पता लगाना और उसकी पुष्टि करना
वॉटरमार्क का पता लगाने की सुविधा, संभावना के आधार पर काम करती है. Hugging Face Transformers और GitHub पर, बेयसियन डिटेक्टर उपलब्ध है. यह डिटेक्टर, पहचान करने की तीन संभावित स्थितियां दिखा सकता है—वॉटरमार्क किया गया, वॉटरमार्क नहीं किया गया या अनिश्चित. साथ ही, गलत पहचान की दर और गलत नतीजे मिलने की दर को तय करने के लिए, दो थ्रेशोल्ड वैल्यू सेट करके, इसकी परफ़ॉर्मेंस को पसंद के मुताबिक बनाया जा सकता है. ज़्यादा जानकारी के लिए, पेपर में अध्यांश C.8 देखें.
एक ही टोकनेटर का इस्तेमाल करने वाले मॉडल, वॉटरमार्किंग कॉन्फ़िगरेशन और डिटेक्टर भी शेयर कर सकते हैं. इससे, एक ही वॉटरमार्क शेयर किया जा सकता है. हालांकि, ऐसा तब तक ही किया जा सकता है, जब तक डिटेक्टर के ट्रेनिंग सेट में वॉटरमार्क शेयर करने वाले सभी मॉडल के उदाहरण शामिल हों.
ट्रेन किया गया डिटेक्टर तैयार होने के बाद, आपके पास यह तय करने का विकल्प होता है कि इसे अपने उपयोगकर्ताओं और आम तौर पर लोगों के लिए उपलब्ध कराया जाए या नहीं. साथ ही, अगर उपलब्ध कराया जाता है, तो कैसे.
- पूरी तरह निजी विकल्प चुनने पर, डिटेक्टर को किसी भी तरह से रिलीज़ या ज़ाहिर नहीं किया जाता.
- कुछ हद तक निजी विकल्प से, डिटेक्टर को रिलीज़ नहीं किया जाता. हालांकि, इसे एपीआई के ज़रिए दिखाया जाता है.
- सार्वजनिक विकल्प चुनने पर, डिटेक्टर को दूसरे लोग डाउनलोड और इस्तेमाल कर सकते हैं.
आपको और आपके संगठन को यह तय करना होगा कि आपके लिए, पहचान की पुष्टि करने का कौनसा तरीका सबसे सही है. यह इस बात पर निर्भर करता है कि आपके पास, इससे जुड़े इन्फ़्रास्ट्रक्चर और प्रोसेस को पूरा करने की क्षमता है या नहीं.
सीमाएं
SynthID टेक्स्ट वॉटरमार्क, कुछ बदलावों के लिए बेहतर होते हैं. जैसे, टेक्स्ट के कुछ हिस्सों को काटना, कुछ शब्दों में बदलाव करना या थोड़ा बदलाव करके फिर से लिखना. हालांकि, इस तरीके की कुछ सीमाएं हैं.
- सटीक जवाबों पर वॉटरमार्क का इस्तेमाल कम असरदार होता है. इसकी वजह यह है कि सटीक जवाब देने के लिए, वॉटरमार्क का इस्तेमाल नहीं किया जा सकता.
- एआई से जनरेट किए गए टेक्स्ट को पूरी तरह से फिर से लिखने या किसी दूसरी भाषा में अनुवाद करने पर, डिटेक्टर के भरोसे के स्कोर में काफ़ी कमी आ सकती है.
SynthID Text को, नुकसान पहुंचाने के इरादे से काम करने वाले लोगों को सीधे तौर पर रोकने के लिए नहीं बनाया गया है. हालांकि, इससे एआई से जनरेट किए गए कॉन्टेंट का इस्तेमाल नुकसान पहुंचाने के मकसद से करना मुश्किल हो सकता है. साथ ही, अलग-अलग तरह के कॉन्टेंट और प्लैटफ़ॉर्म पर बेहतर कवरेज देने के लिए, इसे अन्य तरीकों के साथ जोड़ा जा सकता है.