मॉडल और डेटा सिक्योरिटीमध्यमपाठ 1766 मिनट का पाठ

प्रॉम्प्ट्स, लॉग्स और ट्रेनिंग डेटा में पर्सनल डेटा

पर्सनल डेटा प्रॉम्प्ट्स, लॉग्स और डेटासेट्स के ज़रिए AI सिस्टम में लीक हो जाता है। इसे कम करना, छिपाना (redact करना), इसे रखने की समय सीमा तय करना और लोगों के अधिकारों का सम्मान करना सीखें।

पाठ वीडियो में

60 सेकंड में

प्रॉम्प्ट्स, लॉग्स और ट्रेनिंग डेटा में पर्सनल डेटा

पर्सनल डेटा प्रॉम्प्ट्स, लॉग्स और डेटासेट्स के ज़रिए AI सिस्टम में लीक हो जाता है। इसे कम करना, छिपाना (redact करना), इसे रखने की समय सीमा तय करना और लोगों के अधिकारों का सम्मान…

1/4
आसान शब्दों में
जब आप बिल के लिए किसी दुकानदार को अपना फ़ोन नंबर बताते हैं, तो आप यह उम्मीद नहीं करते कि वह उसे दीवार पर लिख देगा। जो ग्राहक किसी AI फ़ीचर में कुछ टाइप करते हैं, वे भी अपने शेयर किए गए डेटा के साथ इसी तरह की सावधानी की उम्मीद करते हैं।
लोग AI फ़ीचर्स में हर तरह की चीज़ें पेस्ट कर देते हैं: नाम, फ़ोन नंबर, आधार या PAN नंबर, बैंक डिटेल्स, सेहत से जुड़ी जानकारी। इसके बाद वह डेटा प्रॉम्प्ट्स, प्रोवाइडर के APIs, लॉग्स, एनालिटिक्स, इवैल्यूएशन सेट्स और कभी-कभी ट्रेनिंग डेटा में चला जाता है। हर एक कॉपी ऐसी जगह है जहाँ से यह लीक हो सकता है। यह OWASP Top 10 for LLM Applications में LLM02 Sensitive Information Disclosure है।

पर्सनल डेटा कहाँ-कहाँ पहुँच जाता है

  1. 1

    प्रॉम्प्ट

    यूज़र का मैसेज, साथ ही वे डॉक्यूमेंट्स और रिकॉर्ड्स जो आपका ऐप जोड़ता है।
  2. 2

    मॉडल प्रोवाइडर

    होस्ट किए गए मॉडल को भेजा जाता है, जो अपनी शर्तों के तहत इसे कुछ समय के लिए रख सकता है।
  3. 3

    लॉग्स और ट्रेसेस

    डीबग लॉग्स, ऑब्जर्वेबिलिटी टूल्स और एरर रिपोर्ट्स में अक्सर पूरे प्रॉम्प्ट्स और जवाब सेव हो जाते हैं।
  4. 4

    इवैल्यूएशन सेट्स

    क्वालिटी चेक करने के लिए टेस्ट सेट्स में कॉपी की गई असली बातचीत।
  5. 5

    ट्रेनिंग डेटा

    भविष्य के मॉडल्स को फ़ाइन-ट्यून करने के लिए इस्तेमाल की गई बातचीत।

चार सिद्धांत

सिद्धांतअमल में कैसे लाएं
कम से कम डेटा लें (Minimise)मॉडल को सिर्फ़ वही फ़ील्ड्स भेजें जिनकी ज़रूरत है। डिफ़ॉल्ट रूप से पूरे कस्टमर रिकॉर्ड्स न जोड़ें।
डेटा छिपाएं (Redact)लॉगिंग, इवैल्यूएशन और ट्रेनिंग से पहले पर्सनल डेटा की पहचान करें और उसे मास्क (छिपा) दें।
रखने की सीमा तय करें (Limit retention)लॉग्स और प्रॉम्प्ट्स को सिर्फ़ तब तक रखें जब तक ज़रूरत हो, फिर उन्हें अपने-आप डिलीट कर दें।
मकसद (Purpose)डेटा का इस्तेमाल सिर्फ़ उसी काम के लिए करें जिसके बारे में लोगों को बताया गया था और जिसकी उन्होंने सहमति दी थी।

