Sessions and memory
सत्र छंटाई
सेशन प्रूनिंग हर LLM कॉल से पहले संदर्भ से पुराने टूल परिणामों को काटती है। यह सामान्य बातचीत के टेक्स्ट को फिर से लिखे बिना जमा हुए टूल आउटपुट (exec परिणाम, फ़ाइल रीड, खोज परिणाम) से संदर्भ की सूजन घटाती है।
यह क्यों मायने रखता है
लंबे सेशन में टूल आउटपुट जमा होता है, जो संदर्भ विंडो को फुला देता है। इससे लागत बढ़ती है और Compaction ज़रूरत से पहले मजबूर हो सकता है।
प्रूनिंग Anthropic प्रॉम्प्ट कैशिंग के लिए विशेष रूप से उपयोगी है। कैश TTL समाप्त होने के बाद, अगला अनुरोध पूरे प्रॉम्प्ट को फिर से कैश करता है। प्रूनिंग कैश-राइट आकार घटाती है, जिससे लागत सीधे कम होती है।
यह कैसे काम करता है
- कैश TTL समाप्त होने की प्रतीक्षा करें (डिफ़ॉल्ट 5 मिनट)।
- सामान्य प्रूनिंग के लिए पुराने टूल परिणाम खोजें (बातचीत का टेक्स्ट वैसा ही रहता है)।
- बहुत बड़े परिणामों को सॉफ्ट-ट्रिम करें -- शुरुआत और अंत रखें,
...डालें। - बाकी को हार्ड-क्लियर करें -- प्लेसहोल्डर से बदलें।
- TTL रीसेट करें ताकि आगे के अनुरोध ताज़ा कैश का पुनः उपयोग करें।
लेगेसी इमेज क्लीनअप
OpenClaw उन सेशनों के लिए एक अलग idempotent रीप्ले व्यू भी बनाता है जो इतिहास में कच्चे इमेज ब्लॉक या प्रॉम्प्ट-हाइड्रेशन मीडिया मार्कर बनाए रखते हैं।
- यह 3 सबसे हाल के पूर्ण हुए टर्न को बाइट-दर-बाइट सुरक्षित रखता है ताकि हालिया फॉलो-अप के लिए प्रॉम्प्ट कैश प्रिफ़िक्स स्थिर रहें।
- रीप्ले व्यू में,
userयाtoolResultइतिहास से पुराने पहले से प्रोसेस हो चुके इमेज ब्लॉक को[image data removed - already processed by model]से बदला जा सकता है। - पुराने टेक्स्टुअल मीडिया संदर्भ जैसे
[media attached: ...],[Image: source: ...], औरmedia://inbound/...को[media reference removed - already processed by model]से बदला जा सकता है। वर्तमान-टर्न अटैचमेंट मार्कर जस के तस रहते हैं ताकि विज़न मॉडल अभी भी ताज़ा इमेज हाइड्रेट कर सकें। - कच्चा सेशन ट्रांसक्रिप्ट फिर से नहीं लिखा जाता, इसलिए हिस्ट्री व्यूअर अभी भी मूल संदेश प्रविष्टियों और उनकी इमेजों को रेंडर कर सकते हैं।
- यह सामान्य कैश-TTL प्रूनिंग से अलग है। यह बाद के टर्न में दोहराए गए इमेज पेलोड या पुराने मीडिया refs को प्रॉम्प्ट कैश तोड़ने से रोकने के लिए मौजूद है।
स्मार्ट डिफ़ॉल्ट
OpenClaw Anthropic प्रोफ़ाइलों के लिए प्रूनिंग अपने आप सक्षम करता है:
| प्रोफ़ाइल प्रकार | प्रूनिंग सक्षम | Heartbeat |
|---|---|---|
| Anthropic OAuth/token auth (Claude CLI पुनः उपयोग सहित) | हाँ | 1 घंटा |
| API कुंजी | हाँ | 30 मिनट |
यदि आप स्पष्ट मान सेट करते हैं, तो OpenClaw उन्हें ओवरराइड नहीं करता।
सक्षम या अक्षम करें
गैर-Anthropic प्रदाताओं के लिए प्रूनिंग डिफ़ॉल्ट रूप से बंद है। सक्षम करने के लिए:
{ agents: { defaults: { contextPruning: { mode: "cache-ttl", ttl: "5m" }, }, },}अक्षम करने के लिए: mode: "off" सेट करें।
प्रूनिंग बनाम Compaction
| प्रूनिंग | Compaction | |
|---|---|---|
| क्या | टूल परिणाम काटती है | बातचीत का सार बनाता है |
| सहेजा? | नहीं (प्रति-अनुरोध) | हाँ (ट्रांसक्रिप्ट में) |
| दायरा | केवल टूल परिणाम | पूरी बातचीत |
वे एक-दूसरे के पूरक हैं -- प्रूनिंग Compaction चक्रों के बीच टूल आउटपुट को हल्का रखती है।
आगे पढ़ें
- Compaction -- सारांश-आधारित संदर्भ कमी
- Gateway कॉन्फ़िगरेशन -- सभी प्रूनिंग कॉन्फ़िग नॉब
(
contextPruning.*)