खास जानकारी
इस गाइड में, PaLM API की सुरक्षा से जुड़ी उन सेटिंग के बारे में बताया गया है जिनमें टेक्स्ट सेवा के लिए, ज़रूरत के हिसाब से बदलाव किया जा सकता है. प्रोटोटाइपिंग के दौरान, छह डाइमेंशन पर सुरक्षा सेटिंग में बदलाव करके यह तुरंत पता लगाया जा सकता है कि आपके ऐप्लिकेशन को ज़्यादा या कम पाबंदी वाले कॉन्फ़िगरेशन की ज़रूरत है या नहीं. सुरक्षा सेटिंग डिफ़ॉल्ट रूप से, सभी छह डाइमेंशन में ऐसे कॉन्टेंट को ब्लॉक कर देती हैं जिनके बारे में बीच में और/या असुरक्षित कॉन्टेंट होने की संभावना ज़्यादा होती है. सुरक्षा से जुड़ी यह बुनियादी सुविधा, ज़्यादातर मामलों में इस्तेमाल की जा सकती है. इसलिए, आपको सुरक्षा सेटिंग में सिर्फ़ तब बदलाव करना चाहिए, जब आपके ऐप्लिकेशन के लिए इसकी ज़रूरत हमेशा पड़ती हो.
सुरक्षा फ़िल्टर
PaLM API में, अडजस्ट किए जा सकने वाले सुरक्षा फ़िल्टर के साथ-साथ, शरीर को नुकसान पहुंचाने वाले कॉन्टेंट से भी सुरक्षा मिलती है. जैसे, बच्चों की सुरक्षा को खतरे में डालने वाला कॉन्टेंट. इस तरह के नुकसान हमेशा ब्लॉक किए जाते हैं और इनमें बदलाव नहीं किया जा सकता.
सुरक्षा के लिए अडजस्ट किए जा सकने वाले फ़िल्टर, इन कैटगरी पर लागू होते हैं:
- अपमानजनक
- विषाक्त
- सेक्शुअल कॉन्टेंट है
- हिंसक है
- चिकित्सा
- खतरनाक चीज़ों के विज्ञापन
इन सेटिंग की मदद से आप यानी डेवलपर यह तय कर सकते हैं कि इस्तेमाल के लिए कौनसा विकल्प सही है. उदाहरण के लिए, अगर वीडियो गेम वाला डायलॉग बनाया जा रहा है, तो गेम के टाइप के हिसाब से, ऐसे कॉन्टेंट को अनुमति दी जा सकती है जिसे हिंसक या खतरनाक माना जाए. यहां इस्तेमाल के कुछ ऐसे अन्य उदाहरण दिए गए हैं जिनके लिए इन सुरक्षा सेटिंग में कुछ बदलाव करने की ज़रूरत हो सकती है:
इस्तेमाल का उदाहरण | कैटगरी |
---|---|
उत्पीड़न विरोधी ट्रेनिंग ऐप्लिकेशन | अपमानजनक, सेक्शुअल, बुरे बर्ताव वाला |
मेडिकल परीक्षा स्टडी पाल | चिकित्सा |
पटकथा लेखक | हिंसक, सेक्शुअल, मेडिकल, खतरनाक |
बुरे बर्ताव की कैटगरी तय करने वाला एल्गोरिदम | बुरा बर्ताव, अपमानजनक |
संभावना बनाम गंभीरता
PaLM API, कॉन्टेंट को इस आधार पर ब्लॉक करता है कि वह संभावना असुरक्षित है और उसकी गंभीरता नहीं. इस पर विचार करना अहम है, क्योंकि कुछ कॉन्टेंट के असुरक्षित होने की संभावना कम होती है, भले ही नुकसान की गंभीरता अब भी ज़्यादा हो. उदाहरण के लिए, वाक्यों की तुलना करना:
- रोबॉट ने मुझे मुक्का मार दिया.
- रोबोट ने मुझे मार दिया.
पहले वाक्य के असुरक्षित होने की संभावना ज़्यादा हो सकती है, लेकिन हिंसा के मामले में दूसरा वाक्य ज़्यादा गंभीरता वाला हो सकता है.
इसलिए, हर डेवलपर के लिए यह ज़रूरी है कि वह इस बात की सावधानी से जांच करे और तय करे कि ऐप्लिकेशन के मुख्य इस्तेमाल में आपकी मदद करने के लिए, किस तरह के ब्लॉक करने की ज़रूरत है. इससे असली उपयोगकर्ताओं को होने वाले नुकसान को कम किया जा सकता है.
सुरक्षा सेटिंग
सुरक्षा सेटिंग, मैसेज सेवा को भेजे जाने वाले अनुरोध का हिस्सा होती हैं. इस एपीआई में, आपके हर अनुरोध के हिसाब से बदलाव किए जा सकते हैं. नीचे दी गई टेबल में उन कैटगरी की सूची दी गई है जिन्हें सेट किया जा सकता है. साथ ही, हर कैटगरी में होने वाले नुकसान के टाइप के बारे में भी बताया गया है.
कैटगरी | ब्यौरे |
---|---|
अपमानजनक | पहचान और/या सुरक्षित एट्रिब्यूट को टारगेट करने वाली नेगेटिव या नुकसान पहुंचाने वाली टिप्पणियां. |
विषाक्त | असभ्य, अपमानजनक या धर्म का अपमान करने वाला कॉन्टेंट. |
सेक्शुअल कॉन्टेंट है | ऐसा कॉन्टेंट जिसमें सेक्शुअल ऐक्ट या अश्लील भाषा का इस्तेमाल किया गया हो. |
हिंसक है | किसी व्यक्ति या ग्रुप के ख़िलाफ़ हिंसा दिखाने वाली स्थितियों या खून-खराबे के बारे में सामान्य जानकारी दी गई हो. |
खतरनाक चीज़ों के विज्ञापन | नुकसान पहुंचाने वाली गतिविधियों को बढ़ावा देता है, उनका प्रचार करता है या उन्हें लागू करने में मदद करता है. |
चिकित्सा | चिकित्सा से जुड़े विषयों से जुड़ा कॉन्टेंट |
इन परिभाषाओं को एपीआई के रेफ़रंस में भी देखा जा सकता है.
नीचे दी गई टेबल में ब्लॉक करने की उन सेटिंग के बारे में बताया गया है जिन्हें हर कैटगरी के लिए बदला जा सकता है. उदाहरण के लिए, अगर आपने अपमानजनक कैटगरी के लिए ब्लॉक करने की सेटिंग को कुछ लोगों को ब्लॉक करें पर सेट किया है, तो उस हर चीज़ को ब्लॉक कर दिया जाएगा जिस पर अपमानजनक कॉन्टेंट होने की संभावना काफ़ी ज़्यादा है. हालांकि, कम संभावना वाली किसी भी चीज़ को अनुमति दी जाती है.
अगर इस नीति को सेट नहीं किया जाता है, तो डिफ़ॉल्ट रूप से यह सेटिंग, कुछ लोगों को ब्लॉक करें या ज़्यादातर को ब्लॉक करें पर सेट होती है. यह नीति की कैटगरी के आधार पर तय होता है.
थ्रेशोल्ड (Google AI Studio) | थ्रेशोल्ड (एपीआई) | ब्यौरा |
---|---|---|
किसी को भी ब्लॉक न करें | BLOCK_NONE | असुरक्षित कॉन्टेंट होने की संभावना पर ध्यान दिए बिना, हमेशा दिखाएं |
कुछ को ब्लॉक करें | BLOCK_ONLY_HIGH | असुरक्षित कॉन्टेंट की संभावना ज़्यादा होने पर ब्लॉक करें |
कुछ को ब्लॉक करें (सेक्शुअल, हिंसक, खतरनाक, और मेडिकल के लिए डिफ़ॉल्ट रूप से) | BLOCK_MEDIUM_AND_ABOVE | असुरक्षित कॉन्टेंट की संभावना सामान्य या ज़्यादा होने पर ब्लॉक करें |
ज़्यादातर ब्लॉक करें (अपमानजनक और बुरे बर्ताव के लिए डिफ़ॉल्ट) | BLOCK_LOW_AND_ABOVE | असुरक्षित कॉन्टेंट की संभावना कम, थोड़ा-बहुत या ज़्यादा होने पर ब्लॉक करें |
HARM_BLOCK_THRESHOLD_UNSPECIFIED | थ्रेशोल्ड की जानकारी नहीं है, डिफ़ॉल्ट थ्रेशोल्ड का इस्तेमाल करके ब्लॉक करें |
ये सेटिंग, मैसेज सेवा से किए जाने वाले हर अनुरोध के लिए सेट की जा सकती हैं. ज़्यादा
जानकारी के लिए,
HarmBlockThreshold
एपीआई का रेफ़रंस देखें.
सुरक्षा के बारे में सुझाव, शिकायत या राय
अगर कॉन्टेंट ब्लॉक किया गया था, तो एपीआई से मिले जवाब में इसकी वजह शामिल होती है. इसकी वजह यह है कि इसे ContentFilter.reason
फ़ील्ड में ब्लॉक किया गया था. अगर
वजह सुरक्षा से जुड़ी थी, तो जवाब में एक
SafetyFeedback
फ़ील्ड भी शामिल होता है, जिसमें सुरक्षा से जुड़ी वे सेटिंग शामिल होती हैं जिनका इस्तेमाल इस अनुरोध के लिए किया गया था. साथ ही, इसमें सुरक्षा रेटिंग
भी शामिल है. सुरक्षा रेटिंग में, नुकसान की कैटगरी और उसकी
संभावना शामिल होती है. ब्लॉक किया गया कॉन्टेंट नहीं लौटाया गया.
मिलने वाली संभावना ब्लॉक कॉन्फ़िडेंस लेवल के हिसाब से है, जैसा कि इस टेबल में दिखाया गया है:
प्रॉबेबिलिटी | ब्यौरा |
---|---|
लापरवाही | कॉन्टेंट के असुरक्षित होने की संभावना न के बराबर है |
कम | कॉन्टेंट के असुरक्षित होने की संभावना कम है |
मीडियम | कॉन्टेंट के असुरक्षित होने की संभावना थोड़ी-बहुत है |
ज़्यादा | कॉन्टेंट के असुरक्षित होने की संभावना काफ़ी ज़्यादा है |
उदाहरण के लिए, अगर बुरे बर्ताव की संभावना ज़्यादा होने की वजह से कॉन्टेंट को ब्लॉक किया गया है, तो सुरक्षा से जुड़ी रेटिंग TOXICITY
के बराबर और नुकसान की संभावना HIGH
पर सेट होगी.
Google AI Studio में सुरक्षा की सेटिंग
इन सेटिंग को Google AI Studio में भी सेट किया जा सकता है. रन सेटिंग में जाकर, सुरक्षा सेटिंग में बदलाव करें पर क्लिक करें:
हर सेटिंग को अडजस्ट करने के लिए नॉब का इस्तेमाल करें:
अगर कॉन्टेंट ब्लॉक है, तो
कोई कॉन्टेंट नहीं मैसेज दिखता है. ज़्यादा जानकारी देखने के लिए, पॉइंटर को कोई कॉन्टेंट नहीं पर दबाकर रखें और सुरक्षा पर क्लिक करें.कोड के उदाहरण
इस सेक्शन में Python Client लाइब्रेरी का इस्तेमाल करके, कोड में सुरक्षा सेटिंग इस्तेमाल करने का तरीका बताया गया है.
अनुरोध का उदाहरण
नीचे एक Python कोड स्निपेट दिया गया है, जिसमें GenerateText
कॉल में सुरक्षा सेटिंग सेट करने का तरीका बताया गया है. इससे नुकसान की कैटगरी Derogatory
और
Violence
को BLOCK_LOW_AND_ABOVE
पर सेट कर दी जाएगी. यह ऐसे किसी भी कॉन्टेंट को ब्लॉक कर देगी जिसके हिंसक या अपमान करने की संभावना कम या ज़्यादा होगी.
completion = genai.generate_text(
model=model,
prompt=prompt,
safety_settings=[
{
"category": safety_types.HarmCategory.HARM_CATEGORY_DEROGATORY,
"threshold": safety_types.HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
},
{
"category": safety_types.HarmCategory.HARM_CATEGORY_VIOLENCE,
"threshold": safety_types.HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
},
]
)
जवाब का उदाहरण
यहां दिया गया कोड स्निपेट दिखाता है, जो जवाब से सुरक्षा फ़ीडबैक को पार्स करने के लिए दिखता है. ध्यान दें कि अगर ब्लॉक करने की वजह कोई सुरक्षा डाइमेंशन न हो, तो सुरक्षा से जुड़ा सुझाव उपलब्ध नहीं रहेगा.
# First check the content filter reason
for filter in completion.filters:
print(filter["reason"])
# If any of the reason is "safety", then the safety_feedback field will be
# populated
for feedback in completion.safety_feedback:
print(feedback["rating"])
print(feedback["setting"])s
अगले चरण
- पूरे एपीआई के बारे में ज़्यादा जानने के लिए, एपीआई का रेफ़रंस देखें.
- एलएलएम के साथ डेवलप करते समय, सुरक्षा से जुड़े पहलुओं पर सामान्य नज़र रखने के लिए, सुरक्षा से जुड़े दिशा-निर्देश देखें.
- संभावना बनाम गंभीरता का आकलन करने के बारे में ज़्यादा जानने के लिए, Jigsaw टीम से संपर्क करें
- Perspective API जैसे सुरक्षा समाधानों में योगदान देने वाले प्रॉडक्ट के बारे में ज़्यादा जानें.
- बुरे बर्ताव की कैटगरी तय करने वाला प्रोग्राम बनाने के लिए, इन सुरक्षा सेटिंग का इस्तेमाल किया जा सकता है. शुरू करने के लिए, कैटगरी तय करने का उदाहरण देखें.