الذاكرة المستمرة لـ Discourse AI

أنا أقدر التطوير الذي تم على Discourse AI والذي كان ممتازًا. الميزات تنضج بسرعة، والاتجاه يبدو واعدًا للغاية.

سؤال واحد: هل توجد حاليًا طريقة، أو أي خطط خارطة طريق، للذكاء الاصطناعي للاحتفاظ بالسجل بين المحادثات؟ في الوقت الحالي، تبدأ كل محادثة من جديد، وأتساءل عما إذا كان يتم النظر في الذاكرة المستمرة أو الاستمرارية بين الجلسات.

إذا لم يكن هذا مدرجًا بالفعل في خارطة الطريق، فأود تقديمه كطلب ميزة. إن وجود خيار للذكاء الاصطناعي لتذكر التفاعلات السابقة سيجعل المناقشات أكثر طبيعية ويزيد بشكل كبير من حالات الاستخدام.

إعجابَين (2)

لقد قمت بتطبيق مخزن أساسي للمفاتيح/القيم باستخدام شخصية وأدوات مخصصة على مدونتي.

ومع ذلك، من الصعب جدًا القيام بذلك بشكل صحيح، حيث يتعين عليك الاستمرار في دفع الشخصيات لتذكر الأشياء، وهو أمر مزعج.

البديل هو ببساطة استخدام RAG على تاريخك بالكامل مع الروبوت (يشبه إلى حد ما كيف تفعل OpenAI ذلك)


أعتقد أنني سأبدأ، ما هي رؤيتك حول كيفية عمل هذا؟ كيف سيحسن الأمور؟

إعجاب واحد (1)

أنا أفكر حقًا في تجربة استمرارية المستخدم النهائي، وأرى أن RAG رائع للمسؤولين لتقديم معلومات للشخصيات. مع ChatGPT/Gemini/وغيرها، يحمل الروبوت ملفًا شخصيًا صغيرًا للأمام - النبرة والعمق والأهداف المستمرة - لذلك لا تحتاج إلى إعادة الشرح في كل جلسة. هذه هي التجربة التي ستكون رائعة في Discourse AI: يتذكر المساعد بعض الأشياء الدائمة عن كل مستخدم ويستخدمها عند الاقتضاء، بحيث تستأنف المحادثات من حيث توقفت.

ليس لدي أي فهم لما إذا كان سجل RAG للمستخدم النهائي للمحادثات ممكنًا بأي شكل من الأشكال.

القيمة هي أن أي شعور موثوق به “إنه يعرفني” دون الحاجة إلى المطالبة المستمرة يعزز التجربة بشكل كبير لحالات الاستخدام حيث يعيد المستخدمون زيارة نفس نوع المحادثات.

ومع ذلك، لا أعتقد أن أيًا من هذا يعد مهمة بسيطة. لا يمكنني أن أقول ما يكفي عن مدى جودة تطوير كل هذا بالفعل.

لقد تمكنت من إنشاء إضافة وأداة مخصصة تتيح ذاكرة مستمرة لشخصيات الذكاء الاصطناعي في ديسكورس (Discourse AI personas). إنها تعمل بشكل جيد من خلال الاختبارات المحدودة التي أجريتها، وأردت مشاركتها إذا وجدها شخص ما مفيدة.

ما تفعله

يسمح هذا الحل لشخصيات الذكاء الاصطناعي بتذكر المعلومات الخاصة بالمستخدم عبر المحادثات.

مثال: يمكن للمستخدم أن يقول «تذكر أنني أفضل الوضع الداكن» وسيقوم الذكاء الاصطناعي بتخزين هذا التفضيل واستدعائه في التفاعلات المستقبلية.

المكونات

يتكون هذا النظام من ثلاثة أجزاء:

  • الإضافة (discourse-ai-persistent-memory)
    توفر تخزينًا في الخلفية وواجهة مستخدم لتفضيلات المستخدم حيث يمكن للمستخدمين عرض ذكرياتهم أو إضافتها أو حذفها.
  • أداة ذكاء اصطناعي مخصصة
    أداة JavaScript تمنح الشخصيات إمكانية الوصول إلى وظائف الذاكرة:
    memory.set، memory.get، memory.list، memory.delete
  • مطالبة نظام الشخصية (Persona System Prompt)
    تعليمات تخبر الذكاء الاصطناعي متى وكيف يستخدم أداة الذاكرة.