रेडैक्शन (Redaction) का एक स्टेप

हर उस जगह पर एक PII डिटेक्शन और रेडैक्शन स्टेप लगाएं जहाँ डेटा लाइव रिक्वेस्ट से बाहर जाता है: लॉगिंग से पहले, इवैल्यूएशन के लिए स्टोर करने से पहले, ट्रेनिंग से पहले। स्ट्रक्चर्ड डेटा (फ़ोन नंबर, ईमेल, ID फ़ॉर्मैट) के लिए पैटर्न रूल्स का इस्तेमाल करें और नाम व पते के लिए ट्रेन्ड डिटेक्टर का इस्तेमाल करें। वैल्यूज़ की जगह [PHONE] जैसे टैग्स लगा दें ताकि टेक्स्ट काम का बना रहे।
Simple pattern-based redaction (a starting point, not complete)python
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 एक्ट

भारत का डिजिटल पर्सनल डेटा प्रोटेक्शन एक्ट, 2023 डिजिटल पर्सनल डेटा को प्रोसेस करने के नियम तय करता है। आसान शब्दों में, यह उम्मीद करता है कि संगठन (जिन्हें डेटा फ़िड्यूशरी कहा जाता है) कानूनी मकसद के लिए, आमतौर पर साफ़ सहमति के साथ डेटा प्रोसेस करें, एक नोटिस देकर बताएं कि वे क्या और क्यों कलेक्ट कर रहे हैं, डेटा को सुरक्षित रखें, ज़रूरत न होने पर उसे मिटा दें, और लोगों के अधिकारों का सम्मान करें जैसे कि डेटा देखना, सुधारना और मिटाना। यह एक डेटा प्रोटेक्शन बोर्ड भी बनाता है। सरकार द्वारा डिटेल्ड नियम और टाइमलाइन्स जारी की जाती हैं, इसलिए कानूनी सलाहकारों से मौजूदा स्थिति की जानकारी लें।

डेटा डिलीट करने की रिक्वेस्ट को संभालना

  • उन सभी जगहों के बारे में जानें जहाँ किसी व्यक्ति का डेटा हो सकता है: डेटाबेस, लॉग्स, वेक्टर स्टोर्स, इवैल्यूएशन सेट्स, ट्रेनिंग सेट्स, बैकअप्स और वेंडर्स।
  • डेटाबेस और लॉग्स से डेटा डिलीट करना सीधा और आसान है। किसी ट्रेन्ड मॉडल से किसी व्यक्ति के असर को हटाना मुश्किल है; पर्सनल डेटा को ट्रेनिंग सेट्स से बाहर रखने की यह एक और बड़ी वजह है।
  • आपने क्या, कहाँ और कब डिलीट किया, इसका रिकॉर्ड रखें।

वेंडर की डेटा शर्तें

  • क्या प्रोवाइडर आपके प्रॉम्प्ट्स का इस्तेमाल अपने मॉडल्स को ट्रेन करने के लिए करता है? क्या आप इससे बाहर निकल (opt out कर) सकते हैं?
  • वह प्रॉम्प्ट्स और आउटपुट्स को कितने समय तक रखता है, और किन कामों के लिए, जैसे कि गलत इस्तेमाल की निगरानी (abuse monitoring)?
  • डेटा कहाँ प्रोसेस और स्टोर किया जाता है?
  • कौन से सब-प्रोसेसर्स इसे देखते हैं, और कॉन्ट्रैक्ट खत्म होने पर क्या होता है?

और देखें और पढ़ें

लैब

एक टेस्ट किया गया PII रेडैक्शन स्टेप जिसमें छूटे हुए डेटा की दर (miss rate) नापी गई हो, और एक डेटा रखने की समय सीमा वाली टेबल (retention table)।

~25 min

समस्या

