الخطأ 401: ماذا تفعل عندما يفشل glm-4.5

يعني الرمز 401 أن المصادقة فشلت: الطلب لا يحمل مفتاح API، أو أن المفتاح غير صالح أو محذوف أو منتهي.

رمز 401 Unauthorized يعني أن الطلب لا يحمل بيانات اعتماد صالحة. لم تتمكن البوابة من التعرف على هوية المُستدعي، لذلك لا يصل الطلب إلى النموذج المورّد أبداً. التحقق من ترويسة Authorization وحالة المفتاح هو المسار الوحيد.

glm-4.5 مقدمة من Z.AI. كل ما في هذه الصفحة — الأسباب والحلول والبيانات المقاسة — مستقى من السلوك التشغيلي الفعلي لهذا النموذج على مستوى البوابة.

في هذه البوابة، السبب الأكثر شيوعًا هو: ترويسة Authorization مفقودة. والإجراء الأول الموصى به هو: أرسل الترويسة بالصيغة Authorization: Bearer ثم مفتاحك.

الأسباب الشائعة

  • ترويسة Authorization مفقودة
  • المفتاح مكتوب خطأ أو يحتوي مسافات زائدة
  • تم حذف المفتاح أو تعطيله في صفحة الرموز
  • استُخدم مفتاح من منصة أخرى بالخطأ

كيفية الإصلاح

  • أرسل الترويسة بالصيغة Authorization: Bearer ثم مفتاحك
  • أنشئ مفتاحاً جديداً في صفحة الرموز
  • تأكد من عدم استخدام مفتاح خدمة أخرى
  • تحقق من المفتاح بطلب curl بسيط

مثال على إعادة المحاولة مع تأخير أُسّي

الكود أدناه يعيد المحاولة عندما يُرجع glm-4.5 الخطأ 401، حتى 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 = 'glm-4.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"}]))

بيانات أساسية لهذا النموذج

نقطة نهاية APIhttps://api.airai.cc/v1
متوافق مع OpenAIOpenAI-compatible
المزوّدZ.AI
السياق131.1K
القدراتReasoning, Tools, Open Weights
صيغ APIopenai, openai-response, openai-response-compact, anthropic, gemini, openai-alpha-search
صيغة الفوترةp * 0.6 + cr * 0.11 + cc * 0 + c * 2.2

الأسئلة الشائعة

هل تُحتسب الطلبات الفاشلة ضمن حصة تحديد المعدل؟

لا توجد رسوم، فالمخرجات التي أُنتجت فعلياً فقط هي ما يُحتسب ضمن الاستخدام. تُحاسب فقط على المخرجات التي أُنتجت بالفعل، أما الجزء الفاشل فلا. الفوترة تتبع p * 0.6 + cr * 0.11 + cc * 0 + c * 2.2، فلا رسوم بدون مخرجات. سعر الإدخال نحو $0.60 لكل مليون رمز. تحقق من الرصيد وحدود المعدل في لوحة التحكم أولاً، ثم افحص الكود. عند تقدير التكلفة من p * 0.6 + cr * 0.11 + cc * 0 + c * 2.2، أدخل ميزانية إعادة المحاولة أيضاً.

هل مشاركة مفتاح واحد عبر عدة خدمات تزيد احتمال 401؟

رفع سقف الخطة أو تقليل معدل الاستدعاء، كلاهما يخفف المشكلة. مع احتساب التكلفة بـ p * 0.6 + cr * 0.11 + cc * 0 + c * 2.2، لا تُحسب الطلبات الفاشلة ضمن الاستخدام. تحقق من الرصيد وحدود المعدل في لوحة التحكم أولاً، ثم افحص الكود. عند تقدير التكلفة من p * 0.6 + cr * 0.11 + cc * 0 + c * 2.2، أدخل ميزانية إعادة المحاولة أيضاً.

هل يقلل الانتقال إلى نموذج أصغر من 401؟

وجود بديل على مستوى بنية النظام أوثق من إصلاح كل خطأ على حدة. لهذا النموذج من Z.AI عدة عقد upstream يمكن للبوابة التبديل بينها. جهّز نموذجاً احتياطياً أخفّ حتى لا ينقطع المسار الرئيسي. ضع اسم النموذج في الإعدادات، فلا يحتاج تغيير المصدر إلى تعديل الكود.

يتكرر 401 على glm-4.5: هل المشكلة من النموذج أم من الحساب؟

هذا الخطأ لا علاقة له بقدرة النموذج، بل هو على مستوى البوابة. في أغلب الحالات هو أمر مؤقت ويعود من تلقاء نفسه. وسوم قدرات هذا النموذج هي Reasoning, Tools, Open Weights. إذا استمر الخطأ عدة دقائق، تواصل مع دعم المنصة للتأكد من حالة المصدر.

أخطاء أخرى في هذا النموذج

نماذج أخرى تواجه الخطأ نفسه

تحديث البيانات: 2026-10-10 15:40

الدعم الفنيالدعم المباشر
العودة إلى الأعلى