Guardrails, और वे लीक क्यों होते हैं
फ़िल्टर, क्लासिफ़ायर और सेफ़्टी प्रॉम्प्ट्स रखना फ़ायदेमंद है। बस इस बात को लेकर ईमानदार रहें कि वे असल में क्या हैं: स्पीड ब्रेकर, न कि दीवारें।
60 सेकंड में
Guardrails, और वे लीक क्यों होते हैं
फ़िल्टर, क्लासिफ़ायर और सेफ़्टी प्रॉम्प्ट्स रखना फ़ायदेमंद है। बस इस बात को लेकर ईमानदार रहें कि वे असल में क्या हैं: स्पीड ब्रेकर, न कि दीवारें।
- 1
इनपुट guardrails
मॉडल के देखने से पहले जो कुछ भी आता है उसे स्कैन करते हैं। जाने-पहचाने अटैक फ़्रेज़, छिपे हुए कैरेक्टर, संदिग्ध फ़ॉर्मेटिंग, विषय से हटकर की गई रिक्वेस्ट्स। - 2
आउटपुट guardrails
मॉडल द्वारा तैयार किए गए कॉन्टेंट पर किसी के भी कार्रवाई करने से पहले उसे स्कैन करते हैं। लीक हुए सीक्रेट्स, अस्वीकृत कॉन्टेंट, किसी अजीब जगह ले जाने वाले URLs। - 3
एक्शन guardrails
टूल कॉल के चलने से पहले प्रस्तावित कार्रवाई की जाँच करते हैं। अमाउंट लिमिट, प्राप्तकर्ताओं की allow-lists, वर्जित ऑपरेशन्स।
भाषा वाले guardrails लीक क्यों होते हैं
| तरकीब | उदाहरण | फ़िल्टर इसे क्यों पकड़ नहीं पाता |
|---|---|---|
| कोई अन्य भाषा | हंगेरियन में निर्देश | फ़िल्टर को अंग्रेज़ी पर ट्यून किया गया था |
| एन्कोडिंग | Base64, ROT13, hex | फ़िल्टर को शोर दिखता है; मॉडल इसे डिकोड कर लेता है |
| टुकड़े करना (Splitting) | टेबल सेल्स में फैला हुआ निर्देश | कोई भी अकेला टुकड़ा पैटर्न से मैच नहीं करता |
| रोलप्ले | "इस कहानी में, असिस्टेंट समझाता है..." | सीधे शब्द निर्दोष लगते हैं |
| इमेज के अंदर | तस्वीर के रूप में दिखाया गया टेक्स्ट | टेक्स्ट फ़िल्टर तस्वीरें नहीं पढ़ते |
| धीमी तैयारी (Slow build-up) | दस हानिरहित बातचीत के मोड़, फिर असली माँग | हर बातचीत अपने आप में पास हो जाती है |
तो फिर इनका इस्तेमाल क्यों करें?
- ये लगभग बिना किसी ख़र्च के 90% आलसी कोशिशों को रोक देते हैं, जिससे ग़ैर-ज़रूरी शोर काफ़ी कम हो जाता है।
- ये एक सिग्नल बनाते हैं: ब्लॉक की गई कोशिश एक लॉग लाइन होती है जो आपको बताती है कि कोई टटोलने की कोशिश कर रहा है।
- ये ग़ैर-सुरक्षा नीतियों को अच्छी तरह लागू करते हैं — जैसे विषय पर टिके रहना, टोन, अनुपालन (कम्प्लायंस) भाषा — जहाँ कोई पक्का विरोधी ख़तरा नहीं होता।
- ये आपको तब तक समय देते हैं जब तक आप ऐसे नियंत्रण नहीं बना लेते जो असल में टिकते हैं।
स्टैक को सही क्रम में बनाएँ
और देखें और पढ़ें
लैब
एक guardrail जिसे आप पाँच तरीक़ों से मात दे सकते हैं, और एक जिसे आप नहीं दे सकते।
समस्या
BLOCKLIST = ["ignore previous", "system prompt", "reveal your instructions"]
def input_guard(text: str) -> bool:
low = text.lower()
return not any(b in low for b in BLOCKLIST)
# Now the other kind:
def action_guard(tool: str, args: dict) -> str | None:
if tool == "refund" and args["amount"] > 5000:
return "refunds over 5000 require a human"
return Noneआपका काम तब पूरा होगा जब
कठिन सवाल
उत्तर देखने से पहले ख़ुद जवाब देने की कोशिश करें। अगर आप इनके जवाब दे सकते हैं, तो आप पाठ समझ गए हैं।
Q1एक्शन गार्ड किस तरह से ऐसा अभेद्य है जैसा इनपुट फ़िल्टर नहीं है? इसके सटीक तरीक़े को स्पष्ट करें।दिखाएं
amount > 5000 या तो सही होता है या ग़लत, और कोई भी शब्द इस संख्या को बदल नहीं सकता। अर्थ की पहरेदारी करना एक हारी हुई खोज समस्या है; किसी वैल्यू की पहरेदारी करना केवल अंकगणित है।Q2कोई ऐसा मामला बताएँ जहाँ भाषा वाला guardrail सही प्राथमिक नियंत्रण हो।दिखाएं
अक्सर पूछे जाने वाले सवाल
क्या कमर्शियल guardrail प्रोडक्ट्स फ़ायदेमंद हैं?
वे आपको पैटर्न लिस्ट बनाने और मेंटेन करने से बचाते हैं, और उपयोगी टेलीमेट्री के साथ आते हैं। वे बुनियादी बातों को नहीं बदलते। अगर समय बचता है तो एक ख़रीद लें; लेकिन इसे ख़रीदने को लेयर 1 से 3 का विकल्प न बनने दें।
क्या कोई मॉडल अपने ही आउटपुट की जाँच कर सकता है?
यह साफ़ तौर पर दिखने वाली चूकों को पकड़ लेता है और इसे जोड़ना सस्ता है। लेकिन यह तब फ़ेल हो जाता है जब वही इंजेक्शन जो पहले राउंड को भटकाता है, इस जाँच को भी भटका देता है, और असल में आपको उसी मामले के लिए इसकी ज़रूरत थी। किसी भी न बदले जा सकने वाले एक्शन पर सेल्फ़-चेक को अपना इकलौता गेट कभी न बनाएँ।
बाहर जाते समय मुझे असल में क्या ब्लॉक करना चाहिए?
क्रेडेंशियल जैसी दिखने वाली कोई भी चीज़, आपकी allow-list में न मौजूद कोई भी URL, और ऐसा कोई भी कॉन्टेंट जो रेंडर होने वाली जगह पर अपने आप रन या लोड हो जाए। ये तीन चीज़ें असली लीक्स के बड़े हिस्से को संभाल लेती हैं।
मैं कैसे नापूँ कि मेरे guardrails काम कर रहे हैं या नहीं?
उनकी रेड-टीमिंग करें — मॉड्यूल 23। हमलों का एक तय सेट चलाएँ, पास होने की दर रिकॉर्ड करें, और हर बदलाव पर इसे फिर से चलाएँ। जिस guardrail की बाईपास दर नापी न गई हो, वह ऐसा guardrail है जिसकी बाईपास दर अज्ञात है।
पाठ का टेस्ट
5 सवाल। पास होने और इस पाठ को पूरा करने के लिए 3 सही होने चाहिए (60%)।