पाठ में दिए गए रेडैक्शन कोड का इस्तेमाल करें।

  1. अपने यूज़र्स के लिखने के अंदाज़ (अंग्रेज़ी, हिंग्लिश, लैटिन लिपि में कोई स्थानीय भाषा) में ग्राहकों के 20 मनगढ़ंत मैसेजेस लिखें। इनमें फर्जी फ़ोन नंबर, ईमेल, PAN जैसे नंबर और नाम शामिल करें। किसी भी असली पर्सनल डेटा का इस्तेमाल न करें।
  2. रेडैक्शन चलाएं और गिनें कि क्या पकड़ा गया, क्या छूट गया, और क्या गलती से मास्क हो गया।
  3. कम से कम एक नियम को बेहतर बनाएं और फिर से चलाएं।
  4. एक रिटेंशन टेबल बनाएं: प्रॉम्प्ट्स, लॉग्स, इवैल्यूएशन सेट्स और ट्रेनिंग डेटा के लिए बताएं कि क्या रखा जाता है, कितने समय तक, और उस तक किसकी पहुँच हो सकती है।

आपका काम तब पूरा होगा जब

कठिन सवाल

उत्तर देखने से पहले ख़ुद जवाब देने की कोशिश करें। अगर आप इनके जवाब दे सकते हैं, तो आप पाठ समझ गए हैं।

Q1आपका रेडैक्शन टेस्ट में सभी फ़ोन नंबर पकड़ लेता है लेकिन नाम छूट जाते हैं। आपका प्लान क्या है?दिखाएं

नामों का कोई तय पैटर्न नहीं होता, इसलिए रेगुलर एक्सप्रेशन्स उन्हें ठीक से नहीं पकड़ पाते। भारतीय नामों और भाषाओं के अनुकूल एक नेम्ड-एंटिटी डिटेक्टर जोड़ें, और असली जैसे सैंपल्स पर इसका टेस्ट करें। यह स्वीकार करें कि इससे कुछ छूट जाएगा, इसलिए रॉ लॉग्स तक पहुँच को भी सीमित करें, रिटेंशन का समय घटाएं, और सीधी बातचीत पर मॉडल ट्रेन करने से बचें।

Q2"हमारे पास सहमति है" कहना ही प्राइवेसी की चर्चा का अंत क्यों नहीं है?दिखाएं

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

जारी रखने के लिए कृपया साइन इन करें।

अक्सर पूछे जाने वाले सवाल

क्या हमें डीबगिंग के लिए पूरे प्रॉम्प्ट्स लॉग करने चाहिए?

डिफ़ॉल्ट रूप से हमेशा रेडैक्ट किए गए प्रॉम्प्ट्स ही लॉग करें। अगर किसी छोटी जांच के लिए पूरे प्रॉम्प्ट्स की वाकई ज़रूरत है, तो उन्हें सीमित समय के लिए, सीमित पहुँच और ऑटोमैटिक डिलीशन के साथ कलेक्ट करें। गलती से भी पूरे प्रॉम्प्ट्स को आम लॉग टूल्स में न जाने दें।

अगर हम नाम हटा दें, तो क्या हम ग्राहकों की चैट्स पर मॉडल को ट्रेन कर सकते हैं?

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

अगर कर्मचारी कस्टमर डेटा को पब्लिक चैटबॉट्स में पेस्ट कर रहे हों तो क्या करें?

यह डेटा लीक होने का खतरा है जिसे पॉलिसी, मंज़ूर किए गए टूल्स, ट्रेनिंग और जहाँ मुमकिन हो, टेक्निकल कंट्रोल्स के ज़रिए संभाला जाना चाहिए। लोगों को एक सुरक्षित और मंज़ूर किया गया विकल्प दें ताकि वे पर्सनल अकाउंट्स का इस्तेमाल करने के लिए मजबूर न हों।

क्या यह कानूनी सलाह है?

नहीं। यह पाठ सामान्य सिद्धांत बताता है। कानून और नियम बदलते रहते हैं और आपकी परिस्थितियों पर निर्भर करते हैं। अपनी असली कानूनी ज़िम्मेदारियों के लिए अपनी लीगल और प्राइवेसी टीमों के साथ मिलकर काम करें।

पाठ का टेस्ट

5 सवाल। पास होने और इस पाठ को पूरा करने के लिए 3 सही होने चाहिए (60%)।

टेस्ट देने और अपनी प्रोग्रेस सेव करने के लिए साइन इन करें