AI ला मोठ्या Context Windows पेक्षा State Management ची अधिक गरज का आहे
नवीन मॉडेल्स मोठ्या context windows सह लाँच होत आहेत. याचा तर्क सोपा आहे. एकाच विनंतीमध्ये (request) अधिक डेटा असल्यास प्रत्येक समस्या सुटते.
तुम्ही अधिक दस्तऐवज (documents) जोडता. तुम्ही अधिक इतिहास (history) जोडता. तुम्ही अधिक वर्कफ्लो डेटा जोडता.
परंतु AI प्रोडक्शनमध्ये वापरल्यानंतर, आम्हाला एक धडा मिळाला. Context windows मदत करतात, पण State management अधिक महत्त्वाचे आहे.
जेव्हा AI चुकीचे निकाल देते, तेव्हा टीम्स अनेकदा प्रॉम्प्टमध्ये (prompt) अधिक माहिती जोडतात. त्यांना वाटते की मॉडेलला अधिक इतिहास किंवा अधिक बिझनेस कॉन्टेक्स्टची गरज आहे. प्रॉम्प्ट वाढतच जातो.
अधिक माहिती म्हणजे चांगले निर्णय नव्हे. उलट, यामुळे अनेकदा उलट परिणाम होतात. मोठे context windows खराब आर्किटेक्चर लपवतात. संबंधित डेटा निवडण्याऐवजी, सिस्टम सर्व काही समाविष्ट करते.
यामुळे अनेक समस्या निर्माण होतात:
- टोकन खर्च वाढतो (Token costs go up)
- लॅटन्सी (Latency) वाढते
- रिझनिंग (Reasoning) विसंगत होते
- रिट्रिव्हल नॉईज (Retrieval noise) वाढतो
- डीबगिंग (Debugging) कठीण होते
मॉडेलकडे अधिक माहिती असते पण स्पष्टता कमी असते.
तुम्हाला context आणि state मधील फरक समजून घेणे आवश्यक आहे. Context म्हणजे एका सिंगल रिक्वेस्ट दरम्यान उपलब्ध असलेली माहिती. State म्हणजे अशी माहिती जी सिस्टमला काळाच्या ओघात माहित असते.
State ची उदाहरणे:
- कस्टमर प्रोफाइल्स (Customer profiles)
- संभाषणाचे सारांश (Conversation summaries)
- वर्कफ्लो प्रोग्रेस (Workflow progress)
- बिझनेस रूल्स (Business rules)
हे सर्व प्रत्येक प्रॉम्प्टमध्ये असण्याची गरज नाही. डिस्ट्रिब्युटेड सिस्टम्स (Distributed systems) सर्व डेटा सर्वत्र पाठवून गुंतागुंत सोडवत नाहीत. ते state व्यवस्थापित करण्यासाठी डेटाबेस, कॅशे आणि क्यूजचा (queues) वापर करतात.
AI सिस्टम्स अनेकदा या शिस्तीकडे दुर्लक्ष करतात. ते context window ला तात्पुरत्या डेटाबेसप्रमाणे मानतात. हे आर्किटेक्चरल आळस आहे.
"आपण सर्व काही बसवू शकतो का?" असे विचारणे थांबवा. "कोणती माहिती आवश्यक आहे?" असे विचारण्यास सुरुवात करा.
आम्ही context size वाढवण्याऐवजी state management सुधारून चांगले निकाल पाहिले. आम्ही हे खालीलप्रमाणे केले:
- ऑपरेशनल स्टेटला (operational state) रिझनिंग स्टेटपासून (reasoning state) वेगळे केले
- प्रोग्रेस प्रॉम्प्टच्या बाहेर स्टोअर केला
- मेमरीसाठी एक्सपायरी रूल्स (expiration rules) सेट केले
- डुप्लिकेट कॉन्टेक्स्ट कमी केला
यामुळे खर्च कमी झाला आणि अंमलबजावणीचा वेग वाढला. यासाठी मोठ्या मॉडेल्सची गरज नव्हती, तर चांगल्या डिझाइनची गरज होती.
उद्दिष्ट मॉडेलला सर्व गोष्टींमध्ये प्रवेश देणे हे नाही. उद्दिष्ट मॉडेलला योग्य वेळी योग्य माहिती देणे हे आहे.
Source: https://dev.to/karan2598/why-ai-systems-need-state-management-more-than-bigger-context-windows-2a4m
Optional learning community: https://t.me/GyaanSetuAi