خطأ rate_limit_error من Anthropic: المعنى والسبب والحل

قد تفرض Anthropic الحد بسبب حجم الاستخدام المستمر أو بسبب ارتفاعه المفاجئ. تساعدك ترويسات الاستجابة ونمط الطلبات الأخير على التفريق بين الحالتين.

بقلم فريق benchr · · تم التحقق من توثيق أخطاء API لدى Anthropic في 12 يونيو 2026

AnthropicHTTP 429الخطورة: متوسطةحد استخدام

سببان للخطأ

السبب الأول هو بلوغ حد الطلبات أو التوكنات في الفئة الحالية. حدّد أيهما نفد، لأن الحل يختلف: إذا بلغت حد الطلبات فقلّل عدد الاستدعاءات أو اجمعها، وإذا بلغت حد التوكنات فاختصر التعليمات واضبط max_tokens على قدر الحاجة.

السبب الثاني هو رفع الاستخدام بسرعة كبيرة. توضح Anthropic أن الزيادة المفاجئة قد تطلق أخطاء 429 حتى قبل بلوغ الحد المعلن. ارفع الحركة تدريجياً وحافظ على نمط ثابت. وإذا ظهر الخطأ مع استخدام مستقر، فافحص احتمال وجود ضغط عام على المنصة؛ وهذا ما يشرحه دليل الخطأ 529.

محتوى الرد

{
  "type": "error",
  "error": {
    "type": "rate_limit_error",
    "message": "Your account has hit a rate limit."
  },
  "request_id": "req_011CSHoEeqs5C35K2UUqR7Fy"
}

فرّع بناءً على حقل type. يُظهر SDK بايثون هذا بصيغة anthropic.RateLimitError، فالتقط صنف الاستثناء؛ نصوص الرسائل صياغة لا عقد. كل رد يحمل أيضاً ترويسة request-id مسبوقة بـ req_ تكشفها الـ SDKs، وحين يتحول سؤال عن الحدود إلى تذكرة دعم، يكون ذلك المعرّف هو الفارق بين جواب سريع وآخر بطيء.

اضبط التزامن قبل الإرسال

تعالج فترات الانتظار الخطأ بعد وقوعه، لكن تحديد عدد الطلبات المتزامنة يمنع كثيراً من الحالات من الأصل. استخدم مجموعة ثابتة من العمال أو محدِّد تزامن بسيط، ثم ارفع الحد تدريجياً بعد مراقبة النتائج:

# Python: بركة عمّال تحوّل الدفعات إلى تدفّق ثابت
import asyncio
import anthropic

client = anthropic.AsyncAnthropic()
gate = asyncio.Semaphore(8)        # سقف الطلبات الجارية؛ اضبطه على فئتك

async def ask(prompt: str):
    async with gate:
        return await client.messages.create(
            model="claude-haiku-4-5",
            max_tokens=512,
            messages=[{"role": "user", "content": prompt}],
        )

async def run(prompts):
    return await asyncio.gather(*(ask(p) for p in prompts))

تنتج مجموعة ثابتة من ثمانية عمال تدفقاً محدوداً حتى لو تراكمت المهام في الطابور. ارفع العدد على مراحل، وراقب أخطاء 429 ومعدل الإنجاز قبل كل زيادة.

خفّض الحمل من دون التأثير في الجودة

إذا تكررت أخطاء 429 طوال اليوم، فغالباً تجاوز الاستخدام سعة الخطة. استخدم التخزين المؤقت للتعليمات المتكررة، وانقل المهام التي تحتمل الانتظار إلى Batch API، ووجّه الطلبات البسيطة إلى Claude Haiku 4.5 حين يلائم المهمة. استخدم الحاسبة لمقارنة أثر هذه الخيارات على الفاتورة.

أسئلة شائعة

لماذا تصلني أخطاء 429 وأنا دون حدودي المعلنة؟

حدود التسارع. تحذّر وثائق Anthropic من أن الزيادات الحادة في الاستخدام قد تجذب أخطاء 429 حتى وأنت تحت أرقام فئتك. انمُ تدريجياً وأبقِ أنماط الحركة ثابتة؛ فالنمو العمودي هو المُطلِق.

هل يحل التراجع الأسّي هذه المشكلة؟

للموجات، نعم. التراجع المتشتت يمتص الدفعات وعقوبة التصاعد العابرة بنظافة. أما لأخطاء 429 التي تصل كل ساعة، فلا: تلك حالة نقص حجم مزمنة، وحلها تشكيل الحركة، وتخزين السياق المتكرر، ونقل العمل بالدفعات إلى Batch API.

ما أرخص طريقة لخفض إنتاجية التوكنز؟

تخزين الموجّهات مع التوجيه. التخزين يخصم سياق الإدخال المتكرر بنسبة 90%، وإرسال الاستدعاءات البسيطة إلى Claude Haiku 4.5 بسعر 1$/5$ لكل مليون توكن يزيح أثقل الحركة عن نموذجك الأغلى.

سجل التغييرات

  • — نُشر. تم التحقق من سلوك حدود الاستخدام، ومأخذ حدود التسارع، وشكل الرد، وفق توثيق أخطاء API لدى Anthropic.

المراجع

  • Anthropic API errors — platform.claude.com/docs/en/api/errors (تم التحقق في 12 يونيو 2026)
  • benchr api-errors.json، السجل المُهيكَل لهذا الخطأ