Extended Thinking في Claude: متى تخلّي الموديل يفكّر قبل الرد
مستوى المقال: متوسط
لو سألت Claude يحلّك مسألة AIME 2025 رقم 12 وجاوبك غلط في 3 ثواني، المشكلة مش إن الموديل ضعيف. المشكلة إنك خلّيته يجاوب فوراً بدل ما تدّيه ميزانية تفكير. Extended Thinking بياخد نفس الموديل، يخلّيه يكتب آلاف التوكنز الداخلية اللي مش بتظهر للمستخدم، وبيرفع الدقة من 51% لـ 87% على نفس البنشمارك. المقابل: التكلفة بتتضاعف 10x، والوقت بياخد 38 ثانية بدل 3.
المشكلة باختصار
أي LLM افتراضياً بيشتغل بقاعدة "أول توكن جه في الذهن، اطلعه". لو سؤالك بسيط زي "لخّصلي الإيميل ده"، الكلام ده ممتاز. لكن لو سؤالك مركّب — احسب أفضل نقطة دخول لصفقة بناءً على 4 مؤشرات، أو صحّح bug في 800 سطر Rust — الموديل بيختار مسار غلط في أول 5 توكنز ويلتزم بيه للآخر علشان كل توكن جديد بيعتمد على اللي قبله. Extended Thinking بيكسر القاعدة دي. بيخلّي الموديل يفتح "مسوّدة داخلية" يكتب فيها كل البدائل ويشطب الغلط، قبل ما يكتب أي حرف للمستخدم.
المثال البسيط: طالبين في امتحان كالكولاس
تخيّل طالبين قاعدين جنب بعض في امتحان نهاية الترم. السؤال: "احسب تكامل sin(x²) من 0 لـ π/2". الطالب الأول قراه، كتب أول حل خطر في باله، وسلّم في 30 ثانية. الطالب التاني قرا السؤال، فتح الورقة الخارجية، جرّب تغيير المتغيّر u=x²، شاف إن du مش متماثل، شطب وجرّب التكامل بالأجزاء، شاف إنه مش بيقفل، وفي الآخر قرر يستخدم Taylor series ويقرّب الحل. كتب الإجابة النهائية في الورقة الرسمية بعد 12 دقيقة.
الطالب الأول هو Claude بدون Extended Thinking. الطالب التاني هو Claude مع Extended Thinking. الورقة الخارجية هي الـ thinking block — توكنز فعلاً بيتم توليدها وبتدخل في حساب الـ context، لكن مش بتطلع للمستخدم النهائي في الـ UI. الموديل بيقدر يقرا "مسوّدته" قبل ما يبدأ الإجابة الرسمية.
التعريف العلمي: ازاي بيشتغل تحت الكاب
تقنياً Extended Thinking مش feature بسيط. هو طريقة inference بتخلّي الموديل يولّد سلسلة توكنز جوّا بلوك خاص اسمه thinking قبل ما يولّد الـ text block للإجابة. التوكنز دي ليها 3 خصائص محددة:
- بتتحاسب كاملة في فاتورة output tokens — مش مجاناً.
- مش بتظهر للمستخدم في الـ default UI، لكنها متاحة في الـ API response لو سحبتها.
- بتدخل في الـ context window للإجابة النهائية، بمعنى الموديل بيشوفها ويبني عليها لما يكتب الإجابة الرسمية.
Anthropic بتديك باراميتر اسمه budget_tokens بتحدد فيه أقصى عدد توكنز ممكن الموديل يفكّر بيها قبل ما يكتب الإجابة. القيم الشائعة المستخدمة في إنتاج: 1024 (تفكير خفيف لتحقق سريع)، 4096 (متوسط مناسب لأغلب reasoning)، 8000–16000 (تفكير عميق لمسائل اوليمبياد ومراجعة كود طويل). الافتراض المهم: Extended Thinking متاح حالياً على موديلات Claude Opus 4.x و Sonnet 4.x، مش على Haiku.