إجابة سريعة: يخفض التخزين المؤقت للمطالبات (Prompt Caching) تكاليف إدخال واجهات برمجة تطبيقات LLM بنسبة 50% إلى 90% ويقلص زمن الوصول للرمز الأول (TTFT) بنسبة تصل إلى 85% عبر إعادة استخدام موترات KV المخزنة. تقدم Anthropic خصم قراءة بنسبة 90% مع نقاط توقف صريحة (حد أدنى 1,024 رمزاً). وتوفر OpenAI خصماً تلقائياً بنسبة 50% دون رسوم كتابة. بينما تتيح DeepSeek وفورات تتراوح بين 80% و90% بدءاً من 64 رمزاً فقط مع تخزين NVMe دائم.
1. المقدمة: اقتصاديات الحالة في واجهات برمجة تطبيقات LLM عديمة الحالة
تعتمد واجهات برمجة تطبيقات النماذج اللغوية الكبيرة (LLMs) الحديثة معمارياً على مبدأ انعدام الحالة (Stateless): يجب على كل طلب HTTP POST يُرسل إلى /v1/chat/completions أو /v1/messages أن ينقل سجل المحادثة الكامل، وتعليمات النظام، وتعريفات الأدوات والمستندات المرجعية. ورغم أن هذا التصميم يسهل موازنة الأحمال والتوسع الأفقي لمجموعات وحدات معالجة الرسومات (GPU Clusters)، إلا أنه يفرض أعباء حسابية ومالية باهظة على مسارات عمل الوكلاء متعددي الجولات.
في حلقات الوكلاء المستقلين — مثل Claude Code أو Roo Code أو Aider أو Devin أو محركات RAG للمؤسسات — يعيد الوكيل باستمرار إرسال مطالبات نظام متطابقة، ومخططات OpenAPI، وتعاريف بروتوكول سياق النموذج (MCP)، ولقطات من قاعدة التعليمات البرمجية. وبحلول الجولة 15 من مهمة برمجية نموذجية، تكون 95% إلى 98% من جميع الرموز المنقولة عبارة عن بادئات ثابتة (Static Prefixes) قام النموذج بمعالجتها بالفعل عدة مرات.
تاريخياً، فرض موفرو السحابة السعر الأساسي الكامل لكل رمز في كل جولة، مما أجبر وحدات الاستدلال على تكرار عمليات ضرب المصفوفات الكثيفة (مرحلة Prefill) على سياق لم يتغير. يحل التخزين المؤقت للمطالبات (Prompt Caching) هذه المعضلة جذرياً؛ فمن خلال تخزين موترات تنشيط Key-Value (KV) المحسوبة مسبقاً في ذاكرة GPU عالية النطاق (HBM) أو ذاكرة المضيف أو أقراص NVMe فائقة السرعة، يتجاوز محرك الاستدلال حسابات Prefill الزائدة تماماً.
تحقق فرق الهندسة التي تطبق تقنية Prompt Caching بشكل منهجي تخفيضاً بنسبة 60% إلى 88% في إجمالي فواتير API، مع تقليل زمن إنتاج أول رمز (TTFT) من عدة ثوانٍ إلى بضع مئات من الأجزاء من الثانية.
2. التحليل المعماري: آليات ذاكرة KV وعنق زجاجة مرحلة Prefill
لفهم الجدوى الاقتصادية للتخزين المؤقت للمطالبات، يجب على المهندسين إدراك القيود المادية لاستدلال نماذج Transformer على معالجات الذكاء الاصطناعي الحديثة (NVIDIA H100/B200 وGoogle TPU v5e/v6e).
مسار الاستدلال التقليدي عديم الحالة:
[مطالبة النظام الثابتة + مخططات الأدوات + السجل (64,000 رمز)]
│
▼
[مرحلة Prefill الكاملة (O(N²) FLOPs)]
ضرب المصفوفات يعيد حساب جميع قيم Q و K و V
│
▼
[توليد أول رمز (TTFT: 2.8 ثانية)]
[التكلفة: سعر الإدخال الأساسي الكامل × 64,000 رمز]
مسار الاستدلال مع تفعيل Prompt Caching:
[بادئة ثابتة (60,000 رمز)] ──► [تطابق تام لتجزئة البادئة!] ──► [تحميل موترات KV المخزنة]
│ (تخطي حسابات المصفوفات)
[استعلام ديناميكي (4,000)] ──► [حساب Prefill للفرق فقط] ─────────────┤
▼
[توليد أول رمز (TTFT: 0.35 ثانية)]
[التكلفة: سعر القراءة × 60k + الأساسي × 4k]
عنق الزجاجة الحسابي لآلية الانتباه الذاتي
في آلية الانتباه الذاتي متعددة الرؤوس، يتم إسقاط رموز الإدخال في مصفوفات الاستعلام ($Q$) والمفتاح ($K$) والقيمة ($V$):
$$\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V$$
خلال مرحلة Prefill، تعالج وحدة معالجة الرسومات كافة رموز المطالبة بشكل متوازٍ. ونظراً لأن الانتباه الذاتي يقيّم العلاقات بين كل زوج من الرموز، فإن التعقيد الحسابي (FLOPs) يتصاعد تربيعياً مع طول التسلسل $N$:
$$\text{FLOPs}_{\text{prefill}} \approx 2 \cdot P \cdot N^2 + 4 \cdot N \cdot d_{\text{model}} \cdot d_{\text{ffn}}$$
حيث $P$ هو عدد معلمات النموذج. بالنسبة لنموذج يحتوي على 70 مليار معلمة ومطالبة مكونة من 64,000 رمز، تتطلب مرحلة Prefill وحدها نحو $5.8 \times 10^{14}$ عملية نقطة عائمة قبل إنتاج رمز واحد.
في مرحلة فك التشفير (Decode)، تُولد الرموز تتابعياً واحداً تلو الآخر. ولتجنب إعادة حساب الرموز السابقة، تُحفظ متجهات التنشيط $K$ و $V$ في الذاكرة — وهذا ما يُعرف بـ KV Cache. وتُحسب المساحة التي يشغلها كل رمز عبر $L$ من الطبقات و $H_{kv}$ من الرؤوس بالمعادلة التالية:
$$\text{Memory}_{\text{KV}} = 2 \times 2 \times L \times H_{kv} \times D \quad \text{(بايت بتنسيق FP16 / BF16)}$$
يوسع Prompt Caching هذه الذاكرة عبر طلبات HTTP المستقلة، مما يؤدي عند تطابق التجزئة إلى استدعاء الموترات فوراً وإلغاء مرحلة Prefill.
3. مصفوفة المقارنة بين المزودين: Anthropic مقابل OpenAI مقابل DeepSeek
| البُعد المعماري | Anthropic Claude | OpenAI (GPT-4o / o1 / o3) | DeepSeek (V3 / V4 / R1) |
|---|---|---|---|
| آلية التفعيل | نقاط توقف صريحة (cache_control) |
مطابقة تلقائية لأطول بادئة مشتركة | مطابقة تلقائية لأطول بادئة مشتركة |
| الحد الأدنى للتنشيط | 1,024 رمزاً (Sonnet/Opus) 2,048 رمزاً (Haiku) |
1,024 رمزاً | 64 رمزاً (محاذاة كتل الذاكرة) |
| تدرج الكتل | نقاط محددة (بحد أقصى 4 لكل طلب) | زيادات بمقدار 128 رمزاً بعد 1024 | محاذاة دقيقة لكتل 64 رمزاً |
| مدة البقاء (TTL) | 5 دقائق (افتراضي مؤقت) ساعة واحدة (المستوى الموسع) |
5 إلى 10 دقائق (استبعاد ديناميكي LRU) | عدة ساعات إلى دائم (تخزين NVMe) |
| تجديد مدة البقاء | يُعاد ضبطها عند كل إصابة | تمديد مستمر أثناء الاستخدام | استقرار في وسائط التخزين الثانوية |
| رسوم الكتابة (Write) | +25% (1.25x لسعر 5 دقائق) +100% (2.0x لسعر ساعة واحدة) |
$0.00 (سعر الإدخال الأساسي 1.0x) | $0.00 (سعر الإدخال الأساسي 1.0x، دون رسوم) |
| خصم القراءة (Read) | خصم 90% (0.10x من السعر الأساسي) | خصم 50% (0.50x من السعر الأساسي) | خصم 75% إلى 90% (0.10x–0.25x أساسي) |
| رسوم التخزين | مشمولة في رسوم الكتابة الإضافية | مجاناً | مجاناً (تخزين مدعوم على NVMe) |
| تقليص زمن الاستجابة | أسرع بنسبة تصل إلى 85% | أسرع بنسبة تصل إلى 50% | أسرع بنسبة تصل إلى 80% |
4. جدول الأسعار التفصيلي لجميع النماذج (بالدولار لكل مليون رمز)
| اسم النموذج | إدخال أساسي ($/1M) | كتابة الكاش ($/1M) | قراءة الكاش ($/1M) | نسبة الخصم | إخراج أساسي ($/1M) | الحد الأدنى |
|---|---|---|---|---|---|---|
| Claude 3.5 / 3.7 Haiku | $0.80 | $1.00 (5m) / $1.60 (1h) | $0.08 | 90.0% | $4.00 | 2,048 رمزاً |
| Claude 3.7 Sonnet | $3.00 | $3.75 (5m) / $6.00 (1h) | $0.30 | 90.0% | $15.00 | 1,024 رمزاً |
| Claude 3 Opus / Opus 4.6 | $15.00 | $18.75 (5m) / $30.00 (1h) | $1.50 | 90.0% | $75.00 | 1,024 رمزاً |
| OpenAI GPT-4o mini | $0.15 | $0.15 | $0.075 | 50.0% | $0.60 | 1,024 رمزاً |
| OpenAI GPT-4o | $2.50 | $2.50 | $1.25 | 50.0% | $10.00 | 1,024 رمزاً |
| OpenAI o1 | $15.00 | $15.00 | $7.50 | 50.0% | $60.00 | 1,024 رمزاً |
| OpenAI o3-mini | $1.10 | $1.10 | $0.55 | 50.0% | $4.40 | 1,024 رمزاً |
| DeepSeek V3 / V4 (خارج الذروة) | $0.14 | $0.14 | $0.014 | 90.0% | $0.28 | 64 رمزاً |
| DeepSeek V3 / V4 (الذروة) | $0.27 | $0.27 | $0.027 | 90.0% | $1.10 | 64 رمزاً |
| DeepSeek R1 (استدلال تفكيري) | $0.55 | $0.55 | $0.14 | 74.5% | $2.19 | 64 رمزاً |
| Google Gemini 2.5 Flash | $0.15 | $0.15 | $0.0375 | 75.0% | $0.60 | 32,768 رمزاً |
| Google Gemini 2.5 Pro | $1.25 | $1.25 | $0.3125 | 75.0% | $5.00 | 32,768 رمزاً |
5. الصياغة الرياضية وإثبات نقطة التعادل والتوفير بنسبة 90%
حساب نقطة التعادل ($N^*$)
بالنسبة لـ Anthropic مع إضافة 25% عند الكتابة ($R_{\text{write}} = 1.25 R_{\text{base}}$ و $R_{\text{read}} = 0.10 R_{\text{base}}$):
$$1.25 + 0.10(N - 1) \le N \implies 1.15 \le 0.90N \implies N \ge \frac{1.15}{0.90} \approx 1.278$$
مبرهنة 1: مع مدة بقاء 5 دقائق في Anthropic، يحقق التخزين المؤقت أرباحاً صافية بدءاً من الجولة الثانية مباشرة (N = 2).
أما مع مدة بقاء ساعة واحدة ($R_{\text{write}} = 2.0 R_{\text{base}}$):
$$2.0 + 0.10(N - 1) \le N \implies 1.90 \le 0.90N \implies N \ge 2.11$$
مبرهنة 2: مع خيار الساعة الواحدة في Anthropic، يتم الوصول إلى نقطة التعادل في الجولة الثالثة (N = 3).
إثبات الحد الأقصى للتوفير بنسبة 90%
في الجلسات الطويلة مع اتجاه $N \to \infty$:
$$\lim_{N \to \infty} S(N) = 1 - \frac{R_{\text{read}}}{R_{\text{base}}}$$
- Anthropic وDeepSeek: $1 - 0.10 = \mathbf{90.0\%}$ نسبة التوفير القصوى.
- OpenAI: $1 - 0.50 = \mathbf{50.0\%}$ نسبة التوفير القصوى.
6. أمثلة التنفيذ البرمجي
Anthropic Claude (Python)
import anthropic
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-3-7-sonnet-20250219",
max_tokens=2048,
system=[
{
"type": "text",
"text": "دليل البنية الهندسية الشاملة...\n" * 400,
"cache_control": {"type": "ephemeral"} # نقطة توقف
}
],
messages=[{"role": "user", "content": "أعد هيكلة وحدة المصادقة."}]
)
print("الرموز المقروءة من الذاكرة:", getattr(response.usage, "cache_read_input_tokens", 0))
OpenAI (TypeScript / Node.js)
import OpenAI from "openai";
const openai = new OpenAI();
const res = await openai.chat.completions.create({
model: "gpt-4o",
messages: [
{ role: "system", content: "إرشادات الدعم المؤسسي الثابتة...\n".repeat(400) },
{ role: "user", content: "تحقق من حالة الشحنة #101" }
]
});
console.log("الرموز المخزنة مؤقتاً:", (res.usage as any)?.prompt_tokens_details?.cached_tokens ?? 0);
7. دراسات حالة إنتاجية من الواقع
- وكيل البرمجة المستقل (Claude Code، مستودع 250k سطر): انخفضت التكلفة الشهرية لـ 20 مهندساً من 29,700 دولار إلى 4,334 دولار شهرياً (توفير صافٍ 85.4%).
- نظام RAG للمستندات التنظيمية (OpenAI GPT-4o): انخفضت تكلفة 50,000 استعلام شهري من 5,625 دولار إلى 2,975.63 دولار شهرياً (توفير 47.1%).
- محرك دعم العملاء الضخم (DeepSeek V3/V4): انخفضت تكلفة مليوني محادثة شهرياً من 3,360 دولار إلى 378.34 دولار شهرياً (توفير 88.7%).
8. خمسة أنماط مضادة تبطل فاعلية التخزين المؤقت
- إدراج طوابع زمنية ديناميكية في مطالبة النظام: تتغير التجزئة كل ثانية مما يجعل نسبة النجاح 0%.
- الترتيب العشوائي لمصفوفة الأدوات (Tools): تسلسل JSON غير المرتب يغير التجزئة؛ يجب ترتيب الأدوات أبجدياً دوماً.
- وضع متغيرات ديناميكية في بداية المطالبة أو وسطها: يتطلب التخزين تطابق البادئة؛ ضع البيانات المتغيرة دائماً في النهاية.
- تجاهل انتهاء صلاحية نافذة 5 دقائق: عند وجود فترات انتظار طويلة، استخدم خيار الساعة الواحدة.
- إرسال مطالبات دون الحد الأدنى (1,024 رمزاً): لا يتم تفعيل التخزين في Anthropic أو OpenAI للمطالبات الصغيرة.
9. التوصية وخلاصة LLMPodium
- لوكلاء البرمجة والتطوير المستقل: Anthropic Claude 3.7 Sonnet يقدم أفضل عائد استثماري بفضل خصم القراءة البالغ 90%.
- للأنظمة القائمة دون تعديل الكود: OpenAI GPT-4o يمنح توفيراً فورياً بنسبة 50% بجهد صفري.
- لأحجام الاستخدام الهائلة بأقل تكلفة: DeepSeek V3/V4 هو الخيار الذي لا يُقهر بفضل حد الـ 64 رمزاً وسعر القراءة البالغ 0.014 دولار لكل مليون رمز.