जे घडले नाही, ते तुमचे लॉग रेकॉर्ड करू शकत नाहीत

बहुतेक AI सुरक्षा साधने (safety tools) आर्टिफॅक्ट्स (artifacts) शोधतात. ती लॉग एंट्री, स्वाक्षरी (signature) किंवा टूल रिझल्ट शोधतात. जर टूल रिझल्ट बनावट असेल, तर सिस्टम ती नोंद करते. जर JSON ब्लॉक खराब असेल, तर सिस्टम ती पकडते.

हे सोपे दोष (failures) आहेत कारण ते एक पुरावा (trace) सोडतात.

खरा धोका 'वगळण्यात' (omission) आहे. 'वगळणे' म्हणजे जेव्हा काहीच घडत नाही.

एका 'अॅपेंड-ओन्ली' (append-only) लॉगमध्ये, अनुपस्थिती तीन प्रकारे सारखीच दिसते:

  • ते घडले नाही.
  • ते अजून घडलेले नाही.
  • ते घडले पण त्याची कधीही नोंद झाली नाही.

लॉगमध्ये काहीही दिसत नाही. ऑडिट क्वेरी (audit query) काहीही परत करत नाही. शांतता म्हणजे संमती ठरते.

तुम्ही तीन डिझाइन नियमांद्वारे हे सुधारू शकता:

  1. शांततेची मुदत संपवा (Make silence expire) जर एखाद्या एजंटने (agent) एखादी कृती केली, तर रिव्ह्यूअरने (reviewer) त्यावर स्वाक्षरी करणे आवश्यक आहे. गहाळ झालेली स्वाक्षरी ही तुमच्या सुरक्षेतील एक त्रुटी आहे. "pending" स्थिती कायमस्वरूपी "pending" राहू देऊ नका. एक डेडलाईन (deadline) निश्चित करा. जर डेडलाईन संपली, तर सिस्टमने REVIEW_EXPIRED सारखी 'टर्मिनल स्टेट' (terminal state) रेकॉर्ड केली पाहिजे. यामुळे रिकामी जागा एका शोधण्यायोग्य त्रुटीमध्ये (searchable error) रूपांतरित होते.

  2. दाव्यांसाठी संदर्भ (citations) अनिवार्य करा एजंट्स अनेकदा जगाचे वर्णन करण्यासाठी गद्य (prose) वापरतात. एखादा एजंट म्हणू शकतो, "फाईल रिकामी होती." जर त्या पाठीशी कोणताही टूल रिझल्ट नसेल, तर तो दावा धोकादायक आहे.

जर एखादा दावा भविष्यातील कृतीवर परिणाम करत असेल, तर त्यात एक 'ऑब्झर्व्हेशन आयडी' (observation ID) असणे आवश्यक आहे. एजंट सत्य बोलत आहे की नाही याचा अंदाज लावण्याचा प्रयत्न करू नका. फक्त तो दावा खऱ्या डेटा सोर्सकडे (data source) निर्देश करतो का ते तपासा. संदर्भाशिवाय केलेला दावा हा एक 'मॅलफॉर्मड मेसेज' (malformed message) आहे.

  1. कृतींसाठी 'टू-इव्हेंट स्प्लिट' (two-event split) वापरा जेव्हा एखादा एजंट ईमेल पाठवण्यासारखे एखादे काम सुरू करतो, तेव्हा निकाल नोंदवण्यापूर्वीच तो बंद पडू शकतो. यामुळे एक अंतर (gap) निर्माण होते. ईमेल पाठवला गेला का? तुम्ही पुन्हा प्रयत्न केला पाहिजे का?

या प्रवाहाचा (flow) वापर करा:

  • एका युनिक कीसह (unique key) एक INTENT इव्हेंट जोडा.
  • कृती पूर्ण करा.
  • एक OUTCOME इव्हेंट जोडा.

आता तुम्ही मधली स्थिती (middle state) पाहू शकता. जर तुमच्याकडे INTENT असेल पण OUTCOME नसेल, तर सिस्टम नेमकी कुठे फेल झाली हे तुम्हाला समजेल. अंदाज लावण्याऐवजी तुम्ही स्थितीचे समन्वय (reconcile) साधू शकता.

नियम साधा आहे: तुमची सिस्टम ज्या प्रत्येक यशाची नोंद करते, त्या नोंदी गहाळ असल्यास काय होईल हे विचारा. जर उत्तर "काहीच नाही" असेल, तर तुमच्याकडे एक 'ब्लाईंड स्पॉट' (blind spot) आहे.

तुमच्या 'नेगेटिव्ह स्टेट्स'ना (negative states) प्रथम श्रेणीच्या नोंदींप्रमाणे (first-class records) डिझाइन करा. त्यांना नावे द्या. त्यांना मालक (owners) द्या. त्यांना तुमच्या सुरक्षा नियमांमध्ये (gates) अपयशी ठरवा.

Source: https://dev.to/anp2network/your-log-cant-record-what-didnt-happen-2ga7

Optional learning community: https://t.me/GyaanSetuAi