المستوى: مبتدئ — مناسب لأي حد بيستخدم ChatGPT أو Claude ومش لازم يكون مبرمج.
Context Window للمبتدئ: ليه الذكاء الاصطناعي بينسى أول كلامك في المحادثة الطويلة
بعد ما تخلّص المقال ده هتعرف بالظبط ليه النموذج بينسى أول الكلام في محادثة طويلة، وهتعرف 3 طرق عملية تمنع النسيان ده قبل ما يبوّظلك الإجابة.
المشكلة باختصار
تخيّل الموقف ده: قلت لـ ChatGPT في أول الكلام "اسمي أحمد وأنا بشتغل في التجارة الإلكترونية". قعدت تتكلم معاه نص ساعة في تفاصيل مشروعك. وفجأة سألته سؤال، فرد عليك وهو ناسي اسمك وناسي إنك في التجارة الإلكترونية أصلاً.
ده مش عطل، ومش النموذج بيتريّق عليك. ده حد تقني اسمه Context Window أو نافذة السياق. وفهمك ليه بيفرّق بين محادثة بتديك إجابات دقيقة، ومحادثة بتلف في دواير.
يعني إيه Context Window؟ خلّينا نبدأ بمثال
تخيّل مدرّس واقف قدام سبورة واحدة، والسبورة دي حجمها ثابت. كل سؤال بتسأله، بيكتبه على السبورة. وكل إجابة بيردها، بيكتبها كمان. السبورة دي هي كل اللي قدام عينيه وهو بيفكر.
المشكلة إن السبورة ليها آخر. لما تتملى، علشان يكتب كلام جديد لازم يمسح كلام قديم. وبيبدأ بالمسح من أول حاجة اتكتبت — يعني اسمك اللي قلته في البداية.
فالمدرّس مش "نسي" إنك أحمد. هو ببساطة مسح الجملة دي من السبورة علشان يفضّل مكان للكلام الجديد. لو سألته "أنا اسمي إيه؟"، هيبص على السبورة ومش هيلاقي الاسم مكتوب، فهيقولك معرفش أو هيخمّن.
السبورة دي هي بالظبط الـ Context Window. والمساحة المحدودة بتاعتها هي سبب النسيان.
التفسير العلمي بدقة
النموذج اللغوي (زي GPT أو Claude) ملوش "ذاكرة" بالمعنى اللي إحنا فاهمينه. كل مرة بتبعتله رسالة، بيتبعتله معاها المحادثة كلها من الأول كنص واحد. والنموذج بيقرأ النص ده ويتنبّأ بالرد المناسب.
لكن النموذج ميقدرش يقرأ نص بأي طول. فيه حد أقصى لعدد التوكنز اللي يقدر يستوعبها في المرة الواحدة. التوكن ده قطعة صغيرة من النص (كلمة، جزء من كلمة، أو علامة). المحادثة كلها + سؤالك الجديد + رده، كله لازم يتحشر جوّه الحد ده. الحد ده اسمه نافذة السياق.
لما المحادثة تتخطّى الحد ده، الأدوات (زي واجهة ChatGPT) بتقص الجزء الأقدم تلقائياً علشان تفضّل مكان. فبيختفي أول الكلام — بالظبط زي ما المدرّس مسح أول السبورة.
وفيه تفصيلة تانية أخطر اسمها "الضياع في المنتصف" (Lost in the Middle). حتى لو الكلام لسه جوّه النافذة، أبحاث Liu وزملائه سنة 2023 لقت إن النموذج بيركّز على أول النص وآخره، وبيتجاهل المعلومات اللي في النص ساعات. يعني المعلومة ممكن تكون موجودة قدامه ومع ذلك يعديها.
ليه بالظبط الأول بيختفي؟ الموضوع حساب بسيط
كل نموذج ليه رقم ثابت لحجم نافذته. وكل حرف بتكتبه بياخد جزء من الرقم ده. نخلّيها أرقام:
- الكلمة الإنجليزية بتاخد في المتوسط حوالي 1.3 توكن.
- الكلمة العربية بتاخد ضعف لـ تلات أضعاف ده، يعني ممكن توصل 3 توكنز للكلمة.
- يعني صفحة عربية فيها 500 كلمة ممكن تاكل لوحدها حوالي 1,500 توكن من نافذتك.
لو عايز تشوف بنفسك المحادثة بتاكل كام توكن، الكود ده بـ Python بيعدّهم باستخدام مكتبة tiktoken الرسمية:
# pip install tiktoken
import tiktoken
# الترميز المستخدم مع نماذج OpenAI الحديثة
enc = tiktoken.get_encoding("o200k_base")
conversation = """
المستخدم: اسمي أحمد وأشتغل في التجارة الإلكترونية.
المساعد: أهلاً أحمد، إزاي أقدر أساعدك في مشروعك؟
المستخدم: عايز أحسّن صفحة المنتج علشان تبيع أكتر.
"""
tokens = enc.encode(conversation)
print(f"عدد التوكنز: {len(tokens)}")
# لو عندك نافذة 128 ألف توكن، تقدر تعرف كام محادثة فاضل
WINDOW = 128_000
print(f"المتبقي في النافذة: {WINDOW - len(tokens)} توكن")
المعادلة بسيطة: لو مجموع توكنز المحادثة تخطّى رقم النافذة، الأقدم بيتقصّ. مفيش سحر.
3 طرق عملية تمنع النسيان
- أعد تذكير النموذج بالمهم. لو معلومة لازم يفتكرها (زي اسمك أو قيد معيّن)، كرّرها في رسالتك الأخيرة. التكلفة: بتستهلك توكنز زيادة. المكسب: المعلومة دايماً قدام عينيه.
- لخّص المحادثة الطويلة. بدل ما تفضّل تكتب، اطلب منه يلخّص اللي اتفقنا عليه في فقرة، وابدأ محادثة جديدة بالملخّص ده. بتخسر التفاصيل الدقيقة، بتكسب نافذة فاضية.
- قسّم المهمة. لو شغلك طويل، اشتغل على جزء جزء في محادثات منفصلة بدل محادثة واحدة عملاقة. أوضح وأرخص في التوكنز.
الأرقام: أحجام النوافذ الحالية (2026)
النوافذ كبرت كتير في السنين الأخيرة، بس لسه ليها حد:
- GPT-4o من OpenAI: حوالي 128 ألف توكن (يعادل تقريباً كتاب من 250 صفحة).
- Claude Sonnet و Opus من Anthropic: حوالي 200 ألف توكن.
- Gemini 1.5 Pro من Google: يوصل لمليون توكن، وفي نسخ تجريبية لـ مليونين.
الافتراض هنا: الأرقام دي بتتغيّر بسرعة، والأهم إن "النافذة الكبيرة" مش بالضرورة تعني "الفهم الكامل" بسبب ظاهرة الضياع في المنتصف اللي شرحناها.
الـ trade-off اللي محدش بيقولك عليه
ممكن تقول: طب نملا النافذة بكل حاجة وخلاص. ركز في النقطة دي — النافذة الكبيرة ليها تمن حقيقي:
- التكلفة. بتدفع على كل توكن داخل وخارج. محادثة بـ 100 ألف توكن ممكن تكلّفك أضعاف محادثة بـ 5 آلاف، على نفس السؤال.
- السرعة. كل ما النص يطول، النموذج بياخد وقت أطول في الرد. الفرق ممكن يبقى ثواني محسوسة.
- الدقة. النص الطويل المليان حشو بيشتّت النموذج، فممكن يبوظ الإجابة بدل ما يحسّنها.
القاعدة العملية: الكلام المركّز القصير غالباً بيدّي إجابة أحسن من السياق الضخم المبعثر.
متى متشغلش بالك أصلاً
لو محادثاتك قصيرة (سؤال وجواب، أو شغل في حدود صفحة أو صفحتين)، الموضوع ده ميخصّكش. النافذة الحديثة أكبر بكتير من كده، ومش هتقرّب من حدّها. كمان لو كل تفاعل مستقل عن اللي قبله، النسيان ده مش هيأثّر عليك. التعقيد بيبدأ بس في المحادثات الطويلة المستمرة، أو لما تحطّ مستند كبير جوّه السياق.
الخطوة التالية
المرة الجاية لما تبدأ محادثة مهمة طويلة مع ChatGPT أو Claude، اكتب القيود والمعلومات الأساسية (زي اسمك، هدفك، الـ stack بتاعك) في رسالة واحدة منظّمة، واحتفظ بيها. ولما تحس النموذج بدأ ينسى، الصق الرسالة دي تاني في المحادثة. لو رجع يجاوب صح، يبقى المشكلة كانت نافذة السياق فعلاً.
المصادر
- توثيق OpenAI الرسمي حول التوكنز ونافذة السياق ومكتبة tiktoken — platform.openai.com/docs.
- توثيق Anthropic حول نافذة سياق نماذج Claude — docs.anthropic.com.
- توثيق Google حول نافذة السياق الطويلة في Gemini — ai.google.dev/gemini-api/docs/long-context.
- ورقة "Lost in the Middle: How Language Models Use Long Contexts" — Liu et al., 2023 (arXiv:2307.03172).