Skip to main content

Dreaming (تجريبي)

Dreaming هو تمرير دمج الذاكرة في الخلفية داخل memory-core. يُسمى “Dreaming” لأن النظام يعيد زيارة ما ظهر خلال اليوم ويقرر ما الذي يستحق الاحتفاظ به كسياق دائم. يُعد Dreaming تجريبيًا واختياري التفعيل ومعطّلًا افتراضيًا.

ما الذي يفعله Dreaming

  1. يتتبع أحداث الاستدعاء قصير الأمد من نتائج memory_search في memory/YYYY-MM-DD.md.
  2. يقيّم مرشحي هذا الاستدعاء باستخدام إشارات مرجحة.
  3. يرقّي فقط المرشحين المؤهلين إلى MEMORY.md.
وهذا يُبقي الذاكرة طويلة الأمد مركزة على السياق الدائم والمتكرر بدلًا من التفاصيل العابرة.

إشارات الترقية

يجمع Dreaming أربع إشارات:
  • التكرار: عدد مرات استدعاء المرشح نفسه.
  • الملاءمة: مدى قوة درجات الاستدعاء عند استرجاعه.
  • تنوع الاستعلامات: عدد نوايا الاستعلام المتميزة التي أظهرته.
  • الحداثة: الترجيح الزمني عبر الاستدعاءات الحديثة.
تتطلب الترقية اجتياز جميع عتبات الحدود المهيأة، وليس مجرد إشارة واحدة.

أوزان الإشارات

الإشارةالوزنالوصف
التكرار0.35عدد مرات استدعاء الإدخال نفسه
الملاءمة0.35متوسط درجات الاستدعاء عند استرجاعه
التنوع0.15عدد نوايا الاستعلام المتميزة التي أظهرته
الحداثة0.15التناقص الزمني (عمر نصفه 14 يومًا)

كيف يعمل

  1. تتبع الاستدعاء — يُسجل كل تطابق من memory_search في memory/.dreams/short-term-recall.json مع عدد مرات الاستدعاء، والدرجات، وhash الخاص بالاستعلام.
  2. التقييم المجدول — وفق الوتيرة المهيأة، تُرتب المرشحات باستخدام إشارات مرجحة. ويجب أن تجتاز جميع عتبات الحدود في الوقت نفسه.
  3. الترقية — تُلحَق الإدخالات المؤهلة بـ MEMORY.md مع طابع زمني للترقية.
  4. التنظيف — تُصفى الإدخالات التي تمت ترقيتها بالفعل من الدورات المستقبلية. ويمنع قفل الملف التشغيلات المتزامنة.

الأوضاع

يتحكم dreaming.mode في الوتيرة والحدود الافتراضية:
الوضعالوتيرةminScoreminRecallCountminUniqueQueries
offمعطّل
coreيوميًا الساعة 3 صباحًا0.7532
remكل 6 ساعات0.8543
deepكل 12 ساعة0.8033

نموذج الجدولة

عند تمكين Dreaming، يدير memory-core الجدول المتكرر تلقائيًا. ولا تحتاج إلى إنشاء مهمة cron يدويًا لهذه الميزة. ومع ذلك، لا يزال بإمكانك ضبط السلوك باستخدام تجاوزات صريحة مثل:
  • dreaming.frequency (تعبير cron)
  • dreaming.timezone
  • dreaming.limit
  • dreaming.minScore
  • dreaming.minRecallCount
  • dreaming.minUniqueQueries

التهيئة

{
  "plugins": {
    "entries": {
      "memory-core": {
        "config": {
          "dreaming": {
            "mode": "core"
          }
        }
      }
    }
  }
}

أوامر الدردشة

بدّل الأوضاع وتحقق من الحالة من الدردشة:
/dreaming core          # التبديل إلى وضع core (ليلي)
/dreaming rem           # التبديل إلى وضع rem (كل 6 ساعات)
/dreaming deep          # التبديل إلى وضع deep (كل 12 ساعة)
/dreaming off           # تعطيل Dreaming
/dreaming status        # عرض التهيئة الحالية والوتيرة
/dreaming help          # عرض دليل الأوضاع

أوامر CLI

عاين الترقيات وطبّقها من سطر الأوامر:
# معاينة مرشحي الترقية
openclaw memory promote

# تطبيق الترقيات على MEMORY.md
openclaw memory promote --apply

# تحديد عدد المعاينات
openclaw memory promote --limit 5

# تضمين الإدخالات التي تمت ترقيتها بالفعل
openclaw memory promote --include-promoted

# التحقق من حالة Dreaming
openclaw memory status --deep
راجع CLI الخاص بالذاكرة للاطلاع على المرجع الكامل للعلامات.

واجهة Dreams

عند تمكين Dreaming، يعرض الشريط الجانبي في Gateway علامة تبويب Dreams مع إحصاءات الذاكرة (عدد المدى القصير، وعدد المدى الطويل، وعدد ما تمت ترقيته) ووقت الدورة المجدولة التالية.

قراءة إضافية