كود بالكلام
القائمة
← أساسيات الذكاء الاصطناعي

$ learn

متاح

لماذا ينسى الذكاء الاصطناعي كلامك؟

لماذا يتذكّر ChatGPT أو Claude شيئًا قديمًا وينسى ما قلته للتو؟ لأن النموذج لا يرى إلا Context المحادثة، أما Memory فهي ما يوصل إليه معلومات عنك.

ContextContext WindowMemoryClaude
نُشر
2026-10-08
المستوى
1
المدة
٨ دقائق

الخلاصة

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

في هذه الحلقة نفرّق بين ثلاثة أشياء: Context، أي كل ما يراه النموذج أمامه الآن، وContext Window، أي أقصى ما يستطيع رؤيته مرة واحدة، وMemory، أي المكان الذي يحتفظ فيه البرنامج بمعلومات عنك ليستخدمها في محادثة جديدة. ثم نرى الفرق بينها عمليًا في Claude.

المصطلحات

  • Context (السياق): كل المعلومات التي يراها Model أمامه الآن، ويعتمد عليها ليردّ عليك.
  • Context Window: أقصى كمية من الكلام يستطيع Model أن يراها مرة واحدة، وتُقاس بـToken لا بالكلمات.
  • Memory (الذاكرة): مكان يحتفظ فيه البرنامج بمعلومات عنك، ليستطيع استخدامها في محادثة جديدة.

الشرح

المكتب الذي أمام الموظف

نكمل بالمثال نفسه من الحلقات السابقة: Model موظف يجلس خلف شبّاك في مصلحة حكومية. كلما كتبت له شيئًا، توضع الورقة أمامه على المكتب. وردوده هو أيضًا تصبح جزءًا من الأوراق التي أمامه.

وهذا الموظف لا يتذكّر شيئًا من عنده. قبل كل ردّ يقرأ كل الأوراق التي على المكتب من أولها، كأنه يراها لأول مرة.

لكن مساحة المكتب محدودة. وحين يمتلئ، لا بد أن تُرفع ورقة قديمة لتوضع ورقة جديدة.

وإذا فتحت محادثة جديدة؟ الموظف نفسه، لكن المكتب فارغ. الأوراق التي قدّمتها من قبل لم تعد أمامه.

الخزنة الصغيرة بجانب المكتب

أحيانًا يكون لدى الموظف خزنة صغيرة بجانب المكتب، فيها بعض الملاحظات عنك من مرات سابقة. وإذا كانت إحداها مفيدة، يُخرجها من الخزنة ويضعها على المكتب قبل أن تقدّم أي ورقة.

الآن نسمّي الأشياء بأسمائها:

  • الأوراق التي على المكتب هي Context: كل المعلومات التي يراها Model أمامه الآن، ويعتمد عليها ليردّ عليك.
  • الخزنة الصغيرة هي Memory: مكان يحتفظ فيه البرنامج بمعلومات عنك، ليستخدمها في محادثة جديدة.
  • مساحة المكتب هي Context Window: أقصى كمية من الكلام يستطيع Model أن يراها مرة واحدة.

وهذه الكمية لا تُقاس بالكلمات، بل بـToken: قطعة صغيرة من الكلام يقرأ بها النموذج ويكتب، كما رأينا في حلقة سابقة.

حين يمتلئ المكتب

كلما طالت المحادثة، كبر Context حتى يملأ Context Window. ومن هنا يتصرّف كل برنامج بطريقته:

  • بعض البرامج تُخرج أول الكلام من Context.
  • وبعضها يطلب منك أن تبدأ محادثة جديدة.
  • وبعضها يضغط Context (Compact)، أي يلخّصه.

وفي كل الحالات: ما ليس في Context لا يراه Model.

لكن انتبه: المحادثة الجديدة لا تعني دائمًا أن Context فارغ تمامًا، لأن Memory قد تضيف إليه بعض المعلومات عنك قبل أن تكتب أول رسالة.

التجربة في Claude

أولًا عزلنا Memory عن التجربة، لنرى أثر Context وحده. من Settings ثم Memory اخترنا Pause memory: يحتفظ Claude بأي معلومات محفوظة من قبل، لكنه لا يستخدمها في التجربة، ولا يضيف معلومات جديدة إلى Memory. وفي الحساب المدفوع يوجد أيضًا خيار Search and reference chats، فأوقفناه كي لا يبحث Claude في المحادثات القديمة.

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

ثم فتحنا محادثة جديدة، بالحساب نفسه، وسألناه السؤال نفسه حرفيًا. هذه المرة لم يعرف الإجابة، ونبّهنا إلى أن خاصية الذاكرة غير مفعّلة. فالمعلومة ليست في Context المحادثة الجديدة، وحين حاول أن يبحث عنها في Memory وجدها متوقفة.

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

  • أن تكتبها له في المحادثة الجديدة، فتدخل مباشرة في Context.
  • أن تحفظها في Memory، فيستخدمها Claude بعد ذلك حين تكون مناسبة.

فجرّبنا الطريقة الثانية: أعدنا تشغيل Memory، وتركنا Search and reference chats متوقفًا لنتأكّد أن مصدر الإجابة هو Memory وحدها. وكتبنا المعلومة في خانة الذاكرة، وانتظرنا حتى حفظها. وزيادةً في التأكّد، حذفنا المحادثات القديمة التي ذكرنا فيها اسم القطة. ثم فتحنا محادثة جديدة وسألنا السؤال نفسه، فعرف هذه المرة: «اسم قطتك مشمش».

لماذا؟ لأن المعلومة كانت محفوظة في Memory، فأضافها Claude إلى Context وهو يكوّن ردّه.

ليس في Claude وحده

فكرة Memory موجودة في أدوات كثيرة، مثل ChatGPT وPerplexity وغيرهما، لكن طريقتها وشكلها يختلفان قليلًا من أداة إلى أخرى.

جرّب بنفسك

اكتب ثلاثة أو أربعة أسطر عنك: من أنت، وماذا تعمل، وعلى ماذا تعمل هذه الأيام. واحفظها عندك.

افتح Incognito chat في Claude، واسأل السؤال التالي كما هو.

اقترح لي حاجة تسهّل شغلي

افتح Incognito chat ثانية، والصق أسطرك أولًا، ثم اسأل السؤال نفسه.

اطلب من Claude أن يحفظ أسطرك في Memory، ثم اسأل السؤال نفسه مرة أخرى في محادثة عادية جديدة.

قارن الردود الثلاثة: ما الذي عرفه عنك في كل مرة، ومن أين جاءته المعلومة؟

لماذا يهمّك هذا

الفكرة نفسها ستقابلك حين نبني أشياء بأدوات مثل Claude Code: الأداة لا ترى ما ليس في Context. لذلك من المهارات التي سنتعلّمها أن تضع أمام Model ما يحتاج إليه بالضبط. إن أعطيته أقل، فسيخمّن. وإن أعطيته أكثر، فقد يتوه المهم وسط الباقي.

ولماذا لا نعطيه كل شيء ونتركه يختار ما يحتاج إليه؟ لأنه كلما امتلأ Context بأشياء لا علاقة لها بالمهمة، صعب عليه أن يركّز في المهم. Context المضبوط أفضل من Context الكبير.

حلقات مرتبطة