الخطأ 504: ماذا تفعل عندما يفشل claude-sonnet-5
يعني الرمز 504 أن البوابة انتهت مدة انتظارها للنموذج المصدر: أُرسل الطلب، لكن المصدر لم يستجب خلال المهلة التي تسمح بها البوابة.
رمز 504 Gateway Timeout يعني أن البوابة توقفت عن انتظار استجابة المورّد. تم تحويل الطلب، لكن لم تعد أي نتيجة خلال المهلة المحددة. تقصير المخرجات، أو تفعيل البث المباشر، أو تقليل max_tokens يحل المشكلة عادةً.
claude-sonnet-5 مقدمة من Anthropic. كل ما في هذه الصفحة — الأسباب والحلول والبيانات المقاسة — مستقى من السلوك التشغيلي الفعلي لهذا النموذج على مستوى البوابة.
في هذه البوابة، السبب الأكثر شيوعًا هو: استغرق المصدر وقتاً أطول من مهلة البوابة. والإجراء الأول الموصى به هو: انتقل إلى الإخراج بالبث.
الأسباب الشائعة
- استغرق المصدر وقتاً أطول من مهلة البوابة
- سياق طويل رفع زمن الاستدلال
- عقدة المصدر متوقفة
- طلب بدون بث بمخرجات طويلة جداً
كيفية الإصلاح
- انتقل إلى الإخراج بالبث
- قصّر السياق وقلّل max_tokens
- أعد المحاولة بعد انتظار قصير
- استخدم نموذجاً أسرع في الاستدلال
مثال على إعادة المحاولة مع تأخير أُسّي
الكود أدناه يعيد المحاولة عندما يُرجع claude-sonnet-5 الخطأ 504، حتى 5 محاولات، مع وقت انتظار متزايد وتشويش عشوائي حتى لا تُعيد الطلبات المتوازية المحاولة في اللحظة نفسها. اقرأ base URL ومفتاح API من متغيرات البيئة ولا تثبّتها داخل الكود.
import os, time, random
import requests
BASE = os.getenv("OPENAI_BASE_URL") # e.g. https://<your-gateway>/v1
KEY = os.getenv("OPENAI_API_KEY")
MODEL = 'claude-sonnet-5'
def chat(messages, retries=5):
"""Retry with exponential backoff + jitter."""
for i in range(retries):
try:
r = requests.post(
BASE + "/chat/completions",
headers={"Authorization": "Bearer " + KEY},
json={"model": MODEL, "messages": messages, "stream": True},
timeout=60,
)
if r.status_code == 429 or r.status_code >= 500:
time.sleep(min(2 ** i + random.uniform(0, 1), 30))
continue
r.raise_for_status()
return r.json()
except requests.exceptions.Timeout:
time.sleep(min(2 ** i + random.uniform(0, 1), 30))
raise RuntimeError("gave up after " + str(retries) + " retries")
print(chat([{"role": "user", "content": "hello"}]))بيانات أساسية لهذا النموذج
| نقطة نهاية API | https://api.airai.cc/v1 |
|---|---|
| متوافق مع OpenAI | OpenAI-compatible |
| المزوّد | Anthropic |
|---|---|
| السياق | 1M |
| القدرات | Reasoning, Tools, Files, Vision |
| صيغ API | openai, openai-response, openai-response-compact, anthropic, gemini, openai-alpha-search |
| صيغة الفوترة | p * 2 + cr * 0.2 + cc * 2.5 + cc1h * 4 + c * 10 |
الأسئلة الشائعة
كم يجب أن يستمر 504 على claude-sonnet-5 قبل التواصل مع الدعم؟
احتفظ بمعرّف الطلب ونص الاستجابة الخام، وإلا لا يمكن تتبّع شيء. إذا حدث ذلك في بيئة الإنتاج فقط، فالسبب غالباً فرق في البيئة لا في النموذج. هذا النموذج مقدّم من Anthropic، وبالتالي حالة المصدر تتبع إعلانات المزوّد. سجّل معرّف الطلب عند كل فشل — هو أنفع من رمز الحالة.
هل يقلل الانتقال إلى نموذج أصغر من 504؟
احتفظ أيضاً بنموذج احتياطي جاهز. وجود بديل على مستوى بنية النظام أوثق من إصلاح كل خطأ على حدة. لهذا النموذج من Anthropic عدة عقد upstream يمكن للبوابة التبديل بينها. جهّز نموذجاً احتياطياً أخفّ حتى لا ينقطع المسار الرئيسي. ضع اسم النموذج في الإعدادات، فلا يحتاج تغيير المصدر إلى تعديل الكود.
هل سيتم خصم رسوم عندما يُرجع claude-sonnet-5 الخطأ 504؟
لا توجد رسوم، فالمخرجات التي أُنتجت فعلياً فقط هي ما يُحتسب ضمن الاستخدام. تُحاسب فقط على المخرجات التي أُنتجت بالفعل، أما الجزء الفاشل فلا. سعر الإدخال نحو $2.00 لكل مليون رمز. تحقق من الرصيد وحدود المعدل في لوحة التحكم أولاً، ثم افحص الكود. عند تقدير التكلفة من p * 2 + cr * 0.2 + cc * 2.5 + cc1h * 4 + c * 10، أدخل ميزانية إعادة المحاولة أيضاً.
هل يرتبط 504 بقدرة النموذج نفسه؟
هذا الخطأ لا علاقة له بقدرة النموذج، بل هو على مستوى البوابة. في أغلب الحالات هو أمر مؤقت ويعود من تلقاء نفسه. وسوم قدرات هذا النموذج هي Reasoning, Tools, Files, Vision. إذا استمر الخطأ عدة دقائق، تواصل مع دعم المنصة للتأكد من حالة المصدر. حدّد أولاً إن كان على مستوى الحساب أم مستوى النموذج؛ التعامل معهما مختلف تماماً.
أخطاء أخرى في هذا النموذج
- claude-sonnet-5: خطأ 429 — الأسباب والحلول
- claude-sonnet-5: خطأ timeout — الأسباب والحلول
- claude-sonnet-5: خطأ 500 — الأسباب والحلول
- claude-sonnet-5: خطأ 502 — الأسباب والحلول
- claude-sonnet-5: خطأ 503 — الأسباب والحلول
- claude-sonnet-5: خطأ 401 — الأسباب والحلول
- claude-sonnet-5: خطأ 403 — الأسباب والحلول
- claude-sonnet-5: خطأ 400 — الأسباب والحلول
نماذج أخرى تواجه الخطأ نفسه
- gpt-5
- claude-opus-5
- gemini-2.5-pro
- deepseek-v4-pro
- grok-4.3
- llama-3.3-70b-instruct
- qvq-max
- qwq-32b
- glm-5
- MiniMax-M3
- kimi-k3
- hy3
- doubao-seed-evolving
- mimo-v2.5
- gpt-4o
- claude-opus-4-6
تحديث البيانات: 2026-10-10 15:40