मैंने एक AI Incident Copilot बनाया है जो आपके लॉग्स (logs) स्टोर नहीं करता है
हर इंजीनियर ऐसा ही करता है।
प्रोडक्शन में कुछ टूट जाता है। आप लॉग्स लेते हैं। आप उन्हें AI चैट में पेस्ट करते हैं। आप मदद मांगते हैं। AI एक अच्छा जवाब देता है।
ज़्यादातर लोग सोचते हैं कि यह सामान्य है। ऐसा नहीं है। यह एक बहुत बड़ा सुरक्षा जोखिम (security risk) है।
प्रोडक्शन लॉग्स में संवेदनशील डेटा (sensitive data) होता है। इनमें कस्टमर आईडी, ऑथ एरर्स (auth errors), स्टैक ट्रेसेस (stack traces) और API रिस्पॉन्स होते हैं। कभी-कभी इनमें सीक्रेट्स (secrets) भी होते हैं।
डिबग करने का मौजूदा तरीका निजी डेटा को चैट बॉक्स में पेस्ट करना और बेहतर की उम्मीद करना है। मैं डेटा लीक के जोखिम के बिना AI की मदद चाहता था।
इसलिए मैंने एक AI incident copilot बनाया। मैंने एक नियम का पालन किया: ऐप उपयोगी होना चाहिए, भले ही हम आपका डेटा स्टोर करने से मना कर दें।
यह ऐप एक AI war room की तरह काम करता है। आप लॉग्स, ट्रेसेस या एरर्स पेस्ट करते हैं। यह आपकी मदद करता है:
• बदलावों का सारांश (Summarize changes) निकालना • विफलता के बिंदुओं (failure points) को खोजना • शोर वाले (noisy) लॉग्स को ग्रुप करना • स्टैक ट्रेसेस (stack traces) को समझाना • शमन (mitigation) के चरणों का सुझाव देना • पोस्टमॉर्टम टाइमलाइन का ड्राफ्ट तैयार करना
ज़्यादातर डेवलपर्स इस तरह के ऐप्स बनाते हैं: Input → Backend → Database → LLM → Database → UI.
यह बनाने का एक खतरनाक तरीका है। अब आपका ऐप हर प्रोडक्शन विफलता का एक आर्काइव (archive) रखता है। आपको डेटा ब्रीच, बैकअप और एडमिन एक्सेस की चिंता करनी पड़ती है।
मुझे एक प्राइवेट स्क्रैचपैड (private scratchpad) चाहिए था, न कि कोई SaaS डैशबोर्ड।
मेरा डिज़ाइन नियम है: डेटा प्रोसेस करें, उसे इकट्ठा न करें।
आर्किटेक्चर अलग तरह से काम करता है:
- चैट हिस्ट्री आपके ब्राउज़र में रहती है।
- बैकएंड प्रॉम्प्ट्स (prompts) को सेव नहीं करता है।
- बैकएंड मॉडल रिस्पॉन्स को सेव नहीं करता है।
- हर रिक्वेस्ट डिस्पोजेबल (disposable) होती है।
मैंने Icelake AI API का उपयोग किया क्योंकि यह इस प्राइवेसी मॉडल के अनुकूल है। सर्वर तीन कदम उठाता है:
- संवेदनशील वैल्यूज़ को रिडैक्ट (redact) करता है।
- API को एक संक्षिप्त (minimized) प्रॉम्प्ट भेजता है।
- रिक्वेस्ट को स्टोर किए बिना जवाब वापस करता है।
Redaction मदद करता है, लेकिन यह कोई जादुई ढाल नहीं है। यह सब कुछ नहीं पकड़ पाएगा। असली जीत यह है कि रिक्वेस्ट खत्म होने के बाद आप कितना कम डेटा अपने पास रखते हैं।
Redaction कॉल के दौरान जोखिम कम करता है। लॉग्स स्टोर न करना जोखिम को हमेशा के लिए कम कर देता है।
ज़्यादातर AI ऐप्स पूछते हैं: हम क्या इकट्ठा कर सकते हैं? यह ऐप पूछता है: हम क्या इकट्ठा करने से बच सकते हैं?
यह दृष्टिकोण उत्पाद को बेहतर बनाता है। उपयोगकर्ता सुरक्षित महसूस करते हैं। वे वास्तविक घटनाओं के दौरान इसका उपयोग करने के लिए तैयार रहते हैं क्योंकि वे जानते हैं कि उनके विचार मेरे डेटाबेस में फाइल नहीं किए जा रहे हैं।
AI ऐप्स की अगली लहर को केवल इस बात पर प्रतिस्पर्धा नहीं करनी चाहिए कि वे कितने स्मार्ट हैं। उन्हें संयम (restraint) पर प्रतिस्पर्धा करनी चाहिए।
खुद से पूछें: • आप क्या स्टोर करने से मना करते हैं? • आप अपने लिए किसे एक्सेस करना असंभव बनाते हैं? • सेशन खत्म होने पर क्या गायब हो जाता है?
AI टूल्स उपयोगी होने चाहिए क्योंकि वे सब कुछ याद नहीं रखते।
Optional learning community: https://t.me/GyaanSetuAi
