المستوى المطلوب: متوسط — مناسب لمن يعمل على تطبيقات Claude API ويعرف أساسيات الـ system prompt واستدعاء الـ messages endpoint. لو لسه مبتدئ تمامًا، اقرأ أولًا أساسيات Anthropic SDK ثم ارجع.
Prompt Caching بالعربي: وفّر 90% من تكلفة Claude API على الـ system prompt المتكرر
لو الـ system prompt بتاع تطبيقك أطول من 1024 توكن وبتبعته في كل طلب، أنت بتدفع تكلفته كاملة كل مرة بدون داعي. Prompt Caching من Anthropic بياخد التكلفة دي وينزّلها 90% بسطر واحد في الـ payload، طول ما الجزء ده بيتكرّر خلال نافذة الـ 5 دقائق.
المشكلة باختصار
تطبيقات Claude الحقيقية مش بتبعت رسالة واحدة. الـ system prompt فيه تعليمات تفصيلية، مع 3 إلى 5 أمثلة few-shot، وأحيانًا سياق RAG كبير. الجزء ده ثابت بين كل طلب وطلب، لكن الـ API بيعدّ توكناته ويفوترها بالكامل في كل request.
افتراض إن system prompt عندك 8000 توكن، بتشتغل على Claude Sonnet 4.6 (سعر $3 لكل مليون توكن input)، وبتاخد 1000 طلب في اليوم: 24 دولار يوميًا على نص ما اتغيّرش حرف. الفاتورة الشهرية: 720 دولار من غير لزوم. ده الجزء اللي Prompt Caching بيهاجمه.
المثال البسيط: زي مدرّس بيعيد كل درس من البداية
تخيل مدرّس بيدخل الفصل كل ساعة، وفي كل مرة بيعيد شرح القواعد العامة للحصة من الصفر قبل ما يبدأ الدرس الجديد. الطلاب نفس الطلاب، القواعد نفس القواعد، الفرق بس في الدرس. الوقت اللي بيضيع في إعادة الشرح هو اللي ممكن يستثمر في درس جديد بدلًا منه.
Prompt Caching بيخلي المدرّس يكتب القواعد على السبورة مرة واحدة في أول حصة، ويبدأ كل حصة بعدها بالدرس مباشرة. لو القواعد اتغيّرت لأي سبب، السبورة بتتمسح ويُعاد كتابتها من جديد. ده بالظبط اللي بيحصل مع system prompt بتاعك.
تعريف Prompt Caching بدقة
Prompt Caching ميزة في Anthropic API بتسمح لك تعلّم على block معين في الـ input إنه قابل للتخزين على infrastructure Anthropic. التطبيق العملي بيتم بإضافة الحقل cache_control: { type: "ephemeral" } على content block واحد أو أكثر، سواء كان system prompt، documents، أو tool definitions.
أول طلب بيمر على الـ block ده بيعمل cache write بتكلفة 1.25× السعر الأصلي للـ input. كل طلب بعد كده طول ما الـ cache صالح بيعمل cache read بتكلفة 0.1× — يعني خصم 90% على الجزء المخزّن.
الشروط التشغيلية اللي لازم تعرفها
- الحد الأدنى: الـ block المراد تخزينه لازم يكون 1024 توكن أو أكثر لـ Claude Sonnet و Opus، و 2048 توكن لـ Haiku. أقل من كده الـ API بيتجاهل التخزين تمامًا بدون أي خطأ.
- المدة الافتراضية: 5 دقائق من آخر استخدام (sliding window). Anthropic بتدعم ساعة كاملة كـ option بتكلفة write أعلى (2× بدل 1.25×).
- الترتيب مهم: الجزء الثابت لازم يجي قبل الجزء المتغير. الـ cache بيبدأ من بداية الـ prompt وبيكسر عند أول اختلاف بايت ببايت.
- عزل المساحات: ابتداءً من فبراير 2026 بقى الـ cache معزول على مستوى الـ workspace، يعني تطبيق على workspace مش هيستفيد من cache تطبيق تاني حتى لو في نفس المؤسسة.