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

الخطأ الوحيد في Claude الذي لم يكن يوماً بسببك. ارتفعت الحركة فجأة على المنصة كلها، وAPI يتخلص من الحمل، ومهمتك الوحيدة أن تنتظر بذكاء.

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

AnthropicHTTP 529الخطورة: متوسطةضغط على الخادم

ماذا يقول لك الخطأ 529

كل رمز حالة آخر في جدول Anthropic يشير إلى شيء تتحكم فيه أنت: 401 يعني مفتاحاً خاطئاً، و400 يعني جسم طلب مشوّهاً، و429 يعني أن حسابك بلغ حداً. أما 529 فمختلف: يُطلَق حين ترتفع الحركة على كل المستخدمين في وقت واحد، وهذا ما يجعله خطأ Claude الوحيد الذي يخص الجميع لا أنت. والرسالة حرفية: "The API is temporarily overloaded." صباحات الإطلاق هي المشهد الكلاسيكي. ينزل نموذج جديد، فيجرّبه نصف القطاع قبل الغداء، فتتخلص المنصة من الحمل لتبقى واقفة.

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

جسم الرد

{
  "type": "error",
  "error": {
    "type": "overloaded_error",
    "message": "The API is temporarily overloaded."
  },
  "request_id": "req_011CSHoEeqs5C35K2UUqR7Fy"
}

ثلاث عادات تستحق أن تربطها في كودك وأنت هنا. فرّع بناءً على حقل type، وفي كود الـ SDK التقط أصناف الاستثناء المعنونة (بايثون يرفع أشياء مثل anthropic.RateLimitError) بدل مطابقة نص الرسائل. احفظ request_id، وهو يصل أيضاً في كل رد كترويسة مسبوقة بـ req_؛ وتذاكر الدعم التي تتضمنه تُحَل أسرع. وإن كنت تستخدم البث، فتذكّر أنه مع الأحداث المُرسَلة من الخادم قد يصل خطأ بعد وصول رمز 200، فسطر حالة نظيف ليس نهاية القصة.

أعد المحاولة كمواطن صالح

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

# Python: إعادة محاولة متشتتة تحت مهلة، ثم قطع الدائرة
import random, time
import anthropic

client = anthropic.Anthropic()

def create_with_deadline(deadline_s=120, **kwargs):
    start = time.monotonic()
    attempt = 0
    while time.monotonic() - start < deadline_s:
        try:
            return client.messages.create(**kwargs)
        except anthropic.APIStatusError as e:
            if e.status_code not in (429, 529):
                raise
            attempt += 1
            time.sleep(min(30, 2 ** attempt) * random.random())
    raise RuntimeError("circuit open: still overloaded at deadline")

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

صمّم للساعة السيئة

الفرق تصنعه الفرق التي لا تكترث لأخطاء 529 قبل الساعة السيئة، لا أثناءها. ثلاث خطوات تغطي معظم الأمر. ضع طابوراً بسقف تزامن بين منتجك وبين API، حتى يتراكم الضغط في بنيتك أنت لا في بنيتهم. وجّه كل ما يحتمل الانتظار إلى Batch API، الذي يعمل بخصم 50% على تسعير Claude القياسي ويحوّل موجة المنصة إلى لا حدث للمهام بالدفعات. وإن كان زمن التشغيل تعاقدياً، أبقِ مزوّداً ثانياً دافئاً: اختر البديل من التصنيفات مسبقاً، وسعّر التبديل بـالحاسبة، وضعه خلف مفتاح تقلبه دون غرفة طوارئ.

أسئلة شائعة

هل الخطأ 529 خطئي أنا؟

لا. يشير إلى حركة عالية على كل مستخدمي Anthropic، لا إلى مشكلة في حسابك. لكن سلوك إعادة المحاولة لديك يظل مهماً: حلقات الإرسال المتلاحقة بلا تشتيت تنضم إلى الزحام وتطيل فترة التعافي.

ما الفرق بين 429 و529؟

الخطأ 429 (rate_limit_error) يعني أن حسابك بلغ حداً؛ أما 529 فيعني أن المنصة تحت ضغط من الجميع في وقت واحد. وهناك مأخذ واحد: الارتفاع الحاد في حركتك أنت قد يُطلق أخطاء 429 من حدود التسارع حتى وأنت دون سقفك، لذا فرّع بناءً على حقل نوع الخطأ بدل التخمين.

هل أبدّل المزوّد حين تتوالى أخطاء 529؟

فقط إن كان البديل جاهزاً سلفاً: مُختبَراً ومُسعَّراً وخلف مفتاح تستطيع قلبه. تجهيز مزوّد جديد في منتصف العطل يستبدل خطأً مؤقتاً بكود غير مختبَر في الإنتاج، وهذه عادةً الساعة الأسوأ.

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

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

المراجع

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