प्रॉम्प्ट्स, लॉग्स और ट्रेनिंग डेटा में पर्सनल डेटा
पर्सनल डेटा प्रॉम्प्ट्स, लॉग्स और डेटासेट्स के ज़रिए AI सिस्टम में लीक हो जाता है। इसे कम करना, छिपाना (redact करना), इसे रखने की समय सीमा तय करना और लोगों के अधिकारों का सम्मान करना सीखें।
60 सेकंड में
प्रॉम्प्ट्स, लॉग्स और ट्रेनिंग डेटा में पर्सनल डेटा
पर्सनल डेटा प्रॉम्प्ट्स, लॉग्स और डेटासेट्स के ज़रिए AI सिस्टम में लीक हो जाता है। इसे कम करना, छिपाना (redact करना), इसे रखने की समय सीमा तय करना और लोगों के अधिकारों का सम्मान…
पर्सनल डेटा कहाँ-कहाँ पहुँच जाता है
- 1
प्रॉम्प्ट
यूज़र का मैसेज, साथ ही वे डॉक्यूमेंट्स और रिकॉर्ड्स जो आपका ऐप जोड़ता है। - 2
मॉडल प्रोवाइडर
होस्ट किए गए मॉडल को भेजा जाता है, जो अपनी शर्तों के तहत इसे कुछ समय के लिए रख सकता है। - 3
लॉग्स और ट्रेसेस
डीबग लॉग्स, ऑब्जर्वेबिलिटी टूल्स और एरर रिपोर्ट्स में अक्सर पूरे प्रॉम्प्ट्स और जवाब सेव हो जाते हैं। - 4
इवैल्यूएशन सेट्स
क्वालिटी चेक करने के लिए टेस्ट सेट्स में कॉपी की गई असली बातचीत। - 5
ट्रेनिंग डेटा
भविष्य के मॉडल्स को फ़ाइन-ट्यून करने के लिए इस्तेमाल की गई बातचीत।
चार सिद्धांत
| सिद्धांत | अमल में कैसे लाएं |
|---|---|
| कम से कम डेटा लें (Minimise) | मॉडल को सिर्फ़ वही फ़ील्ड्स भेजें जिनकी ज़रूरत है। डिफ़ॉल्ट रूप से पूरे कस्टमर रिकॉर्ड्स न जोड़ें। |
| डेटा छिपाएं (Redact) | लॉगिंग, इवैल्यूएशन और ट्रेनिंग से पहले पर्सनल डेटा की पहचान करें और उसे मास्क (छिपा) दें। |
| रखने की सीमा तय करें (Limit retention) | लॉग्स और प्रॉम्प्ट्स को सिर्फ़ तब तक रखें जब तक ज़रूरत हो, फिर उन्हें अपने-आप डिलीट कर दें। |
| मकसद (Purpose) | डेटा का इस्तेमाल सिर्फ़ उसी काम के लिए करें जिसके बारे में लोगों को बताया गया था और जिसकी उन्होंने सहमति दी थी। |
रेडैक्शन (Redaction) का एक स्टेप
[PHONE] जैसे टैग्स लगा दें ताकि टेक्स्ट काम का बना रहे।import re
RULES = [
("[EMAIL]", re.compile(r"[\w.+-]+@[\w-]+\.[\w.]+")),
("[PHONE]", re.compile(r"(?:\+91[\s-]?)?\b[6-9]\d{9}\b")),
("[PAN]", re.compile(r"\b[A-Z]{5}\d{4}[A-Z]\b")),
("[ID12]", re.compile(r"\b\d{4}\s?\d{4}\s?\d{4}\b")),
]
def redact(text: str) -> str:
for tag, rx in RULES:
text = rx.sub(tag, text)
return text
print(redact("Call me on 9876543210 or mail asha@example.com"))सहमति, मकसद और भारत का DPDP एक्ट
डेटा डिलीट करने की रिक्वेस्ट को संभालना
- उन सभी जगहों के बारे में जानें जहाँ किसी व्यक्ति का डेटा हो सकता है: डेटाबेस, लॉग्स, वेक्टर स्टोर्स, इवैल्यूएशन सेट्स, ट्रेनिंग सेट्स, बैकअप्स और वेंडर्स।
- डेटाबेस और लॉग्स से डेटा डिलीट करना सीधा और आसान है। किसी ट्रेन्ड मॉडल से किसी व्यक्ति के असर को हटाना मुश्किल है; पर्सनल डेटा को ट्रेनिंग सेट्स से बाहर रखने की यह एक और बड़ी वजह है।
- आपने क्या, कहाँ और कब डिलीट किया, इसका रिकॉर्ड रखें।
वेंडर की डेटा शर्तें
- क्या प्रोवाइडर आपके प्रॉम्प्ट्स का इस्तेमाल अपने मॉडल्स को ट्रेन करने के लिए करता है? क्या आप इससे बाहर निकल (opt out कर) सकते हैं?
- वह प्रॉम्प्ट्स और आउटपुट्स को कितने समय तक रखता है, और किन कामों के लिए, जैसे कि गलत इस्तेमाल की निगरानी (abuse monitoring)?
- डेटा कहाँ प्रोसेस और स्टोर किया जाता है?
- कौन से सब-प्रोसेसर्स इसे देखते हैं, और कॉन्ट्रैक्ट खत्म होने पर क्या होता है?
और देखें और पढ़ें
लैब
एक टेस्ट किया गया PII रेडैक्शन स्टेप जिसमें छूटे हुए डेटा की दर (miss rate) नापी गई हो, और एक डेटा रखने की समय सीमा वाली टेबल (retention table)।
समस्या
पाठ में दिए गए रेडैक्शन कोड का इस्तेमाल करें।
- अपने यूज़र्स के लिखने के अंदाज़ (अंग्रेज़ी, हिंग्लिश, लैटिन लिपि में कोई स्थानीय भाषा) में ग्राहकों के 20 मनगढ़ंत मैसेजेस लिखें। इनमें फर्जी फ़ोन नंबर, ईमेल, PAN जैसे नंबर और नाम शामिल करें। किसी भी असली पर्सनल डेटा का इस्तेमाल न करें।
- रेडैक्शन चलाएं और गिनें कि क्या पकड़ा गया, क्या छूट गया, और क्या गलती से मास्क हो गया।
- कम से कम एक नियम को बेहतर बनाएं और फिर से चलाएं।
- एक रिटेंशन टेबल बनाएं: प्रॉम्प्ट्स, लॉग्स, इवैल्यूएशन सेट्स और ट्रेनिंग डेटा के लिए बताएं कि क्या रखा जाता है, कितने समय तक, और उस तक किसकी पहुँच हो सकती है।
आपका काम तब पूरा होगा जब
कठिन सवाल
उत्तर देखने से पहले ख़ुद जवाब देने की कोशिश करें। अगर आप इनके जवाब दे सकते हैं, तो आप पाठ समझ गए हैं।
Q1आपका रेडैक्शन टेस्ट में सभी फ़ोन नंबर पकड़ लेता है लेकिन नाम छूट जाते हैं। आपका प्लान क्या है?दिखाएं
नामों का कोई तय पैटर्न नहीं होता, इसलिए रेगुलर एक्सप्रेशन्स उन्हें ठीक से नहीं पकड़ पाते। भारतीय नामों और भाषाओं के अनुकूल एक नेम्ड-एंटिटी डिटेक्टर जोड़ें, और असली जैसे सैंपल्स पर इसका टेस्ट करें। यह स्वीकार करें कि इससे कुछ छूट जाएगा, इसलिए रॉ लॉग्स तक पहुँच को भी सीमित करें, रिटेंशन का समय घटाएं, और सीधी बातचीत पर मॉडल ट्रेन करने से बचें।
Q2"हमारे पास सहमति है" कहना ही प्राइवेसी की चर्चा का अंत क्यों नहीं है?दिखाएं
सहमति किसी खास मकसद के लिए होती है, और लोग इसे वापस ले सकते हैं। आपको तब भी डेटा को कम से कम रखना होगा, उसे सुरक्षित रखना होगा, मकसद पूरा होने पर उसे डिलीट करना होगा, और लोगों के अधिकारों की रिक्वेस्ट्स का सम्मान करना होगा। किसी नए मकसद के लिए डेटा का इस्तेमाल करने, जैसे कि नया मॉडल ट्रेन करना, के लिए नए नोटिस या सहमति की ज़रूरत पड़ सकती है। सहमति होने के बावजूद, सुरक्षा में चूक होना डेटा ब्रीच ही माना जाता है।
अक्सर पूछे जाने वाले सवाल
क्या हमें डीबगिंग के लिए पूरे प्रॉम्प्ट्स लॉग करने चाहिए?
डिफ़ॉल्ट रूप से हमेशा रेडैक्ट किए गए प्रॉम्प्ट्स ही लॉग करें। अगर किसी छोटी जांच के लिए पूरे प्रॉम्प्ट्स की वाकई ज़रूरत है, तो उन्हें सीमित समय के लिए, सीमित पहुँच और ऑटोमैटिक डिलीशन के साथ कलेक्ट करें। गलती से भी पूरे प्रॉम्प्ट्स को आम लॉग टूल्स में न जाने दें।
अगर हम नाम हटा दें, तो क्या हम ग्राहकों की चैट्स पर मॉडल को ट्रेन कर सकते हैं?
सिर्फ़ तभी जब आपका नोटिस और सहमति उस मकसद को कवर करते हों, और वह भी सावधानीपूर्वक रेडैक्शन के बाद। याद रखें कि नाम हटाना ज़्यादा से ज्यादा स्यूडोनिमाइज़ेशन (छद्म नामकरण) है। इस जोखिम से बचने के लिए कई टीमें केवल सिंथेटिक या खास तौर पर कलेक्ट किए गए डेटा पर ही ट्रेन करना चुनती हैं।
अगर कर्मचारी कस्टमर डेटा को पब्लिक चैटबॉट्स में पेस्ट कर रहे हों तो क्या करें?
यह डेटा लीक होने का खतरा है जिसे पॉलिसी, मंज़ूर किए गए टूल्स, ट्रेनिंग और जहाँ मुमकिन हो, टेक्निकल कंट्रोल्स के ज़रिए संभाला जाना चाहिए। लोगों को एक सुरक्षित और मंज़ूर किया गया विकल्प दें ताकि वे पर्सनल अकाउंट्स का इस्तेमाल करने के लिए मजबूर न हों।
क्या यह कानूनी सलाह है?
नहीं। यह पाठ सामान्य सिद्धांत बताता है। कानून और नियम बदलते रहते हैं और आपकी परिस्थितियों पर निर्भर करते हैं। अपनी असली कानूनी ज़िम्मेदारियों के लिए अपनी लीगल और प्राइवेसी टीमों के साथ मिलकर काम करें।
पाठ का टेस्ट
5 सवाल। पास होने और इस पाठ को पूरा करने के लिए 3 सही होने चाहिए (60%)।