متى يحقق تخزين مطالبات Claude وفراً؟
تكلّف كتابة الذاكرة المؤقتة 1.25 ضعفاً والقراءة 0.1 أو أقل، لذا قد تسترد بادئة Claude تكلفتها عند الاستخدام الثاني. احسب نقطة التعادل وتحقق منها عبر API.
تكلفة التخزين المؤقت للمطالبات قبل أن يحقق وفراً
يتيح تخزين المطالبات مؤقتاً لـ Claude إعادة استخدام بداية المطالبة بدلاً من قراءتها مجدداً مع كل استدعاء. يعتمد القرار بأكمله على معاملين يُطبّقان على سعر الإدخال الأساسي للنموذج. اعتباراً من أكتوبر 2026، تكلّف كتابة البيانات في ذاكرة التخزين المؤقت 1.25x من سعر الإدخال الأساسي لمدة صلاحية قدرها 5 دقائق، أو 2x لمدة صلاحية قدرها 1 ساعة، وذلك في جميع النماذج. وتكلّف قراءة البيانات من ذاكرة التخزين المؤقت 0.1x في معظم النماذج، لكن معامل القراءة لم يعد موحّداً في جميع النماذج. يبلغ المعامل 0.025x في Claude Fable 5.1 وClaude Mythos 5.1، وقد أُطلق هذان النموذجان بهذا المعدل في 1 سبتمبر 2026. ويبلغ 0.05x في Claude Opus 5.5 وClaude Sonnet 5.5، وقد خُفِّض معدل Sonnet 5.5 من 0.1x إلى هذا المعدل في 7 أكتوبر 2026. تستخدم الأمثلة الحسابية أدناه معدل القراءة القياسي البالغ 0.1x. وتُحسّن معدلات القراءة الأرخص نقطة التعادل لصالحك قليلاً، ويوضح القسم التالي مقدار هذا التحسن.
المقايضة هي رسم إضافي الآن مقابل خصم لاحق. تدفع تكلفة إضافية مرة واحدة لتخزين بادئة. وكل طلب لاحق يبدأ بالبايتات نفسها تماماً يدفع عُشر سعر الإدخال العادي لذلك الجزء، أو أقل في النماذج المذكورة أعلاه. أما البادئة التي لا يُعاد استخدامها خلال مدة صلاحيتها فتكلّفك 25 بالمائة إضافية بلا فائدة.
نقطة التعادل، في سطر جبري واحد
سمِّ B تكلفة إدخال البادئة الأساسية إذا أرسلتها من دون تخزين مؤقت. من دون التخزين المؤقت، تكلّف N من الطلبات مقدار N مضروباً في B. مع التخزين المؤقت لمدة 5 دقائق، يكتب الطلب الأول البادئة بتكلفة 1.25B، وتقرأ الطلبات N ناقص 1 البادئة بتكلفة 0.1B لكل طلب. ساوِ بين التكلفتين لتحصل على 0.9N = 1.15، ومنه N = 1.28. لذلك يصبح الطلب الثاني أرخص بالفعل من عدم استخدام التخزين المؤقت مطلقاً.
كرّر ذلك مع الكتابة بتكلفة 2x للتخزين المؤقت لمدة 1 ساعة، فتحصل على 0.9N = 1.9، ومنه N = 2.11. يحتاج التخزين المؤقت الأطول إلى قراءتين قبل الوصول إلى نقطة التعادل، ولذلك لا يكون الخيار الافتراضي.
عند انخفاض تكلفة القراءة تتحرك النقطة قليلاً، لكن ليس كثيراً. عند قراءة بتكلفة 0.05x، يعطي التخزين المؤقت لمدة 5 دقائق المعادلة 0.95N = 1.2، ومنه N = 1.26، وعند 0.025x يعطي 0.975N = 1.225، أي N = 1.26 أيضاً. وينخفض N في التخزين المؤقت لمدة 1 ساعة إلى 2.05 ثم إلى 2.03. النتيجة العملية واحدة في كل نموذج: يبدأ التخزين المؤقت لمدة 5 دقائق بتحقيق الوفر من الطلب الثاني، بينما يبدأ التخزين المؤقت لمدة 1 ساعة من الطلب الثالث.
يسعّر المخطط أدناه ذلك لبادئة مكوّنة من 20,000 رمز على Claude Opus 5. يبلغ سعر الإدخال الأساسي $5 لكل مليون رمز اعتباراً من October 2026، ولم يتغير منذ August. أصبح Opus 5 الآن نموذجاً قديماً، لكنه لا يزال متاحاً. ويعرض خلفه، Claude Opus 5.5، سعراً قدره $4 لكل مليون مع قراءة بتكلفة 0.05x، لذلك تكلّف كتابة البادئة نفسها هناك $0.10، وتكلّف قراءتها $0.004. اضرب كل قيمة في 0.6 للحصول على نموذج بسعر $3 لكل مليون مع القراءة القياسية بتكلفة 0.1x. لا يتغير شكل المنحنى.
البيانات وراء هذا الرسم البياني
[
{
"requests": 1,
"uncached_usd": "0.10",
"cached_5m_usd": "0.125",
"cached_1h_usd": "0.20"
},
{
"requests": 2,
"uncached_usd": "0.20",
"cached_5m_usd": "0.135",
"cached_1h_usd": "0.21"
},
{
"requests": 3,
"uncached_usd": "0.30",
"cached_5m_usd": "0.145",
"cached_1h_usd": "0.22"
},
{
"requests": 5,
"uncached_usd": "0.50",
"cached_5m_usd": "0.165",
"cached_1h_usd": "0.24"
},
{
"requests": 10,
"uncached_usd": "1.00",
"cached_5m_usd": "0.215",
"cached_1h_usd": "0.29"
},
{
"requests": 20,
"uncached_usd": "2.00",
"cached_5m_usd": "0.315",
"cached_1h_usd": "0.39"
}
]يكلّف الطلب الواحد $0.10 من دون تخزين مؤقت، و$0.125 مع التخزين المؤقت، لذلك فإن تخزين طلب يُستخدم مرة واحدة مؤقتاً يمثل خسارة صافية. عند الطلب الثاني، يصبح التخزين المؤقت لمدة 5 دقائق عند $0.135 مقابل $0.20. يظل التخزين المؤقت لمدة 1 ساعة أعلى تكلفة في تلك النقطة، إذ يبلغ $0.21 مقابل $0.20 نفسه، ولا يتجاوز تكلفة عدم التخزين المؤقت إلا عند الطلب الثالث: $0.22 مقابل $0.30. وعند 20 طلباً، يبلغ الفرق $2.00 مقابل $0.315.
تؤدي إصابة التخزين المؤقت أيضاً إلى تحديث الإدخال، ولذلك يسمّي جدول الأسعار المنشور ذلك العمود cache hits and refreshes. لذلك يمكن لنقطة نهاية نشطة أن تُبقي إدخالاً صالحاً لمدة 5 دقائق إلى أجل غير محدود بأسعار القراءة، بينما لا تحقق مدة الصلاحية التي تبلغ 1 ساعة تكلفة الكتابة البالغة 2x إلا عندما تتخلل حركة المرور فواصل حقيقية.
ما الذي يكلّفه معدل إصابة منخفض
تفشل بعض الطلبات الفعلية في الوصول إلى ذاكرة التخزين المؤقت. ويُحتسب الطلب الذي لا يجد نسخة مخزنة، لكنه لا يزال يتضمن بادئة قابلة لإعادة الاستخدام، كعملية كتابة. لذلك، فإن الطريقة الدقيقة للنمذجة هي حساب التكلفة بوصفها دالة في معدل الإصابة. يوضّح المخطط أدناه ذلك لـ1,000 طلب، يحمل كل منها البادئة نفسها المكوّنة من 20,000 رمز.
البيانات وراء هذا الرسم البياني
[
{
"hit_rate_percent": 0,
"cost_5m_usd": "125.00",
"cost_1h_usd": "200.00",
"uncached_usd": "100.00"
},
{
"hit_rate_percent": 25,
"cost_5m_usd": "96.25",
"cost_1h_usd": "152.50",
"uncached_usd": "100.00"
},
{
"hit_rate_percent": 50,
"cost_5m_usd": "67.50",
"cost_1h_usd": "105.00",
"uncached_usd": "100.00"
},
{
"hit_rate_percent": 75,
"cost_5m_usd": "38.75",
"cost_1h_usd": "57.50",
"uncached_usd": "100.00"
},
{
"hit_rate_percent": 90,
"cost_5m_usd": "21.50",
"cost_1h_usd": "29.00",
"uncached_usd": "100.00"
},
{
"hit_rate_percent": 95,
"cost_5m_usd": "15.75",
"cost_1h_usd": "19.50",
"uncached_usd": "100.00"
},
{
"hit_rate_percent": 99,
"cost_5m_usd": "11.15",
"cost_1h_usd": "11.90",
"uncached_usd": "100.00"
}
]عند معدل إصابة يبلغ 0 بالمئة، تدفع $125.00 بدلاً من $100.00، وتضاعف ذاكرة التخزين المؤقت لمدة 1 ساعة الفاتورة لتصل إلى $200.00. حلّ المعادلة 1.25 ناقص 1.15h = 1 يبيّن أن ذاكرة التخزين المؤقت لمدة 5 دقائق تبدأ في توفير المال عند معدل إصابة يبلغ نحو 22 بالمئة. لذلك، يظهر عند 25 بالمئة مبلغ $96.25. ويعطي الحساب نفسه مع الكتابة المضاعفة 2x نحو 53 بالمئة لذاكرة التخزين المؤقت لمدة 1 ساعة. لذلك، يظل معدل الإصابة البالغ 50 بالمئة يكلّف $105.00، أي أعلى من خط التكلفة دون تخزين مؤقت. عند 90 بالمئة، تصل القيمتان إلى $21.50 و$29.00. وعند 99 بالمئة، تصل ذاكرة التخزين المؤقت القصيرة إلى $11.15، وهي قريبة من الحد الأدنى البالغ عُشر السعر دون تخزين مؤقت.
في نموذج تبلغ فيه تكلفة القراءة 0.05x، تنخفض الحدود إلى نحو 21 بالمئة لذاكرة التخزين المؤقت لمدة 5 دقائق و51 بالمئة لذاكرة التخزين المؤقت لمدة 1 ساعة. وعند تكلفة قراءة تبلغ 0.025x، تنخفضان إلى نحو 20 و51 بالمئة. وينخفض الحد الأدنى مع انخفاض سعر القراءة، ليبلغ عُشر أو واحداً من أربعين من التكلفة دون تخزين مؤقت.
معدل الإصابة هو القيمة التي يجب جمعها ومراقبتها، لأنه المدخل الوحيد الذي يمكنك التحكم فيه بعد تثبيت حجم البادئة.
ما هي البادئات التي تستحق نقطة تخزين مؤقت
قد يحمل الطلب ما يصل إلى أربع نقاط لتخزين البادئة مؤقتاً، لذلك السؤال هو: ما الكتل التي تستحق تخصيص نقطة لها؟ المرشحة هي الكتل المتطابقة بايتاً ببايت عبر الطلبات، والكبيرة بما يكفي لإحداث فرق. يوضح المخطط أدناه تكلفة أربعة أشكال شائعة عبر 1,000 طلب، مع معدل إصابة يبلغ 90 بالمئة في ذاكرة التخزين المؤقت التي تبلغ مدتها 5 دقائق.
البيانات وراء هذا الرسم البياني
[
{
"label": "System prompt",
"prefix_size_tokens": "2,000",
"uncached_usd": "10.00",
"cached_usd": "2.15",
"saved_usd": "7.85"
},
{
"label": "System plus tools",
"prefix_size_tokens": "8,000",
"uncached_usd": "40.00",
"cached_usd": "8.60",
"saved_usd": "31.40"
},
{
"label": "Policy document",
"prefix_size_tokens": "25,000",
"uncached_usd": "125.00",
"cached_usd": "26.88",
"saved_usd": "98.12"
},
{
"label": "Codebase context",
"prefix_size_tokens": "120,000",
"uncached_usd": "600.00",
"cached_usd": "129.00",
"saved_usd": "471.00"
}
]يوفّر prompt نظامي عارٍ يحتوي على 2,000 رمزاً $7.85 لكل 1,000 طلب، مقارنةً بتكلفة $10.00 عند عدم استخدام التخزين المؤقت. هذا مبلغ فعلي عند الأحجام الكبيرة، لكنه ليس سبب أهمية التخزين المؤقت. أضف تعريفات الأدوات، وستصل إلى 8,000 رمزاً، مع توفير $31.40. أما مستند سياسة يتكون من 25,000 رمزاً وتطرح كل الطلبات أسئلة عنه، فيوفّر $98.12. أما الصف الأخير فهو الذي يغيّر البنية: إذ تكلّف سياقات قاعدة الشيفرة أو نص المحادثة التي تحتوي على 120,000 رمزاً $600.00 عند عدم استخدام التخزين المؤقت، و$129.00 عند استخدامه، أي توفير $471.00.
تزداد الوفورات مع حجم البادئة ومعدل الإصابة، ولا تتأثر بأي عامل آخر. وهذا يغيّر ما يستحق إدراجه في prompt من الأساس: إذ إن التكلفة الفعلية لمليون رمز من Claude تنخفض إلى عُشر السعر المعلن، أو أقل في النماذج ذات تكلفة القراءة الأقل، لكل محتوى ترسله أكثر من مرة.
كيف يبدو ذلك في فاتورة شهرية
يأخذ المخطط أدناه بادئة الرمز المميز 8,000 المذكورة أعلاه، مع مطالبة نظام وتعريفات الأدوات، وبمعدل إصابة قدره 90 بالمئة، ثم يوسّعها لتشمل أحجام الطلبات الشهرية.
البيانات وراء هذا الرسم البياني
[
{
"label": "10k requests",
"uncached_usd": "400.00",
"cached_usd": "86.00",
"saved_usd": "314.00"
},
{
"label": "100k requests",
"uncached_usd": "4,000.00",
"cached_usd": "860.00",
"saved_usd": "3,140.00"
},
{
"label": "1M requests",
"uncached_usd": "40,000.00",
"cached_usd": "8,600.00",
"saved_usd": "31,400.00"
}
]عند 10,000 طلب شهرياً، يبلغ التوفير $314.00، وهو الفرق بين $400.00 و$86.00. وعند 100,000 طلب، يبلغ التوفير $3,140.00. وعند مليون طلب، تبلغ تكلفة المدخلات غير المخزنة مؤقتاً $40,000.00، ويزيل التخزين المؤقت منها $31,400.00. تتعلق هذه الأرقام برموز المدخلات فقط. تُسعَّر المخرجات بشكل منفصل، ولا يؤثر التخزين المؤقت فيها، لذا تذكّر ذلك قبل أن تعد أي شخص بخفض الفاتورة بنسبة 90 بالمئة. يأتي التخزين المؤقت إلى جانب الممارسات الأوسع الواردة في إبقاء فاتورة وكيل ذكاء اصطناعي تحت السيطرة على VPS.
كيفية إثبات عمل التخزين المؤقت
لا تعتمد على التصميم وحده. اقرأ قسم الاستخدام في الاستجابة. يعرض كل رد من Messages API عدد الرموز المميزة التي كتبها في ذاكرة التخزين المؤقت، وعدد الرموز المميزة التي قرأها منها، وعدد الرموز الجديدة التي اضطر إلى معالجتها.
from anthropic import Anthropic
client = Anthropic()
resp = client.messages.create(
model="claude-opus-5",
max_tokens=512,
system=[
{
"type": "text",
"text": POLICY_DOCUMENT,
"cache_control": {"type": "ephemeral"},
}
],
messages=[{"role": "user", "content": question}],
)
u = resp.usage
print("write:", u.cache_creation_input_tokens)
print("read: ", u.cache_read_input_tokens)
print("fresh:", u.input_tokens)شغّله مرتين باستخدام المستند نفسه وسؤال مختلف. يعرض الاستدعاء الأول قيمة غير صفرية لـ cache_creation_input_tokens وقيمة صفرية لـ cache_read_input_tokens. ويعكس الاستدعاء الثاني ذلك لأن البادئة عُثر عليها في ذاكرة التخزين المؤقت. يحسب input_tokens الرموز المميزة التي تأتي بعد آخر نقطة توقف فقط، ولذلك تكون قيمته صغيرة في الاستدعاء الثاني السليم، وعادةً ما تقتصر على رسالة المستخدم الجديدة. تُحتسب تكلفة الاستدعاءين، لأن Claude API لا يوفّر فئة مجانية، رغم أن بادئة من 20,000 رمز مميز، وفق السعر الموضح أعلاه، تكلف نحو أربعة عشر سنتاً.
يمكنك إجراء الفحص نفسه من shell باستخدام نص طلب حفظته في request.json:
curl -s https://api.anthropic.com/v1/messages \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d @request.json | jq '.usage'يطبع الاستدعاء الثاني السليم شيئاً يشبه ما يلي:
{
"input_tokens": 42,
"cache_creation_input_tokens": 0,
"cache_read_input_tokens": 20143,
"output_tokens": 187
}يخبرك سطر واحد بالحقيقة. إذا ظل cache_read_input_tokens يساوي 0 في جميع الاستدعاءات، فأنت تدفع تكلفة الكتابة البالغة 1.25x في كل مرة، ولا تستفيد من أي شيء مقابلها.
بالنسبة إلى مدة الصلاحية البالغة 1 hour، تحمل نقطة التوقف مدة بقاء (TTL):
{
"type": "text",
"text": "your stable prefix",
"cache_control": {"type": "ephemeral", "ttl": "1h"}
}يتوفر أيضاً التخزين المؤقت التلقائي: حقل cache_control واحد في المستوى الأعلى من الطلب، وبعده يدير API نقاط التوقف تلقائياً مع نمو المحادثة. يستهلك هذا الحقل إحدى خانات نقاط التوقف الأربع المتاحة لك. ابدأ بهذا الخيار. وانتقل إلى نقاط التوقف الصريحة عندما تحتاج إلى تحديد موضع الحد بدقة.
قاعدة الترتيب التي تقضي على معدلات الإصابة
تطابق ذاكرة التخزين المؤقت بادئةً بايتاً ببايت، بدءاً من أول الطلب. ويُجمَّع الطلب بترتيب ثابت: الأدوات، ثم النظام، ثم الرسائل. يؤدي أي تغيير على أي مستوى إلى إبطال ذلك المستوى وكل ما يليه. فإذا عدّلت وصف أداة واحدة، يُبطَل أيضاً موجّه النظام وسجل الرسائل بالكامل، حتى إذا لم تغيّرهما.
ينتج عن ذلك قاعدة واحدة بلا استثناءات: يجب أن يأتي كل ما يتغير بين الاستدعاءات بعد كل ما لا يتغير.
المتسبب المعتاد هو الطابع الزمني. يضمن وجود سطر يقرأ Current time: 2026-08-03T14:07:11Z في أعلى موجّه النظام معدل إصابة قدره 0 بالمئة، لأن تجزئة البادئة تختلف في كل استدعاء، ولا يمكن لأي إدخال سابق أن يطابقها. انقل هذا السطر إلى رسالة المستخدم، في نهايتها. ويؤدي معرّف الجلسة أو nonce خاص بكل طلب إلى المشكلة نفسها، وله الحل نفسه. كما يجب وضع المستندات المسترجعة التي تختلف من طلب إلى آخر بعد الكتلة المخزنة مؤقتاً؛ وإلا فإنها تدفع كل رمز ثابت إلى ما بعد حد يتغير موضعه.
المتسبب الثاني هو وضع نقطة الفصل على الكتلة التي تتغير. تحدث عمليات الكتابة في ذاكرة التخزين المؤقت عند نقطة الفصل. لذلك، إذا اختلفت تلك الكتلة في كل مرة، فلن يُخزَّن أي محتوى ثابت، ولن يعثر البحث في السجل إلا على إدخالات كتبتها الطلبات السابقة عند نقاط الفصل المتحركة الخاصة بها. ضع cache_control على آخر كتلة يكون محتواها متطابقاً بين الطلبات.
أما المتسبب الثالث فهو تغيير معلمة لم تعتبرها جزءاً من محتوى الموجّه. لكل نموذج مختلف ذاكرة تخزين مؤقت مختلفة. يؤدي تغيير tool_choice إلى إبطال سجل الرسائل، بينما تبقى الأدوات وموجّه النظام مخزنين مؤقتاً. تؤدي إضافة أداة أو إزالتها إلى إبطال كل شيء.
الحد الأدنى لطول البادئة، وعدم التنفيذ الصامت
لا تُخزَّن البادئة التي تكون أقصر من الحد الأدنى الذي يتطلبه النموذج، ولا يظهر لك ما يوضح ذلك. لا يوجد خطأ ولا تحذير. ينجح الطلب ويقرأ كلا العدادين 0. اعتباراً من أكتوبر 2026، الحدود الدنيا المنشورة هي:
- 512 رمزاً في Claude Opus 5 وClaude Fable 5، وكذلك في الإصدارات الأحدث Opus 5.5 وSonnet 5.5 وFable 5.1 وHaiku 5.5
- 1,024 رمزاً في Claude Sonnet 5 وClaude Opus 4.8
- 4,096 رمزاً في Claude Haiku 4.5
إذا قرأ كلا العدادين 0 في طلب تعتقد أنه مُخزَّن مؤقتاً، فتحقق من طول البادئة قبل أي شيء آخر. وهذا يفسر أيضاً سبب عدم كون النموذج الأرخص هو الأرخص تلقائياً في أحمال العمل التي تستخدم التخزين المؤقت. يحتاج Haiku 4.5 إلى بادئة أطول بثماني مرات من Opus 5 حتى يبدأ التخزين المؤقت بالعمل، لذلك تُخزَّن مطالبة نظامية من 2,000 رمز في أحدهما، بينما يتجاهلها الآخر بصمت.
متى يستفيد Claude Code من التخزين المؤقت، ومتى لا يستطيع مساعدتك
يخزّن Claude Code البادئة الخاصة به مؤقتاً. يوجد system prompt وتعريفات الأدوات في بداية كل طلب، ولا تتغير مواضعها، لذلك تُكتب مرة واحدة ثم تُقرأ لبقية الجلسة. لهذا تكون تكلفة كل دورة في الجلسة الطويلة أقل بكثير مما يوحي به حجم السياق، ويظهر ذلك في العدادات الموضحة في كيفية عرض Claude Code لاستخدام الرموز المميزة.
لا يستطيع التخزين المؤقت مساعدتك عند تغيير جزء قريب من بداية السياق. يُضاف سجل المحادثة فقط، لذلك تمدّ الدورات الجديدة البادئة المخزنة مؤقتاً. ولا يؤدي تعديل ملف قُرئ في وقت مبكر من الجلسة إلى إبطال ذلك، لأن Claude Code يضيف ملاحظة تفيد بتغيّر الملف بدلاً من إعادة كتابة القراءة السابقة. ما يؤدي إلى إبطال التخزين المؤقت هو تبديل النماذج، لأن لكل نموذج ذاكرة تخزين مؤقت خاصة به. كما يؤدي الاتصال بخادم MCP تُحمّل أدواته في البادئة إلى إبطاله، وينطبق الأمر نفسه على ضغط المحادثة. تجعل كل حالة من هذه الحالات الدورة التالية تعيد كتابة البادئة. وينطبق الأمر نفسه على فترة خمول طويلة، لأن الإدخال تنتهي صلاحيته وتتحمل الدورة التالية تكلفة كتابة كاملة. لا يمثل أي من ذلك خطأً. هذه هي قاعدة البادئة كما هي تماماً.
إذا كنت تكتب عميلك الخاص، فطبّق هذا التخطيط منذ الطلب الأول بدلاً من إضافته لاحقاً: أنشئ الاستدعاء بالطريقة الموضحة في تطبيق Claude API الأول على VPS، مع وضع الكتل الثابتة أولاً والمتغيرة أخيراً.
أوضاع الفشل وما ستراه
كل استدعاء هو عملية كتابة. تكون قيمة cache_creation_input_tokens غير صفرية في كل طلب، بينما تبقى cache_read_input_tokens تساوي 0. يتغير شيء ما عند نقطة التوقف أو قبلها بين الطلبات. اطبع أول 200 محرف من البادئة التي جمّعتها في طلبين متتاليين، ثم قارنهما بصرياً.
العدّادان يساويان 0. البادئة أقصر من الحد الأدنى الذي يتطلبه النموذج، أو أن الحقل cache_control لم يصل إلى API. احسب رموز البادئة أولاً، ثم سجّل نص الطلب الذي أرسلته فعلياً.
تعمل عمليات القراءة ثم تتوقف. تحصل على سلسلة من مرات الإصابة، ثم عملية كتابة، ثم تعود مرات الإصابة. كانت الفترة بين الطلبات أطول من مدة الصلاحية. اقبل عملية الكتابة، أو انتقل إلى TTL لمدة 1 hour بعد التحقق من أن معدل الإصابة يتجاوز 53 percent، أو نحو 51 percent في نموذج تكون فيه تكلفة القراءة 0.05x أو 0.025x.
ينخفض معدل الإصابة بعد النشر. عُدّل وصف أداة أو تغيّر النموذج. يؤدي كلا الأمرين إلى إبطال البادئة بالكامل. توقّع جولة واحدة مكلفة من عمليات الكتابة بعد كل عملية نشر تؤثر في الموجّه.
ارتفعت الفاتورة بعد تفعيل التخزين المؤقت. معدل الإصابة لديك أقل من نقطة التعادل. عند أقل من نحو 22 percent في التخزين المؤقت لمدة 5 minutes، يكون إرسال البادئة من دون تخزين مؤقت أقل تكلفة. وينطبق الأمر نفسه على التخزين المؤقت لمدة 1 hour عند أقل من نحو 53 percent. في النماذج ذات القراءة الأقل تكلفة، تكون النسبتان نحو 20 إلى 21 percent و51 percent.
FAQ
كم مرة يجب إعادة استخدام prompt قبل أن يصبح التخزين المؤقت مجدياً؟
مرة واحدة، عند استخدام التخزين المؤقت لمدة 5 دقائق. تبلغ تكلفة الكتابة 1.25x من تكلفة الإدخال الأساسية، بينما تبلغ تكلفة القراءة 0.1x في معظم النماذج. لذلك، تبلغ تكلفة N من الطلبات دون تخزين مؤقت N، في حين تبلغ تكلفة N من الطلبات مع التخزين المؤقت 1.25 زائد 0.1 مضروباً في N ناقص 1. تتساوى الكلفتان عند N = 1.28، لذلك يصبح الطلب الثاني أوفر بالفعل. في النماذج التي تبلغ فيها تكلفة القراءة 0.05x أو 0.025x، يحدث التعادل عند N = 1.26، وتكون النتيجة نفسها. تبلغ تكلفة الكتابة في التخزين المؤقت لمدة 1 ساعة 2x، ويحدث التعادل عند N = 2.11، أو عند نحو 2.05 مع القراءات الأرخص، لذلك تحتاج إلى قراءتين.
لماذا تكون قيمة cache_read_input_tokens صفراً دائماً؟
تحقق أولاً من طول prefix: إذا كان أقل من الحد الأدنى للنموذج، وهو 512 tokens في Claude Opus 5 و4,096 في Claude Haiku 4.5 اعتباراً من October 2026، فسيُتخطى التخزين المؤقت بصمت، وستكون قيمتا العدادين 0. إذا كان prefix طويلاً بما يكفي، فابحث عن محتوى يتغير بين الطلبات عند breakpoint أو قبله، مثل timestamp أو session identifier داخل system prompt. إذا كان العدادان يعملان ثم توقفا، فهذا يعني أن الفاصل بين الطلبات تجاوز مدة بقاء التخزين المؤقت.
هل يغيّر prompt caching إجابات Claude؟
لا. يخزّن التخزين المؤقت الشكل المعالَج من tokens التي أرسلتها مسبقاً، ويرى النموذج prompt نفسه في الحالتين. هذه ميزة للفوترة وزمن الاستجابة، وليست تغييراً في السلوك. وهذا يعني أيضاً أنه يمكنك تفعيله على prompt يعمل دون إعادة تشغيل التقييمات.
هل ينبغي أن أدفع مقابل التخزين المؤقت لمدة 1 ساعة؟
فقط عندما تتجاوز الفواصل في حركة الطلبات 5 دقائق، ويظل معدل الإصابات لديك أعلى من نحو 53 بالمئة، أو نحو 51 بالمئة في نموذج ذي تكلفة قراءة أقل. عند حدوث miss، تكلف الكتابة بسعر 2x أربعة أضعاف تكلفة الكتابة بسعر 1.25x. يؤدي فشل كتابة لمدة 1 ساعة إلى هدر كامل السعر الأساسي لإدخال prefix، بينما لا تهدر كتابة لمدة 5 دقائق سوى ربع هذه التكلفة. يُحدَّث إدخال التخزين المؤقت لمدة 5 دقائق عند كل hit، لذلك تُبقيه حركة الطلبات المنتظمة نشطاً بأسعار القراءة دون دفع تكلفة مدة البقاء الأطول.