यह तय करना कि एआई एजेंट को क्या छूने की अनुमति है: अनुमति सीमा जो एक बुरे दिन से बचती है
एक एजेंट को मिलने वाली लेखन पहुंच के लिए ब्लास्ट-रेडियस निर्णय ढांचा - और जिस दिन वह कुछ गलत करता है उस दिन पुनर्प्राप्ति कैसी दिखती है।
एआई एजेंट के बारे में दिलचस्प सवाल यह नहीं है कि "क्या हम उससे यह काम करवा सकते हैं?" यह है कि "जिस दिन वह कोई गलत काम करता है उस दिन पुनर्प्राप्ति कैसी दिखती है?"
एआई एजेंट अनुमतियों के बारे में अधिकांश लेखन या तो पहचान-प्रबंधन विक्रेता सामग्री (ओक्टा-आकार के आरेख, स्कोप टेबल, ओडब्ल्यूएएसपी टैक्सोनॉमीज़) या एंटरप्राइज़-सुरक्षा अनुपालन फ़्रेमिंग (एसओसी 2 साक्ष्य, ईयू एआई अधिनियम क्रॉस-रेफरेंस) है। दोनों ही सही संदर्भ में उपयोगी हैं और न ही वह है जिसकी एक छोटे ऑपरेटर को वास्तव में उस दिन आवश्यकता होती है जब वे एक मशीन को अपने गिट रिपॉजिटरी या अपने लाइव उत्पादन साइट की चाबियाँ सौंपते हैं। उन्हें एक निर्णय ढाँचे की आवश्यकता है जो एजेंट द्वारा की जाने वाली कार्रवाई के अनुसार एक प्रश्न का ईमानदारी से उत्तर दे: किसी बुरे दिन में सबसे खराब संभावित परिणाम क्या है, और उससे होने वाली वसूली कैसी दिखती है?
यह पोस्ट वह रूपरेखा है, जो वास्तव में एजेंटों द्वारा इस वेबसाइट तक पहुंच लिखने के लिए लिखी गई है। नीचे दी गई हर चीज़ या तो मैं करता हूं, या कुछ ऐसा जो मैंने तय किया है कि सुविधा को उचित ठहराने के लिए पुनर्प्राप्ति लागत बहुत अधिक है। यह कोई सुरक्षा-विक्रेता पिच नहीं है और यह आपको पॉलिसी इंजन नहीं बेचता है।
"न्यूनतम विशेषाधिकार" गलत पहला प्रश्न क्यों है
उद्योग-मानक फ़्रेमिंग least privilege है: एक एजेंट को केवल वही दें जिसकी उसे सख्त ज़रूरत है। यह एक अच्छा सिद्धांत है लेकिन यह बहुत देर से आया है। यह उत्तर देता है "कितनी पहुँच?" पहले यह उत्तर दिए बिना कि "कार्य के किस वर्ग तक किसी भी स्तर तक पहुंच प्रदान करना सुरक्षित है?"
वह आदेश जो वास्तव में एक छोटे ऑपरेटर की मदद करता है वह है:
1. विस्फोट त्रिज्या के आधार पर कार्रवाई को वर्गीकृत करें। इस बात से नहीं कि यह किया जा सकता है - एपीआई द्वारा समर्थित कुछ भी किया जा सकता है - बल्कि इससे होता है कि यदि यह गलत हो जाता है और इसे पूर्ववत नहीं किया जा सकता है तो क्या होता है। यहीं से अधिकांश अनुमतियों के निर्णय शुरू होने चाहिए और जहां वे लगभग कभी नहीं होते हैं। 2. तय करें कि क्या कार्रवाई उस वर्ग से संबंधित है जिसे आप एजेंटों को करने देंगे। कुछ वर्ग ऐसा नहीं करते हैं, चाहे टोकन कितना भी कड़ा क्यों न हो। 3. केवल तभी, पहले दो गेटों को पार करने वाली कार्रवाइयों के लिए, विशिष्ट स्कोप और टोकन पर कम से कम विशेषाधिकार लागू करें।
चरण 1 और 2 को छोड़ देने से आप एक ऐसे एजेंट के पास पहुँच जाते हैं जिसे "बस उस एक फ़ोल्डर के लिए डिलीट अनुमति की आवश्यकता है" और एक बुरे दिन ने कुछ ऐसा हटा दिया है जिसे आप वापस नहीं पा सकते हैं।
ब्लास्ट-रेडियस वर्गीकरण जो बाकी सब कुछ तय करता है
कार्रवाई के अनिवार्य रूप से चार वर्ग हैं, और वर्ग ही यह निर्धारित करता है कि किसी एजेंट को कभी कार्रवाई को छूना चाहिए या नहीं, एपीआई की स्कोप सूची को नहीं।
कक्षा 1 - सेकंड के भीतर, एजेंट द्वारा ही उलटा किया जा सकता है। एजेंट एक ड्राफ्ट को संपादित करता है। एजेंट एक क्वेरी चलाता है और परिणाम का निरीक्षण करता है। एजेंट उस फ़ाइल में सामग्री तैयार करता है जिसका स्वामी भी एजेंट होता है। क्लास 1 की खराब कार्रवाई से उबरने में एजेंट दोबारा कोशिश करता है। कोई सार्थक विस्फोट त्रिज्या नहीं है क्योंकि कार्रवाई ने एजेंट के स्वयं के सैंडबॉक्स को कभी नहीं छोड़ा। इन्हें निःशुल्क प्रदान करें; ऐसा न करने से एआई एजेंट बेकार महसूस करते हैं।
कक्षा 2 - मिनटों में मानव द्वारा प्रतिवर्ती। एजेंट गिट के लिए प्रतिबद्ध है। एजेंट एक शाखा की ओर धकेलता है। एजेंट सीएमएस पर एक ड्राफ्ट अपलोड करता है। एजेंट एक ईमेल को "भेजने से पहले समीक्षा" कतार में रखता है। पुनर्प्राप्ति यह है कि एक मानव नोटिस करता है, प्रत्युत्तर देता है, या समीक्षा करता है। ब्लास्ट त्रिज्या वास्तविक है लेकिन सीमित है - एक ख़राब कमिट एक ख़राब कमिट है, और git revert एक वास्तविक उत्तर है जिसकी लागत लगभग तीन मिनट है। इन्हें ऑडिट ट्रेल के साथ प्रदान करें जो मानव को नोटिस करने देता है।
कक्षा 3 - वास्तविक लागत पर, घंटों या दिनों में प्रतिवर्ती। एजेंट सार्वजनिक रूप से पोस्ट करता है। एजेंट वास्तविक सूची को ईमेल भेजता है। एजेंट लाइव उत्पादन डेटाबेस को संशोधित करता है। पुनर्प्राप्ति यह है कि एक मानव नोटिस करता है और एक कार्रवाई करता है जिसके स्वयं परिणाम होते हैं (सार्वजनिक पोस्ट को हटाना, सुधार ईमेल भेजना, माइग्रेशन को वापस लेना)। इन्हें केवल तभी प्रदान करें जब विशिष्ट कार्रवाई का विस्फोट दायरा छोटा हो और ऑडिट ट्रेल आपको घंटों नहीं, बल्कि मिनटों के भीतर खराब मामले को पकड़ने देता है।
कक्षा 4 - अपरिवर्तनीय, या केवल व्यवसाय-परिवर्तनशील लागत पर प्रतिवर्ती। एजेंट ग्राहक रिकॉर्ड हटा देता है। एजेंट पैसे ले जाता है. एजेंट खाता क्रेडेंशियल बदलता है. एजेंट कुछ पोस्ट करता है जिसे सुधार के उतरने से पहले तार द्वारा पकड़ लिया जाता है। वसूली यह है कि आप माफी मांगने या भुगतान करने में एक सप्ताह बिताते हैं, और विश्वास की लागत स्थायी होती है। इन्हें अनुदान न दें. कभी। इससे कोई फर्क नहीं पड़ता कि एजेंट कितना सक्षम है, इससे कोई फर्क नहीं पड़ता कि टोकन का दायरा कितना सीमित है। कक्षा 4 की कार्रवाई को स्वचालित करने की सुविधा कभी भी इसे गलत करने की कीमत के लायक नहीं है।
व्यवहार में कक्षाओं के बीच की रेखाएँ अस्पष्ट नहीं हैं। जो चीज़ उन्हें अस्पष्ट महसूस कराती है वह यह है कि उद्योग आपको ऐसे उपकरण बेचता है जो तकनीकी रूप से हर कार्य कर सकते हैं और आपको यह तय करने देते हैं कि कौन सा कार्य करना है। उपरोक्त वर्गीकरण विज्ञान पूर्व-उपकरण निर्णय है - इससे पहले कि आप कोड की एक पंक्ति लिखें जो कक्षा 4 की कार्रवाई को छू सके, अपने आप से पूछें कि क्या कार्रवाई बिल्कुल कोड में है।
वे विशिष्ट चीज़ें जो मैं अपने एजेंटों को करने देता हूँ
संक्षिप्तता के लिए, यहां वह सटीक दायरा है जो मैं इस साइट पर देता हूं, उपरोक्त कक्षाओं के लिए मैप किया गया है। यह कोई टेम्प्लेट नहीं है - आपका ऑपरेशन अलग है - लेकिन यह फ्रेमवर्क का एक कार्यान्वित उदाहरण है।
कक्षा 1, दी गई: कुछ भी जो पढ़ा जाता है। रेपो फ़ाइलें पढ़ें, साइटमैप पढ़ें, परिनियोजन लॉग पढ़ें, डाइजेस्ट पढ़ें, कार्यसूची पढ़ें, बैकलॉग पढ़ें। प्रकाशन एजेंट हर समय वह सब कुछ पढ़ता है जो वह कर सकता है, और कोई पुनर्प्राप्ति लागत नहीं है क्योंकि पढ़ने से कुछ भी नहीं बदलता है।
कक्षा 1, दी गई: कुछ भी जो एजेंट के सत्र के स्वामित्व वाली फ़ाइलों को लिखता है और प्रतिबद्ध होने से पहले निरीक्षण किया जाता है। ड्राफ्ट पोस्ट, जेनरेटेड कवर, जेनरेटेड ओजी कार्ड, अपडेटेड बैकलॉग मेटाडेटा। ख़राब मामला एक ख़राब ड्राफ्ट है; पुनर्प्राप्ति है "फ़ाइल हटाएं, पुनः प्रयास करें"।
कक्षा 2, दी गई: जब बिल्ड गेट गुजरता है तो main के लिए प्रतिबद्ध होता है। यह महत्वपूर्ण है. मैं स्पष्ट रूप से एजेंट को उस शाखा को लिखने की क्षमता प्रदान करता हूं जिसे क्लाउडफ्लेयर पेज तैनात करता है, मानव समीक्षा चरण के बिना, उस विशिष्ट शर्त पर कि npm run build शून्य लौटाता है। बिल्ड गेट वह है जो इसे क्लास 3 की बजाय क्लास 2 की कार्रवाई बनाता है: एक टूटी हुई तैनाती को उतरने से पहले check-posts, check-links और check-search द्वारा पकड़ लिया जाता है, और गेट से गुजरने वाला एक खराब कमिट अभी भी मिनटों के भीतर git revert -योग्य है।
कक्षा 2, दी गई: origin/main तक धकेलता है। वही तर्क - परिनियोजन पाइपलाइन का दूर की ओर अपना स्वयं का बिल्ड गेट है, और क्लाउडफ़ेयर पेज रोलबैक के लिए पिछले परिनियोजन को बरकरार रखता है। एक सिंगल क्लिक किसी भी एक तैनाती को पूर्ववत कर देता है।
कक्षा 2, दी गई: गिटहब एपीआई कार्यसूची पर कमिट, ओपन इश्यू, अपडेट इश्यू स्थिति बनाने के लिए कॉल करता है। ये सभी रेपो इतिहास में ऑडिट योग्य हैं और हाथ से पूर्ववत करने योग्य हैं।
कक्षा 3, विचार किया गया और नहीं दिया गया: मेरे नाम के तहत लिंक्डइन या किसी भी सामाजिक मंच पर प्रकाशन। लिंक्डइन पर एक खराब पोस्ट की पुनर्प्राप्ति लागत एक हटाई गई पोस्ट है जिसे देखने वाले सभी लोगों ने स्क्रीनशॉट भी साझा किया है, साथ ही एक प्रतिष्ठित कर भी। "लेख को लिंक्डइन अपडेट के रूप में पोस्ट करें" को स्वचालित करने की सुविधा इसके लायक नहीं है। यही विशिष्ट कारण है कि साइट का AUTOMATION-PLAN दस्तावेज़ स्पष्ट रूप से कहता है "यह लिंक्डइन या ईमेल को नहीं छूता है" - वर्ग पर विचार किया गया और अस्वीकार कर दिया गया, न कि केवल पूर्ववत छोड़ दिया गया।
कक्षा 3, विचार किया गया और नहीं दिया गया: न्यूज़लेटर सूची में ईमेल भेजना। वही तर्क. एक खराब ईमेल से वास्तविक सूची में पुनर्प्राप्ति एक सुधार ईमेल है जिसे लोग "ये लोग अपने सिस्टम को सही नहीं रख सकते" के साथ-साथ स्थायी रूप से सदस्यता समाप्त करने के रूप में भी पढ़ते हैं। जब कोई मानव क्लिक करता है तो न्यूज़लेटर भेजे जाते हैं।
कक्षा 4, हार्ड-ब्लॉक: किसी भी प्रकाशित पोस्ट को हटाना, किसी भी ग्राहक रिकॉर्ड को हटाना, स्पष्ट पुन: समीक्षा के बिना _headers , _redirects , functions/ , या package.json निर्भरता में परिवर्तन। एजेंट इन्हें प्रस्तावित कर सकता है - एक रन लॉग प्रविष्टि में - लेकिन जो प्रतिबद्धता उन्हें प्रदान करती है वह मेरे द्वारा पढ़ी गई होनी चाहिए, न कि एजेंट द्वारा लिखी गई। यह एजेंट पर एक वास्तविक घर्षण है, और यह वह घर्षण है जो मैं चाहता हूं।
कक्षा 4, हार्ड-ब्लॉक्ड: क्लाउडफ्लेयर खाता सेटिंग्स, डीएनएस, या एक्सेस नियमों से संबंधित कुछ भी। खाता क्रेडेंशियल एजेंट के परिवेश में बिल्कुल भी नहीं हैं। यदि उन्हें बदलने की आवश्यकता है, तो मैं उन्हें बदल देता हूँ।
किसी एजेंट को कोई कार्रवाई करने की अनुमति देने से पहले पूछे जाने वाले दो प्रश्न
इससे पहले कि आप किसी नई क्षमता को शामिल करने के लिए किसी एजेंट की अनुमतियाँ बढ़ाएँ, अपने आप को इन दोनों का उत्तर एक-एक पैराग्राफ में देने के लिए बाध्य करें। चेकलिस्ट नहीं - वास्तविक वाक्य।
प्रश्न 1: इस कार्रवाई के गलत होने का सबसे खराब संभावित परिणाम क्या है, और पुनर्प्राप्ति में कितना समय लगता है? औसत परिणाम नहीं; सबसे खराब प्रशंसनीय. यदि एजेंट आपके ध्यान में आने से पहले सैद्धांतिक रूप से दस हजार बार कार्रवाई कर सकता है, तो उस संख्या का उपयोग करें, एक का नहीं। "एजेंट एक गलत ईमेल भेज सकता है" कक्षा 3 की कार्रवाई है; "एजेंट लूप कर सकता है और एक हजार प्राप्तकर्ताओं को एक ही गलत ईमेल भेज सकता है, इससे पहले कि कुछ भी पकड़ में आए" कक्षा 4 की कार्रवाई है। स्वायत्तता ही वर्ग को बदलती है।
प्रश्न 2: पुनर्प्राप्ति के लिए किस वर्ग के व्यक्ति की आवश्यकता होगी, और क्या वे बुरे दिन पर उपलब्ध होंगे? जिस पुनर्प्राप्ति के लिए आपको व्यक्तिगत रूप से 15 मिनट के भीतर पहुंच जाना आवश्यक है, वह अभी भी कक्षा 2 की कार्रवाई है, वास्तव में कक्षा 2 नहीं है - यह भाग्यशाली समय की धारणा के साथ कक्षा 3 है। इस बारे में ईमानदार रहें कि खराब मामले को ठीक करने की योग्यता और किसके पास है और उन तक कितनी विश्वसनीय तरीके से पहुंचा जा सकता है।
यदि आप अपनी संतुष्टि के अनुसार दोनों प्रश्नों का उत्तर एक-एक पैराग्राफ में नहीं दे सकते हैं, तो "क्या मुझे कार्रवाई की अनुमति देनी चाहिए?" का उत्तर दें। कोई नहीं है।
तीन विफलता मोड मैंने वास्तव में देखे हैं
विफलता मोड 1: "यह केवल डेमो के लिए है"। एक एजेंट को विकास के दौरान आवश्यकता से अधिक व्यापक अनुमति मिलती है क्योंकि सब कुछ प्रदान करना तेज़ होता है और बाद में सीमित हो जाता है। फिर डेमो काम करता है, डेमो स्टेजिंग बन जाता है, स्टेजिंग प्रोडक्शन बन जाता है, और किसी को भी अनुमतियों को सीमित करने की याद नहीं आती है जब तक कि एजेंट किसी मामले को हिट नहीं करता है, बाद में उसके संकुचित स्व ने इनकार कर दिया होगा। विकास के दौरान भी, पहली पंक्ति से संकीर्ण अनुदान - शुरुआत में दस मिनट लगते हैं और लाइव होने के बाद यह असंभव है क्योंकि अब वास्तविक काम इस पर निर्भर करता है।
विफलता मोड 2: "दायरे में विनाशकारी क्रियाएं शामिल नहीं हैं"। GitHub के repo दायरे में, उदाहरण के लिए, शाखाओं को हटाना, बलपूर्वक धकेलना, फ़ाइलों को हटाना शामिल है। यह पढ़ने-लिखने के दायरे जैसा दिखता है और वास्तव में यह "इस भंडार के लिए कुछ भी करें" का दायरा है। स्कोप देने से पहले उसकी वास्तविक अनुमतियाँ पढ़ें, स्कोप का नाम नहीं। अधिकांश OAuth स्कोप उन क्रियाओं को बंडल करते हैं जिन्हें कॉल करने वाला अनुमति नहीं देना चाहता; बंडलिंग वह जगह है जहां विस्फोट त्रिज्या रहता है।
विफलता मोड 3: "हम बाद में निगरानी जोड़ देंगे"। ऑडिट ट्रेल के बिना दी गई कोई भी कक्षा 2 या कक्षा 3 की अनुमति जो आपको एक खराब कार्रवाई पर ध्यान देती है वह चुपचाप कक्षा 4 की कार्रवाई है, क्योंकि पुनर्प्राप्ति घड़ी तब तक शुरू नहीं होती है जब तक कोई नोटिस नहीं करता है, और यदि कोई नोटिस नहीं करता है तो कोई वसूली नहीं होती है - बस संचित क्षति होती है। ऑडिट ट्रेल क्लास को उतना ही परिभाषित करता है जितना कि क्रिया। यह what to log when an AI agent acts on your behalf में संपूर्ण तर्क है: लॉगिंग दस्तावेज़ीकरण नहीं है, यह रोकथाम उपाय है।
"क्या इंसान यहीं का है?" सवाल
एक बार जब आप किसी कार्रवाई को वर्गीकृत कर लेते हैं, तो एक विशिष्ट निर्णय अच्छी तरह से चलने वाले स्वचालन को थिएटर से अलग करता है: क्या आप एक इंसान को लूप में रखते हैं?
उद्योग डिफ़ॉल्ट है: हाँ, कक्षा 3 या उससे ऊपर की किसी भी चीज़ पर। यह गलत उत्तर है, और यह इसी कारण से गलत उत्तर है कि "बस एक समीक्षा कदम जोड़ें" बाकी सभी जगहों पर विफल रहता है - एक इंसान जिसे सप्ताह में दो सौ चीजों को मंजूरी देनी होती है, वह नियंत्रण नहीं है, वे एक कुर्सी के साथ रबर स्टैंप हैं। मानव जांच केवल तभी वास्तविक है जब मानव वास्तव में बुरे से अच्छे आउटपुट को बता सकता है, और यदि मात्रा इतनी कम है कि वे ध्यान दे सकते हैं।
दो नियम जो व्यवहार में काम करते हैं:
1. मानव जाँच केवल एक नियंत्रण है जब मनुष्य मना कर सकता है। यदि इनकार करना महंगा है (रिलीज़ को अवरुद्ध करता है, ग्राहक को विलंबित करता है, मतलब कठिन बातचीत करता है), तो मानव नियमित रूप से मना नहीं करेगा, इसलिए जाँच थियेटर है। यदि समीक्षक का काम सही होना है, लोकप्रिय होना नहीं, और इनकार करना वास्तव में मुफ़्त है - तो जाँच काम करती है। 2. एक सप्ताह में 20 वस्तुओं की मानव जांच एक नियंत्रण है; एक सप्ताह में 200 वस्तुओं पर एक मानवीय जांच नहीं होती है। एक सीमा से नीचे, मनुष्य ध्यान देते हैं। इसके ऊपर वे पढ़ना बंद कर देते हैं। सीमा कार्य के अनुसार अलग-अलग होती है, लेकिन यह अधिकांश प्रणालियों की अपेक्षा से बहुत कम है - मैं "यदि मैं इनमें से प्रत्येक को व्यक्तिगत रूप से खोलूंगा, तो यह सीमा के नीचे है; यदि मैं स्किम करता हूं, तो यह नहीं है"।
जहां एक मानवीय जांच रंगमंच है, ईमानदार उत्तर "बेहतर चेकलिस्ट जोड़ें" नहीं है। यह या तो है: विशिष्ट निर्णय को पूरी तरह से स्वचालित करें (चेक मूल्य नहीं जोड़ रहा है; इसे हटा दें), या वॉल्यूम कम करें जब तक कि कोई मानव वास्तव में इसे नहीं कर सकता (चेक महत्वपूर्ण है; वॉल्यूम समस्या है, चेक नहीं)। रबर-स्टैंप स्टेप के साथ ऑटोमेशन बिना ऑटोमेशन के ऑटोमेशन से भी बदतर है, क्योंकि स्टेप की मौजूदगी दोष को डिज़ाइन से दूर कर देती है जिससे वॉल्यूम बहुत अधिक हो जाता है।
अनुमति निर्णय के लिए आवश्यक विशिष्ट कलाकृतियाँ
प्रत्येक क्रिया वर्ग के लिए जो आप किसी एजेंट को देते हैं, तीन विशिष्ट कलाकृतियाँ मौजूद होनी चाहिए। यदि तीनों में से कोई भी गायब है, तो अनुमति जिम्मेदारी से नहीं दी गई है - यह आशावादी तरीके से दी गई है।
आर्टिफैक्ट 1 - एजेंट के बाहर से ऑडिट ट्रेल। एजेंट ने जो किया उसका अपना लॉग नहीं है। एक बाहरी रिकॉर्ड - एक गिट इतिहास, एक एपीआई प्रतिक्रिया लॉग, संदेश आईडी के साथ एक ईमेल कतार - जो एजेंट के मरने, प्रक्रिया के खत्म होने, मशीन की शक्ति खोने से बचता है। कार्रवाई का असली सबूत अभिनेता के बाहर रहता है। what to log when an AI agent acts on your behalf में पूरा तर्क देखें; सबसे संक्षिप्त संस्करण यह है कि एजेंट अपने कार्यों का सबसे कम विश्वसनीय गवाह है।
आर्टिफैक्ट 2 - पुनर्प्राप्ति प्रक्रिया, नीचे लिखी गई। प्रति क्रिया वर्ग एक-पैराग्राफ दस्तावेज़ जो कहता है: "यदि कार्रवाई एक्स गलत तरीके से फायर करता है, तो उस क्रम में वाई और जेड करें, और उम्मीद करें कि पुनर्प्राप्ति डब्ल्यू मिनट में पूरी हो जाएगी।" यदि प्रक्रिया मौजूद नहीं है, तो कार्रवाई वास्तव में पुनर्प्राप्त करने योग्य नहीं है - यह अप्राप्य है लेकिन अभी तक पता नहीं चला है। पहली बार अनुमति देने से पहले प्रक्रिया लिखें, पहली बार अनुमति देने के बाद नहीं।
आर्टिफैक्ट 3 - किल स्विच। एक एकल नामित स्थान जहां आप सेकंड के भीतर इस क्रिया को करने की एजेंट की क्षमता को रद्द कर सकते हैं। मेरे लिए, इस साइट पर, किल स्विच हैं: GitHub OAuth टोकन को घुमाना (सभी लेखन पहुंच को समाप्त कर देता है), Cloudflare API टोकन को घुमाना (तैनाती सत्यापन को समाप्त कर देता है), और दैनिक-रन क्रॉन को अक्षम पर सेट करना (ट्रिगर को समाप्त कर देता है)। तीनों प्रलेखित हैं, तीनों एक-एक कमांड हैं, और तीनों ऐसी चीजें हैं जिनका मैंने कम से कम एक बार उपयोग किया है।
वास्तविक किल स्विच के बिना, अनुमति अनुमति नहीं है - यह एक निश्चित उपलब्धि है। ऐसा कुछ भी न दें जिसे आप एक मिनट के भीतर रद्द न कर सकें।
सबसे कठिन एक: समय पर अनुमति बनाम खड़े रहना
एजेंट की अनुमतियों में सबसे आम गलती कक्षा 3 की कार्रवाई तक स्थायी पहुंच प्रदान करना है ताकि एजेंट "आवश्यकता पड़ने पर इसे संभाल सके"। स्थायी अनुमतियाँ ही वह कारण है जिसके कारण कक्षा 3 की गतिविधियाँ कक्षा 4 की समस्याओं में बदल जाती हैं: स्थायी विशेषाधिकार पर बैठा एक निष्क्रिय या समझौता किया हुआ एजेंट निष्क्रिय नहीं है - यह उजागर हो गया है। यही कारण है कि Microsoft's own guidance और industry security research on AI agent identities दोनों एक ही सिफ़ारिश पर सहमत हैं: केवल उसी क्षण के लिए उन्नत अनुमतियाँ प्रदान करें जिनकी उन्हें आवश्यकता है, एक संक्षिप्त टीटीएल और स्वचालित निरस्तीकरण के साथ।
जस्ट-इन-टाइम मॉडल यह है: जब एजेंट को इसकी आवश्यकता होती है तो वह अनुमति मांगता है, उसे एक टोकन मिलता है जिसका जीवनकाल महीनों में नहीं मिनटों में मापा जाता है, और टोकन समाप्त हो जाता है चाहे एजेंट को इसका उपयोग करने की आवश्यकता हो या नहीं। यदि एजेंट को अगले घंटे के लिए अनुमति की आवश्यकता नहीं है, तो कोई एक्सपोज़र मौजूद नहीं है। यदि उस घंटे में एजेंट से समझौता किया जाता है, तो हमलावर को एक टोकन विरासत में मिलता है जो उनके घूमने से पहले ही समाप्त हो जाता है।
इसे स्थापित करने के लिए अधिक काम है. यह एक अनुमति मॉडल के बीच का अंतर भी है जो एक बुरे दिन से बचता है और एक जो एक बुरे दिन को एक बुरे तिमाही में बदल देता है। यदि आप अपने एजेंट के लिए बुनियादी ढांचे का केवल एक गैर-स्पष्ट टुकड़ा बनाने जा रहे हैं, तो यही है।
अगले मंगलवार को क्या करें
यदि आप पहले से ही अपने सिस्टम पर एजेंट चलाते हैं, तो इस सप्ताह निम्नलिखित दो अभ्यास करें।
अभ्यास 1. आपका एजेंट वर्तमान में जो भी कार्य कर सकता है उसे लिखें। उपकरण के नाम नहीं - क्रियाएँ। "गिट के लिए प्रतिबद्ध।" "मेरे एनालिटिक्स एंडपॉइंट पर एक HTTP पोस्ट भेजें।" "डेटाबेस पंक्ति पढ़ें।" "एक डेटाबेस पंक्ति लिखें।" प्रत्येक के लिए, उपरोक्त वर्गीकरण से वर्ग को चिह्नित करें।
अभ्यास 2. सूची में प्रत्येक कक्षा 3 या कक्षा 4 की कार्रवाई के लिए, तीन-आर्टिफैक्ट परीक्षण का उत्तर दें: बाहर से ऑडिट ट्रेल, लिखित पुनर्प्राप्ति प्रक्रिया, किल स्विच। कोई भी कार्रवाई जो तीनों में से किसी पर भी विफल हो जाती है, या तो कार्रवाई को डाउनग्रेड कर दें (कलाकृति मौजूद होने तक अनुमति रद्द करें) या अगले रन से पहले कलाकृति बनाने के लिए समय लें।
यदि व्यायाम में एक घंटा लगता है, तो आपका एक छोटा सा ऑपरेशन होगा और यह एक घंटे के लायक है। यदि इसमें एक सप्ताह का समय लगता है, तो आपके पास एक बड़ा ऑपरेशन है और अब इसे करने में होने वाली देरी पहले बुरे दिन की लागत से कम है जिसके लिए आपने तैयारी नहीं की है।
जहां यह बाकी काम के साथ फिट बैठता है
अनुमतियाँ सीमा अप्राप्य एजेंटों को चलाने का नियंत्रण पक्ष है। ऑडिट ट्रेल what to log when an AI agent acts on your behalf में डायग्नोस्टिक पक्ष है - लॉग वह है जो आपको बताता है कि एजेंट ने जो किया वह क्यों किया; अनुमतियाँ वह सीमा हैं जो एजेंट बिल्कुल भी कर सकता था। ये सभी मिलकर एक स्वायत्त प्रणाली को संचालन योग्य बनाते हैं।
यदि आपकी समस्या अपस्ट्रीम है - आपने अभी तक यह तय नहीं किया है कि किसी एजेंट को कौन से कार्य सौंपे जाएं - how to automate your work with AI में फ़्रेमिंग पहले वाला प्रश्न है। और यदि आपका विशिष्ट विफलता मोड वर्कफ़्लो है जो हरे रंग में चलता है और कुछ नहीं करता है - एक मूक कक्षा 2 कार्रवाई जो पूर्ण होने का दिखावा करती है - निदान the automation failure nobody catches में है।
अक्सर पूछे जाने वाले प्रश्न
जस्ट-इन-टाइम एजेंट टोकन कितने समय तक जीवित रहना चाहिए?
विशिष्ट कार्रवाई के लिए पर्याप्त समय, और अब नहीं। एक प्रतिबद्ध-और-पुश चक्र के लिए जो मिनटों का है; एक बैच जॉब के लिए जो लूप में चलता है, यह लूप की लंबाई और एक छोटा बफर है। यदि आप मिनटों में संख्या नहीं बता सकते हैं, तो टोकन पोशाक पहने हुए पहुंच योग्य है।
क्या मुझे कक्षा 3 की प्रत्येक कार्रवाई पर एक मानवीय समीक्षा कदम रखना चाहिए, या इसे पूरी तरह से स्वचालित करना चाहिए?
डिफ़ॉल्ट रूप से भी नहीं. यदि समीक्षक वास्तव में बिना सजा के मना कर सकता है और वॉल्यूम इतना कम है कि वे हर आइटम को पढ़ सकें, तो समीक्षा जारी रखें। अन्यथा एक चुनें: निर्णय को पूरी तरह से स्वचालित करें, या समीक्षा वास्तविक होने तक वॉल्यूम कम करें। एक रबर-स्टैंप कदम, बिना कदम उठाए कदम से भी बदतर है क्योंकि यह जिम्मेदारी को खत्म कर देता है।
यदि मेरे एजेंट को एक विशिष्ट एज केस के लिए क्लास 4 की अनुमति की आवश्यकता हो तो क्या होगा?
फिर वह एज केस स्वचालित नहीं है. एजेंट कार्रवाई तैयार कर सकता है, अनुरोध लॉग कर सकता है और एक मानव को पेज कर सकता है - लेकिन कमिट, सेंड या डिलीट मानव द्वारा किया जाता है। कक्षा 4 के एक मामले को स्वचालित करने की सुविधा कभी भी उस प्लंबिंग के निर्माण के लायक नहीं है जो उन सभी को निष्पादित कर सके।
एक एजेंट टोकन के लिए कितनी कार्रवाइयां बहुत अधिक हैं?
वर्गों की गिनती करें, कार्यों की नहीं। कक्षा 1 और कक्षा 2 की क्रियाओं का मिश्रण रखने वाला एक टोकन ठीक है; एक एकल टोकन जो कक्षा 2 और कक्षा 3 तक फैला हुआ है, जहां ब्लास्ट त्रिज्या चुपचाप प्रवेश करता है, क्योंकि दोनों के लिए ऑडिट अपेक्षाएं अलग-अलग हैं। टोकन को वर्ग सीमाओं के साथ विभाजित करें, सुविधा सीमाओं के साथ नहीं।
यदि एजेंट केवल शेड्यूल पर चलता है तो क्या मुझे किल स्विच की आवश्यकता है?
हाँ। एक निर्धारित एजेंट जो पहले ही निकाल चुका है और मध्य-लूप में है, ठीक उसी समय जब आपको पहुंच रद्द करने की आवश्यकता होती है, और "अगली विंडो की प्रतीक्षा करें" कोई किल स्विच नहीं है। यदि टोकन को घुमाना या ट्रिगर को अक्षम करना एक भी दस्तावेजी आदेश नहीं है जिसे आपने कम से कम एक बार चलाया है, तो आपके पास एक भी नहीं है।
क्या एजेंट को अपना ऑडिट लॉग स्वयं लिखना चाहिए, या मुझे बाहरी सिस्टम पर भरोसा करना चाहिए?
बाहरी प्रणालियाँ. एजेंट अपने कार्यों का सबसे कम विश्वसनीय गवाह है - एक दुर्घटनाग्रस्त, मारा गया, या समझौता किया हुआ एजेंट अपना लॉग लिखना समाप्त नहीं करेगा। गिट इतिहास, एपीआई प्रतिक्रिया लॉग और संदेश कतारें एजेंट के मरने से बच जाती हैं; एजेंट का अपना लॉग एक सुविधा है, सबूत नहीं।
मेरे द्वारा पहले ही दी गई ऑडिट अनुमतियों का सबसे तेज़ तरीका क्या है?
एजेंट द्वारा वर्तमान में किए जा सकने वाले प्रत्येक कार्य को सादे अंग्रेजी में सूचीबद्ध करें, प्रत्येक को वर्गीकरण से एक वर्ग के साथ चिह्नित करें, और प्रत्येक वर्ग 3 या वर्ग 4 पंक्ति के लिए तीन कलाकृतियों की जाँच करें - बाहरी ऑडिट ट्रेल, लिखित पुनर्प्राप्ति प्रक्रिया, एक-कमांड किल स्विच। किसी कलाकृति की अनुपस्थिति वाली कोई भी पंक्ति तब तक निरस्त हो जाती है जब तक कि कलाकृति मौजूद न हो। इस काम का एक घंटा उस पहले बुरे दिन से भी सस्ता है जिसके लिए आपने तैयारी नहीं की है।
एक-वाक्य संस्करण
प्रत्येक एजेंट की कार्रवाई को दायरे के आधार पर वर्गीकृत करने से पहले विस्फोट त्रिज्या के आधार पर वर्गीकृत करें; कक्षा 4 की कार्रवाइयों को पूरी तरह से अस्वीकार कर दें, चाहे टोकन कितना भी कड़ा क्यों न हो; आपके द्वारा प्रदान की जाने वाली प्रत्येक कक्षा 2 और कक्षा 3 की अनुमति के लिए तीन कलाकृतियों की आवश्यकता होती है - बाहरी ऑडिट ट्रेल, लिखित पुनर्प्राप्ति प्रक्रिया, एक-कमांड किल स्विच; और कभी भी कक्षा 3 की कार्रवाई के लिए स्थायी पहुंच प्रदान न करें जब समय-समय पर काम हो। अनुमति मॉडल जो बुरे दिन से बच जाता है, वह अच्छे दिन के लिए नहीं, बल्कि बुरे दिन के लिए डिज़ाइन किया गया है।