كيف يعمل

  • يتم تخزين الذكريات كـ أزواج من المفاتيح/القيم في PluginStore، ويتم تحديد نطاقها لكل مستخدم.
  • تقوم الإضافة بحقن وظائف الذاكرة في ToolRunner عبر إلحاق وحدة (module prepend).
  • يمكن للمستخدمين إدارة ذكرياتهم على:
    /u/{username}/preferences/interface
  • يقوم الذكاء الاصطناعي بتحميل جميع الذكريات في السياق (وليس الاسترجاع الانتقائي).

مستودع GitHub

https://github.com/BrianCraword/discourse-ai-persistent-memory

طلب التقييم

أقدر الحصول على تعليقات حول:

  • النهج المتبع في استخدام الإلحاق (prepend) للحقن في ToolRunner
  • ما إذا كان تحميل جميع الذكريات مقابل الاسترجاع الانتقائي منطقيًا
  • أي اعتبارات أمنية ربما فاتني ذكرها
  • تحسينات جودة الكود العامة

إخلاء المسؤولية

أنا لست مبرمجًا - تم بناء هذا بمساعدة الذكاء الاصطناعي. أنا غير قادر على تقديم الدعم، ولكن نرحب بأي شخص في استخدامه أو نسخه أو تحسينه. استخدمه على مسؤوليتك الخاصة.

المطالبة (PROMPT):

## نظام الذاكرة
لديك نظام ذاكرة مستمر عبر أداة user_memory. استخدمها لتذكر الحقائق المهمة حول كل مستخدم.

### متى يتم حفظ الذكريات (SAVE):

* يذكر المستخدم التفضيلات (أسلوب الاتصال، مواضيع الاهتمام، تفضيلات التنسيق)
* يشارك المستخدم تفاصيل شخصية (المهنة، الموقع، الهوايات)
* يذكر المستخدم المشاريع أو الأهداف الجارية
* يطلب منك المستخدم صراحةً التذكر

### متى يتم استدعاء الذكريات (RECALL):

* في بداية محادثة جديدة، استدعِ user_memory بالإجراء "list" لمعرفة ما تعرفه
* عند مناقشة المواضيع التي قد تتعلق بمحادثات سابقة

### اصطلاحات مفاتيح الذاكرة:

* preference_style، preference_topics، preference_format
* personal_profession، personal_location، personal_interests
* project_YYYY_MM (على سبيل المثال، project_2026_01)
* goal_[topic] (على سبيل المثال، goal_learning_python)

### مثال على الاستخدام:

* للحفظ: `{ action: "save", key: "preference_style", value: "concise responses" }`
* للاستدعاء: `{ action: "recall", key: "personal_profession" }`
* لسرد الكل: `{ action: "list" }`
* للنسيان: `{ action: "forget", key: "old_key" }`

قم دائمًا بتحية المستخدمين العائدين عن طريق التحقق من ذكرياتهم أولاً.

---

لا يحتاج تعريف الأداة نفسه إلى تغييرات لأنه عام بالفعل - فقط قم بتحديث مثال وصف المعلمة إذا أردت:

**وصف المعلمة (key):** مفتاح الذاكرة (مثل preference_style، current_project)

هل تريد مني تعديل النبرة أو إضافة/إزالة أي حالات استخدام محددة؟



الأداة (TOOL):

الاسم:        ذاكرة المستخدم (User Memory)
اسم الأداة:   user_memory

الوصف:
نظام ذاكرة يسمح للذكاء الاصطناعي بحفظ واستدعاء وسرد ونسيان الحقائق حول المستخدمين.
تستمر الذكريات عبر المحادثات.

الملخص:
تخزين واستدعاء حقائق مستمرة حول المستخدم

المعلمات:
- action (سلسلة نصية)  [مطلوب]
  الإجراء المراد تنفيذه: save (حفظ)، recall (استدعاء)، list (سرد)، أو forget (نسيان)

- key (سلسلة نصية)     [اختياري]
  مفتاح الذاكرة (مثل preference_style، current_project)

- value (سلسلة نصية)   [اختياري]
  القيمة المراد تخزينها (مطلوبة فقط لإجراء الحفظ save)

إعجابَين (2)