المظهر
اللغة
·3 دقائق للقراءة

التخزين المؤقت للمطالبات: كيفية خفض تكلفة المطالبات المتكررة

كيف يعمل التخزين المؤقت للمطالبات في GetVibe API: التخزين المؤقت التلقائي لنماذج OpenAI، واستخدام cache_control مع Claude، وما الذي يعنيه cacheReadMult وكيفية الحفاظ على بادئة قابلة للتخزين المؤقت.

التخزين المؤقت للمطالبات: كيفية خفض تكلفة المطالبات المتكررة

تتكرر معظم حركة مرور نماذج LLM. يعيد chatbot إرسال مطالبة النظام نفسها في كل دور، ويعيد الوكيل إرسال تعريفات أدواته والمحادثة كاملة حتى تلك اللحظة. يتيح التخزين المؤقت للمطالبات للنموذج قراءة هذه السابقة المتكررة من ذاكرة التخزين المؤقت، وتُحتسب تكلفة الإدخال المخزن مؤقتًا بجزء من سعر الإدخال العادي. يوضح هذا الدليل كيفية عمل ذلك على GetVibe API وكيفية تحقيق أقصى استفادة منه.

ما تدفعه مقابل الإدخال المخزن مؤقتًا

يسرد كل نموذج نصي في كتالوجنا شروط التخزين المؤقت الخاصة به. في https://getvibeapi.com/api/catalog، يحتوي كل إصدار من إصدارات النماذج على:

  • cachedInputUsd: السعر لكل 1M من رموز الإدخال المخزنة مؤقتًا.
  • cacheReadMult: سعر الإدخال المخزن مؤقتًا كنسبة من سعر الإدخال العادي.
  • cacheWriteMult: كيفية احتساب تكلفة الكتابة إلى ذاكرة التخزين المؤقت مقارنةً بالإدخال العادي.

حتى وقت كتابة هذا الدليل، تعرض جميع النماذج النصية تقريبًا cacheReadMult: 0.1، ما يعني أن تكلفة رمز الإدخال المخزن مؤقتًا تساوي عُشر تكلفة الرمز العادي، كما تعرض cacheWriteMult: 1. الاستثناء الوحيد هو Claude Fable 5.1، الذي تبلغ قيمة القراءة لديه 0.025 والكتابة 1.25. قد تتغير هذه القيم، لذا اقرأها من الكتالوج أو من صفحة كل نموذج بدلًا من تثبيتها في الكود.

النموذجالسعر (الإدخال · الإخراج)
Claude Opus 5.5$0.1067 الإدخال · $0.5334 الإخراج لكل مليون رمز
GPT-6 Sol$0.1096 الإدخال · $0.548 الإخراج لكل مليون رمز
DeepSeek V4.1 Flash$0.0112 الإدخال · $0.0445 الإخراج لكل مليون رمز

تسرد صفحات النماذج سعر الإدخال المخزن مؤقتًا بجوار هذه الأرقام.

نماذج OpenAI: تلقائي

في /v1/chat/completions، تُخزّن نماذج عائلة OpenAI مؤقتًا تلقائيًا. عندما تبدأ عدة طلبات بالسابقة المستقرة نفسها، تُقرأ تلك السابقة من ذاكرة التخزين المؤقت. لا تحتاج إلى أي حقل خاص. المهم هو ألا يتغير بداية الطلب. نمرر جسم الطلب كما هو، بايتًا مقابل بايت، من دون إعادة ترتيب الحقول، لذلك تظل السابقة المتطابقة من جانبك متطابقة في الجهة upstream.

Claude: نقاط التوقف cache_control

لا يخزّن Claude مؤقتًا إلا عندما يحمل الطلب نقطة توقف cache_control صريحة. تكرار السابقة وحده لا يفعّل التخزين المؤقت. ضع نقطة التوقف في نهاية الجزء الذي لا يتغير:

curl https://getvibeapi.com/v1/messages \
  -H "x-api-key: $GETVIBE_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-opus-5.5",
    "max_tokens": 256,
    "system": [
      {"type": "text", "text": "تعليمات ثابتة كبيرة تستحق التخزين المؤقت...",
       "cache_control": {"type": "ephemeral"}}
    ],
    "messages": [{"role": "user", "content": "سؤال حول التعليمات"}]
  }'

إذا لم ترسل نقطة توقف بنفسك، يضيفها gateway بالنيابة عنك، على كل من /v1/messages و/v1/chat/completions. وإذا كنت تدير نقاط التوقف بنفسك، فستظل العلامات التي أضفتها كما هي.

خمس قواعد لمطالبة قابلة للتخزين المؤقت

  1. ضع المحتوى الثابت أولًا والمحتوى المتغير أخيرًا. ضع مطالبة النظام وتعريفات الأدوات والمستندات المرجعية في الأعلى. وتأتي رسالة المستخدم الجديدة في النهاية.
  2. لا تضع الطوابع الزمنية أو معرّفات الطلبات في السابقة. يؤدي تغيّر حرف واحد بالقرب من البداية إلى إبطال كل ما يليه.
  3. حافظ على ترتيب ثابت لتعريفات الأدوات. يؤدي إنشاء قائمة الأدوات من map غير مرتبة إلى تغيير السابقة في كل استدعاء.
  4. أضف السجل، ولا تعِد كتابته. يكسر الوكلاء الذين يلخصون الأدوار السابقة أو يعيدون ترتيبها ذاكرة التخزين المؤقت. أضف الأدوار الجديدة في النهاية.
  5. التزم بنموذج واحد. ترتبط ذاكرة التخزين المؤقت بنموذج، لذا يؤدي تبديل النماذج في منتصف المحادثة إلى البدء من دون بيانات مخزنة مؤقتًا.

تحقق من عمله

انظر إلى كائن usage في الاستجابة. في تنسيق OpenAI، تظهر الرموز المخزنة مؤقتًا ضمن prompt_tokens_details.cached_tokens. وفي تنسيق Anthropic، ابحث عن cache_read_input_tokens وcache_creation_input_tokens. كما يعرض قسم الاستخدام في لوحة التحكم نسبة نجاح التخزين المؤقت لكل نموذج. إذا ظل عدد الرموز المخزنة مؤقتًا صفرًا عبر الطلبات المتطابقة، فهذا يعني أن شيئًا ما في سابقتك يتغير.

الخطوات التالية

اقرأ وثائق التخزين المؤقت، وأعد إعداد Claude Code على endpoint مخصص (يستفيد الوكلاء أكثر من التخزين المؤقت)، أو قارن الأسعار المخزنة مؤقتًا في صفحة Models.

التخزين المؤقت للمطالباتتكلفة واجهة برمجة تطبيقات نماذج اللغة الكبيرةسعر الإدخال المخزن مؤقتًاClaude cache_controlالتخزين المؤقت لمطالبات OpenAIخفض تكلفة واجهة برمجة تطبيقات نماذج اللغة الكبيرة

جرّب GetVibe API مجانًا

GPT وClaude وGemini والمزيد من خلال واجهة API واحدة متوافقة مع OpenAI. ادفع بالدولار الأمريكي عبر البطاقة أو العملات الرقمية.

مقالات ذات صلة

التخزين المؤقت للمطالبات: كيفية خفض تكلفة المطالبات المتكررة | GetVibe API