Sessions and memory
Dreaming
Dreaming, memory-core में पृष्ठभूमि मेमोरी समेकन प्रणाली है। यह प्रक्रिया को व्याख्या योग्य और समीक्षा योग्य बनाए रखते हुए मजबूत अल्पकालिक संकेतों को टिकाऊ मेमोरी में स्थानांतरित करता है।
Dreaming क्या लिखता है
memory/.dreams/में मशीन स्थिति (रिकॉल स्टोर, चरण संकेत, अंतर्ग्रहण चेकपॉइंट, लॉक)।DREAMS.md(या किसी मौजूदाdreams.md) में मानव-पठनीय आउटपुट औरmemory/dreaming/<phase>/YYYY-MM-DD.mdके अंतर्गत वैकल्पिक चरण रिपोर्ट फ़ाइलें।
दीर्घकालिक संवर्धन अब भी केवल MEMORY.md में लिखता है।
चरण मॉडल
Dreaming प्रत्येक स्वीप में क्रम से तीन सहयोगी चरण चलाता है: लाइट -> REM -> डीप। ये आंतरिक कार्यान्वयन चरण हैं, अलग-अलग उपयोगकर्ता-कॉन्फ़िगर किए गए मोड नहीं।
| चरण | उद्देश्य | टिकाऊ लेखन |
|---|---|---|
| लाइट | हाल की अल्पकालिक सामग्री को क्रमबद्ध और तैयार करना | नहीं |
| REM | विषयों और बार-बार आने वाले विचारों पर चिंतन करना | नहीं |
| डीप | टिकाऊ उम्मीदवारों को स्कोर और संवर्धित करना | हाँ (MEMORY.md) |
लाइट चरण
- उपलब्ध होने पर हाल की अल्पकालिक रिकॉल स्थिति, दैनिक मेमोरी फ़ाइलें और संशोधित सत्र ट्रांसक्रिप्ट पढ़ता है।
- संकेतों की डुप्लिकेट प्रविष्टियाँ हटाता है और उम्मीदवार पंक्तियाँ तैयार करता है।
- स्टोरेज में इनलाइन आउटपुट शामिल होने पर एक प्रबंधित
## Light Sleepब्लॉक लिखता है। - बाद की डीप रैंकिंग के लिए सुदृढीकरण संकेत दर्ज करता है।
MEMORY.mdमें कभी नहीं लिखता।
REM चरण
- हाल के अल्पकालिक ट्रेस से विषय और चिंतन सारांश बनाता है।
- स्टोरेज में इनलाइन आउटपुट शामिल होने पर एक प्रबंधित
## REM Sleepब्लॉक लिखता है। - डीप रैंकिंग द्वारा उपयोग किए जाने वाले REM सुदृढीकरण संकेत दर्ज करता है।
MEMORY.mdमें कभी नहीं लिखता।
डीप चरण
- भारित स्कोरिंग और थ्रेशोल्ड गेट के साथ उम्मीदवारों को रैंक करता है (
minScore,minRecallCount,minUniqueQueriesसभी को उत्तीर्ण होना आवश्यक है)। - लिखने से पहले लाइव दैनिक फ़ाइलों से स्निपेट पुनः प्राप्त करता है, ताकि पुराने/हटाए गए स्निपेट छोड़ दिए जाएँ।
- संवर्धित प्रविष्टियाँ
MEMORY.mdमें जोड़ता है। DREAMS.mdऔर वैकल्पिक रूप सेmemory/dreaming/deep/YYYY-MM-DD.mdमें एक## Deep Sleepसारांश लिखता है।
सत्र ट्रांसक्रिप्ट अंतर्ग्रहण
Dreaming संशोधित सत्र ट्रांसक्रिप्ट को Dreaming कॉर्पस में अंतर्ग्रहित कर सकता है। उपलब्ध होने पर ट्रांसक्रिप्ट, दैनिक मेमोरी संकेतों और रिकॉल ट्रेस के साथ लाइट चरण को इनपुट देते हैं। व्यक्तिगत और संवेदनशील सामग्री को अंतर्ग्रहण से पहले संशोधित किया जाता है।
ड्रीम डायरी
Dreaming, DREAMS.md में एक वर्णनात्मक ड्रीम डायरी रखता है। प्रत्येक चरण में पर्याप्त सामग्री होने के बाद, memory-core सर्वोत्तम-प्रयास वाला पृष्ठभूमि सबएजेंट टर्न चलाता है और डिफ़ॉल्ट रनटाइम मॉडल का उपयोग करके एक छोटी डायरी प्रविष्टि जोड़ता है, जब तक कि dreaming.model कॉन्फ़िगर न हो। यदि कॉन्फ़िगर किया गया मॉडल अनुपलब्ध है, तो डायरी रन सत्र के डिफ़ॉल्ट मॉडल के साथ एक बार पुनः प्रयास करता है; विश्वास या अनुमत-सूची विफलताओं पर पुनः प्रयास नहीं किया जाता और किसी सामान्य डायरी प्रविष्टि पर चुपचाप फ़ॉलबैक होने के बजाय वे लॉग में दिखाई देती रहती हैं।
समीक्षा और पुनर्प्राप्ति कार्य के लिए एक आधारयुक्त ऐतिहासिक बैकफ़िल लेन भी है:
बैकफ़िल कमांड
memory rem-harness --path ... --groundedऐतिहासिकYYYY-MM-DD.mdनोट्स से आधारयुक्त डायरी आउटपुट का पूर्वावलोकन करता है।memory rem-backfill --path ...,DREAMS.mdमें पूर्ववत की जा सकने वाली आधारयुक्त डायरी प्रविष्टियाँ लिखता है।memory rem-backfill --path ... --stage-short-termआधारयुक्त टिकाऊ उम्मीदवारों को उसी अल्पकालिक साक्ष्य स्टोर में तैयार करता है जिसका उपयोग सामान्य डीप चरण करता है।memory rem-backfill --rollbackऔर--rollback-short-termसामान्य डायरी प्रविष्टियों या लाइव अल्पकालिक रिकॉल को प्रभावित किए बिना उन तैयार किए गए बैकफ़िल आर्टिफ़ैक्ट को हटा देते हैं।
Control UI एजेंट के Memory टैब (Agents पृष्ठ) पर वही डायरी बैकफ़िल/रीसेट प्रवाह उपलब्ध कराता है, ताकि यह तय करने से पहले कि आधारयुक्त उम्मीदवार संवर्धन के योग्य हैं या नहीं, आप ड्रीम दृश्य में परिणामों का निरीक्षण कर सकें। एक अलग आधारयुक्त Scene लेन दिखाती है कि तैयार की गई कौन-सी अल्पकालिक प्रविष्टियाँ ऐतिहासिक रीप्ले से आईं, कौन-से संवर्धित आइटम आधारयुक्त प्रविष्टियों द्वारा संचालित थे, और यह लाइव अल्पकालिक स्थिति को प्रभावित किए बिना केवल आधारयुक्त तैयार प्रविष्टियों को हटाने देती है।
डीप रैंकिंग संकेत
डीप रैंकिंग छह भारित आधार संकेतों और चरण सुदृढीकरण का उपयोग करती है:
| संकेत | भार | विवरण |
|---|---|---|
| प्रासंगिकता | 0.30 | प्रविष्टि की औसत पुनर्प्राप्ति गुणवत्ता |
| आवृत्ति | 0.24 | प्रविष्टि द्वारा संचित अल्पकालिक संकेतों की संख्या |
| क्वेरी विविधता | 0.15 | वे अलग-अलग क्वेरी/दिन संदर्भ जिनमें यह सामने आई |
| हालियापन | 0.15 | समय-क्षयित ताज़गी स्कोर |
| समेकन | 0.10 | बहु-दिवसीय पुनरावृत्ति शक्ति |
| वैचारिक समृद्धि | 0.06 | स्निपेट/पथ से अवधारणा-टैग घनत्व |
लाइट और REM चरण की हिट, memory/.dreams/phase-signals.json से एक छोटा हालियापन-क्षयित बूस्ट जोड़ती हैं।
शैडो-ट्रायल परिणाम किसी टिकाऊ लेखन से पहले समीक्षा संकेत के रूप में आधार स्कोर के ऊपर जोड़े जा सकते हैं: एक सहायक ट्रायल उम्मीदवार को छोटा सीमित बूस्ट देता है, एक तटस्थ ट्रायल उसे स्थगित रखता है, और एक हानिकारक ट्रायल उस स्कोरिंग पास के लिए उसे अस्वीकृत चिह्नित करता है। यह संकेत केवल रिपोर्ट के लिए है - यह उम्मीदवार क्रम या समीक्षा मेटाडेटा बदल सकता है, लेकिन स्वयं कभी MEMORY.md में नहीं लिखता या किसी उम्मीदवार को संवर्धित नहीं करता।
QA शैडो ट्रायल रिपोर्ट कवरेज
QA Lab में यह जानने के लिए केवल-रिपोर्ट परिदृश्य शामिल है कि भविष्य का Dreaming शैडो ट्रायल किसी उम्मीदवार मेमोरी की संवर्धन से पहले कैसे समीक्षा कर सकता है: एक एजेंट आधारभूत उत्तर की तुलना उस उत्तर से करता है जो उम्मीदवार मेमोरी का उपयोग कर सकता है, फिर निर्णय, कारण और जोखिम फ़्लैग के साथ एक स्थानीय रिपोर्ट लिखता है। यह कवरेज QA तक सीमित है - यह सत्यापित करता है कि रिपोर्ट आर्टिफ़ैक्ट MEMORY.md से अलग रहे और एजेंट कभी यह दावा न करे कि उम्मीदवार को संवर्धित किया गया था। यह उत्पादन शैडो-ट्रायल व्यवहार नहीं जोड़ता या डीप-चरण संवर्धन इंजन को नहीं बदलता।
memory-core शैडो-ट्रायल रनर उन कोड पथों के लिए वही केवल-रिपोर्ट अनुबंध बनाए रखता है जिन्हें स्थिर आर्टिफ़ैक्ट की आवश्यकता होती है। यह उम्मीदवार, ट्रायल प्रॉम्प्ट, आधारभूत परिणाम, उम्मीदवार परिणाम, निर्णय, कारण, जोखिम फ़्लैग और साक्ष्य संदर्भ स्वीकार करता है, फिर promotion action: report-only के साथ एक रिपोर्ट लिखता है। सहायक निर्णय promote अनुशंसा से मैप होते हैं, तटस्थ निर्णय defer से मैप होते हैं, और हानिकारक निर्णय reject से मैप होते हैं - इनमें से कोई भी MEMORY.md में नहीं लिखता या डीप-चरण संवर्धन लागू नहीं करता।
शेड्यूलिंग
सक्षम होने पर, memory-core पूर्ण Dreaming स्वीप के लिए एक Cron जॉब स्वतः प्रबंधित करता है, जिसे प्राथमिक रनटाइम कार्यक्षेत्र और सभी कॉन्फ़िगर किए गए एजेंट कार्यक्षेत्रों में डुप्लिकेट-मुक्त किया जाता है, ताकि सबएजेंट कार्यक्षेत्र फ़ैन-आउट मुख्य एजेंट के DREAMS.md और मेमोरी स्थिति को बाहर न रखे।
| सेटिंग | डिफ़ॉल्ट |
|---|---|
dreaming.frequency |
0 3 * * * |
dreaming.model |
डिफ़ॉल्ट मॉडल |
त्वरित शुरुआत
Dreaming सक्षम करें
{ "plugins": { "entries": { "memory-core": { "config": { "dreaming": { "enabled": true } } } } }}कस्टम स्वीप आवृत्ति
{ "plugins": { "entries": { "memory-core": { "config": { "dreaming": { "enabled": true, "timezone": "America/Los_Angeles", "frequency": "0 */6 * * *" } } } } }}स्लैश कमांड
/dreaming status/dreaming on/dreaming off/dreaming help/dreaming on और /dreaming off को चैनल कॉलर के लिए स्वामी स्थिति या Gateway क्लाइंट के लिए operator.admin की आवश्यकता होती है। /dreaming status और /dreaming help केवल-पठन हैं।
CLI कार्यप्रवाह
संवर्धन पूर्वावलोकन / लागू करना
openclaw memory promoteopenclaw memory promote --applyopenclaw memory promote --limit 5openclaw memory status --deepमैन्युअल memory promote डिफ़ॉल्ट रूप से डीप-चरण थ्रेशोल्ड का उपयोग करता है, जब तक कि उन्हें CLI फ़्लैग से ओवरराइड न किया जाए।
संवर्धन की व्याख्या
बताएँ कि किसी विशिष्ट उम्मीदवार को क्यों संवर्धित किया जाएगा या नहीं किया जाएगा:
openclaw memory promote-explain "router vlan"openclaw memory promote-explain "router vlan" --jsonREM हार्नेस पूर्वावलोकन
कुछ भी लिखे बिना REM चिंतन, उम्मीदवार सत्य और डीप संवर्धन आउटपुट का पूर्वावलोकन करें:
openclaw memory rem-harnessopenclaw memory rem-harness --jsonप्रमुख डिफ़ॉल्ट
सभी सेटिंग plugins.entries.memory-core.config.dreaming के अंतर्गत हैं।
enabledbooleandefault: falseDreaming स्वीप सक्षम या अक्षम करें।
frequencystringdefault: 0 3 * * *पूर्ण Dreaming स्वीप के लिए Cron आवृत्ति।
modelstringवैकल्पिक ड्रीम डायरी सबएजेंट मॉडल ओवरराइड। सबएजेंट allowedModels अनुमत-सूची भी सेट करते समय प्रामाणिक provider/model मान का उपयोग करें।
phases.deep.maxPromotedSnippetTokensnumberdefault: 160MEMORY.md में संवर्धित प्रत्येक अल्पकालिक रिकॉल स्निपेट से रखी गई अधिकतम अनुमानित टोकन संख्या। रैंकिंग उत्पत्ति दिखाई देती रहती है।
Dreams UI
सक्षम होने पर, Gateway का Dreams टैब यह दिखाता है:
- वर्तमान Dreaming सक्षम स्थिति
- चरण-स्तरीय स्थिति और प्रबंधित-स्वीप की उपस्थिति
- अल्पकालिक, आधारयुक्त, संकेत और आज-संवर्धित गणनाएँ
- अगले शेड्यूल किए गए रन का समय
- तैयार की गई ऐतिहासिक रीप्ले प्रविष्टियों के लिए एक अलग आधारयुक्त Scene लेन
doctor.memory.dreamDiaryद्वारा समर्थित विस्तारणीय ड्रीम डायरी रीडर