Aborted but Not Forgotten: KV-Cache Retention Breaks Rollback Consistency in Language Agents
यह शोध पत्र प्रकट करता है कि लैंग्वेज एजेंटों में लॉजिकल अबॉर्ट्स (logical aborts) के दौरान की-वैल्यू (KV) कैश अवस्थाओं को बनाए रखने से एक महत्वपूर्ण "रोलबैक कंसिस्टेंसी" (rollback consistency) भेद्यता उत्पन्न होती है जहाँ मॉडल हटाए गए कंटेंट पर ध्यान केंद्रित करना जारी रखते हैं, जो कि एक संरचनात्मक दोष है जिसे कई मॉडल परिवारों में प्रदर्शित किया गया है और जिसे केवल ट्रांसक्रिप्ट क्लीनअप पर निर्भर रहने के बजाय ट्रांजैक्शन-लोकल कैश अवस्थाओं को पुनर्स्थापित करके कम किया जा सकता है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
आधुनिक भाषा एजेंट (language agents) ऐसे सॉफ्टवेयर प्रोग्राम हैं जिन्हें मानव सहायकों की तरह कार्य करने के लिए डिज़ाइन किया गया है, जो जटिल कार्यों को पूरा करने के लिए योजना बनाने, उपकरणों का उपयोग करने और निर्णय लेने में सक्षम हैं। कुशलतापूर्वक कार्य करने के लिए, ये एजेंट अक्सर अपनी बातचीत का एक चलता हुआ मेमोरी (running memory) बनाए रखते हैं, जो एक डिजिटल ट्रांसक्रिप्ट है जो उन्हें यह याद रखने की अनुमति देती है कि एक क्षण पहले क्या कहा गया था। इन प्रणालियों के डिज़ाइन में निहित एक महत्वपूर्ण धारणा यह है कि यदि कोई एजेंट गलती करता है या किसी खतरनाक रास्ते पर निकल जाता है, तो एक डेवलपर बस सिस्टम को उस क्रिया को "अनडू" (undo) करने के लिए कह सकता है। अपेक्षा यह है कि सिस्टम उस बुरे पथ को अपनी मेमोरी से मिटा देगा और ऐसे जारी रखेगा जैसे कि वह कभी हुआ ही न हो, और एक सुरक्षित, स्वच्छ स्थिति में वापस आ जाएगा। पूर्ण रोलबैक (perfect rollback) की यह अवधारणा सुरक्षा के लिए आवश्यक है; इसके बिना, एक एजेंट गलती से एक संवेदनशील ईमेल भेज सकता है या गलत व्यक्ति को पैसे ट्रांसफर कर सकता है, और सिस्टम के पास वास्तव में उस त्रुटि को वापस लेने का कोई तरीका नहीं होगा। हालाँकि, इन एजेंटों द्वारा सूचना को संसाधित करने की आंतरिक यांत्रिकी उस सरल टेक्स्ट से कहीं अधिक जटिल है जो उपयोगकर्ताओं को प्रदर्शित होता है।
शोधकर्ताओं ने पाया है कि इन प्रणालियों द्वारा "अनडू" कमांड को संभालने के तरीके में एक छिपा हुआ दोष है। जबकि दृश्य बातचीत लॉग (visible conversation log) को खारिज किए गए विचार से साफ किया जा सकता है, एजेंट को चलाने वाला अंतर्निहित इंजन समय बचाने के लिए उस त्याग दिए गए विचार का एक छिपा हुआ, तकनीकी रिकॉर्ड रखता है। यह रिकॉर्ड, जिसे की-वैल्यू कैश (key-value cache) कहा जाता है, एक अस्थायी भंडारण क्षेत्र है जो कंप्यूटर को दोहराव वाली गणनाओं को छोड़ने और तेजी से प्रतिक्रिया देने की अनुमति देता है। समस्या तब उत्पन्न होती है जब एक एजेंट को विचार की एक विशिष्ट शाखा को रद्द करने के लिए कहा जाता है: सॉफ्टवेयर उपयोगकर्ता के दृश्य से टेक्स्ट को हटा देता है, लेकिन इंजन उस विचार के अनुरूप डेटा को अपने छिपे हुए कैश से हटाने में विफल रहता है। फलस्वरूप, एजेंट का मस्तिष्क अभी भी त्यागे गए सूचना को देख रहा होता है, भले ही उपयोगकर्ता की स्क्रीन पर एक स्वच्छ स्लेट दिखाई दे रही हो। शोधकर्ता इसे "रोलबैक कंसिस्टेंसी" (rollback consistency) विफलता कहते हैं, जहाँ एप्लिकेशन की तार्किक स्थिति (logical state) मॉडल के ध्यान (attention) की भौतिक स्थिति से मेल नहीं खाती है।
इस अदृश्य अंतर के अस्तित्व को सिद्ध करने के लिए, शोधकर्ताओं ने एक कठोर परीक्षण डिजाइन किया जिसने टेक्स्ट के प्रभाव को छिपे हुए कैश के प्रभाव से अलग किया। उन्होंने दो समान परिदृश्य बनाए जहाँ एक एजेंट को निर्णय लेने के लिए कहा गया था, जैसे कि किसी विशिष्ट प्राप्तकर्ता को संदेश भेजना। दोनों परिदृश्यों में, एजेंट को पहले सूचना का एक टुकड़ा दिया गया था जो एक अलग, अनधिकृत प्राप्तकर्ता का सुझाव देता था। इस जानकारी को बातचीत के एक "संभावित" (tentative) भाग में रखा गया था, जिसे सिस्टम को अस्वीकार करने और हटाने का निर्देश दिया गया था। पहले परिदृश्य में, शोधकर्ताओं ने इंजन को अपने छिपे हुए कैश को बरकरार रखने की अनुमति दी, जिसका अर्थ है कि अस्वीकृत जानकारी बैकग्राउंड मेमोरी में बनी रही। दूसरे परिदृश्य में, उन्होंने इंजन को शून्य से अपनी मेमोरी को फिर से बनाने के लिए मजबूर किया, यह सुनिश्चित करते हुए कि अस्वीकृत जानकारी वास्तव में चली गई है। महत्वपूर्ण रूप से, दोनों मामलों में, एजेंट को निर्णय के समय दिया गया वास्तविक टेक्स्ट समान था और इसमें अनधिकृत प्राप्तकर्ता का कोई निशान नहीं था।
परिणाम व्यापक और विभिन्न AI मॉडलों में सुसंगत रूप से स्पष्ट थे। साठ-तीन विशिष्ट परीक्षण मामलों में से पच्चीस में, एजेंट ने केवल तभी एक खतरनाक गलती की जब छिपा हुआ कैश बरकरार था। भले ही अनधिकृत प्राप्तकर्ता का नाम उस टेक्स्ट में पूरी तरह से अनुपस्थित था जिसे एजेंट पढ़ रहा था, एजेंट ने फिर भी गलत व्यक्ति को संदेश भेजने का विकल्प चुना। ऐसा इसलिए हुआ क्योंकि छिपा हुआ कैश, जिसे एप्लिकेशन ने साफ कर दिया था, अभी भी निर्णय को प्रभावित कर रहा था। शोधकर्ताओं ने पुष्टि की कि यह स्वयं टेक्स्ट का कोई छल नहीं था, क्योंकि जब कैश को स्वच्छ, कमिटेड इतिहास से फिर से बनाया गया, तो वही गलती नहीं हुई। यह त्रुटि पूरी तरह से पुराने, रिटेन किए गए डेटा के कारण हुई थी जो बैकग्राउंड में बना हुआ था।
यह भेद्यता (vulnerability) किसी विशिष्ट प्रकार के मॉडल या दुर्लभ कोडिंग त्रुटियों तक सीमित नहीं थी। शोधकर्ताओं ने सात अलग-अलग ओपन-सोर्स AI मॉडल परिवारों का परीक्षण किया, जो 3.8-बिलियन-पैरामीटर वाले छोटे मॉडलों से लेकर विशाल 36-बिलियन-पैरामीटर वाले मॉडलों तक विस्तृत थे। उन्होंने पाया कि हालांकि कुछ मॉडल दूसरों की तुलना में इस त्रुटि के प्रति अधिक प्रतिरोधी थे, लेकिन मेमोरी सिस्टम में अंतर्निहित दोष हर एक में मौजूद था। यहाँ तक कि जब एजेंट ने बातचीत को पूरी तरह से पीछे ले जाने के लिए डिज़ाइन किए गए एक परिष्कृत "टाइम-ट्रैवल" फीचर का उपयोग किया, तब भी छिपा हुआ कैश पुराना (stale) बना रहा, और एजेंट अभी भी त्यागे गए डेटा पर कार्य करता रहा। यह समस्या तब भी बनी रही जब खारिज की गई सामग्री केवल एक व्यक्ति के बारे में एक तटस्थ कथन थी, बिना किसी आक्रामक कमांड के, जिससे यह सिद्ध हुआ कि छिपे हुए कैश में डेटा की उपस्थिति ही परिणाम को प्रभावित करने के लिए पर्याप्त थी।
अध्ययन ने उन कई सामान्य स्पष्टीकरणों को भी खारिज कर दिया कि एजेंट क्यों विफल हुआ। यह टेक्स्ट के बहुत लंबे होने या मेमोरी में शब्दों की स्थिति का मामला नहीं था, क्योंकि शोधकर्ताओं ने अपने परीक्षणों में इनपुट की लंबाई और स्थिति को सावधानीपूर्वक समान रखा था। यह केवल सुरक्षा निर्देशों को अनदेखा करने का मामला भी नहीं था, क्योंकि त्रुटि तब भी हुई जब एजेंट को स्पष्ट रूप से खारिज की गई सामग्री को अनदेखा करने के लिए कहा गया था। समस्या संरचनात्मक थी: सिस्टम की "डिलीट" की परिभाषा इंजन की आंतरिक मेमोरी तक विस्तारित नहीं थी। शोधकर्ताओं ने प्रदर्शित किया कि इस समस्या को वास्तव में ठीक करने का एकमात्र तरीका यह था कि हर बार रोलबैक होने पर इंजन को स्वीकृत इतिहास से अपनी मेमोरी को फिर से बनाने के लिए मजबूर किया जाए, न कि मौजूदा मेमोरी को पैच करने का प्रयास किया जाए। यह समाधान, मौजूदा कैश को रखने की तुलना में कम्प्यूटेशनल रूप से अधिक महंगा है, लेकिन यह सुनिश्चित करने के लिए आवश्यक है कि एजेंट के कार्य डेवलपर के इरादे के अनुरूप हों।
इस निष्कर्ष के निहितार्थ केवल एक एकल बग से परे हैं; यह इन प्रणालियों पर हमारे विश्वास के तरीके में एक मौलिक अंतर को प्रकट करता है। डेवलपर्स अक्सर यह मान लेते हैं कि यदि वे बातचीत लॉग से एक संदेश हटा देते हैं, तो एजेंट उसे भूल जाता है। यह शोध पत्र बताता है कि वह धारणा खतरनाक है। एजेंट एक ऐसे तरीके से "याद रख" सकता है जो उपयोगकर्ता और एप्लिकेशन लॉजिक के लिए अदृश्य है, जिससे ऐसे निर्णय होते हैं जो कहीं से भी उत्पन्न होते प्रतीत होते हैं। शोधकर्ता इस बात पर जोर देते हैं कि यह AI की बुद्धिमत्ता या संरेखण (alignment) की विफलता नहीं है, बल्कि उपयोगकर्ता जो देखता है और मशीन जो संसाधित करती है, उसके बीच सिस्टम की निरंतरता की विफलता है। जब तक सॉफ्टवेयर इंजीनियर यह सुनिश्चित नहीं करते कि एक तार्किक रोलबैक तकनीकी मेमोरी को भी साफ करे, तब तक एजेंट इस मौन प्रभाव के प्रति असुरक्षित रहेंगे, जहाँ अतीत जिसे उन्हें भूलने के लिए कहा गया था, उनके भविष्य के कार्यों को आकार देना जारी रखता है।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।