Skip to main content
GLM(النموذج اللغوي العام)هو سلسلة من نماذج اللغة الكبيرة من الجيل الجديد التي أطلقتها شركة زهيبو AI (Zhipu AI / Z.ai)، والتي تتمتع بقدرات قوية في فهم وتوليد اللغة الصينية والإنجليزية، وتظهر أداءً ممتازًا في المهام مثل المشاهد الصينية، وتوليد الشيفرات، والاستدلال، والحوار المتعدد الجولات. تم تحسين نماذج الجيل الجديد مثل GLM-5.3 وGLM-5.2 وGLM-4.7 بشكل كبير في سياقات طويلة، واستدعاء الأدوات، ومهام الشيفرات، ويمكن استخدامها على نطاق واسع في سيناريوهات مثل الأسئلة الذكية، وإنشاء المحتوى، والمساعدة في الشيفرات، وروبوتات خدمة العملاء. تتناول هذه الوثيقة بشكل رئيسي عملية استخدام واجهة برمجة التطبيقات GLM Chat Completion، حيث يمكنك من خلالها استدعاء نماذج سلسلة GLM بسهولة من خلال واجهة متوافقة مع OpenAI.

申请流程

لاستخدام واجهة برمجة التطبيقات GLM Chat Completion، يجب أولاً الذهاب إلى لوحة تحكم Ace Data Cloud للحصول على رمز API الخاص بك، احتفظ به للاستخدام لاحقًا. إذا لم تكن قد قمت بتسجيل الدخول أو التسجيل بعد، فسيتم تحويلك تلقائيًا إلى صفحة تسجيل الدخول لدعوتك للتسجيل وتسجيل الدخول، وبعد الانتهاء، سيتم إرجاعك تلقائيًا إلى الصفحة الحالية. يمكن استخدام رمز API واحد لاستدعاء جميع خدمات المنصة، دون الحاجة لتقديم طلب منفصل لكل خدمة. عند التقديم لأول مرة، ستحصل على رصيد مجاني لتجربته؛ وعند نفاد الرصيد، يمكنك إعادة شحن الرصيد العام في لوحة التحكم.
📘 الوثيقة الكاملة: GLM Chat Completion API →

基本使用

عنوان طلب واجهة برمجة التطبيقات GLM Chat Completion هو https://api.acedata.cloud/glm/chat/completions، ويستخدم مصادقة Bearer Token، وجسم الطلب متوافق مع بروتوكول OpenAI Chat Completions. عند استخدام هذه الواجهة للمرة الأولى، نحتاج على الأقل إلى ملء ثلاثة محتويات:
  • authorization:اختر Bearer Token مباشرة من القائمة المنسدلة.
  • model:اختر نموذج GLM الذي تريد استدعاءه، والنماذج المدعومة حاليًا تشمل:
    • glm-5.3:أحدث نموذج رائد، يدعم 1M سياق وأقصى 128K مخرجات، مناسب للاستدلال المعقد، والشيفرات، ومهام الوكلاء. الاستدلال مفعل دائمًا، ويمكنك اختيار reasoning_effort كـ low أو high أو max.
    • glm-5.2:النموذج الرائد من الجيل السابق، ذو قدرة شاملة قوية.
    • glm-5.1:نموذج رائد ناضج، مناسب للمهام المعقدة العامة.
    • glm-4.7:يظهر أداءً ممتازًا في الاستدلال، واستدعاء الأدوات، ومهام الشيفرات.
    • glm-4.6:نموذج حوار عام، يوازن بين الأداء والتكلفة.
    • glm-3-turbo:نموذج حوار كلاسيكي، مناسب لمهام توليد النصوص العامة.
  • messages:مصفوفة الكلمات الدلالية، تحتوي كل رسالة على role و content، حيث تدعم role ثلاثة أدوار: user و assistant و system.
البارامترات الاختيارية الشائعة:
  • max_tokens:تحديد الحد الأقصى لعدد الرموز في الرد الواحد.
  • temperature:عشوائية التوليد، بين 0-2، كلما زادت القيمة كانت أكثر تشتتًا.
  • top_p:معامل أخذ العينات، يتحكم في عتبة الاحتمال التراكمي للرموز المرشحة.
  • n:عدد الردود المرشحة التي يتم توليدها في مرة واحدة.
  • stream:هل يتم تفعيل الاستجابة المتدفقة، الافتراضي هو false.
  • stop:تسلسل التوقف المخصص.
إليك مثال بسيط لاستدعاء Python:
بعد الاستدعاء، نجد أن النتيجة المرجعة هي كما يلي:
تفسير الحقول الرئيسية في النتيجة المرجعة كما يلي:
  • id:معرف فريد لمهمة الحوار هذه.
  • created:وقت إنشاء مهمة الحوار هذه (طابع زمني Unix، بالثواني).
  • model:اسم نموذج GLM الذي تم استدعاؤه فعليًا.
  • choices:قائمة الردود التي أنشأها النموذج. choices[i].message.content هو النص المحدد للرد من النموذج، و finish_reason يحدد سبب الانتهاء (مثل stop أو length أو tool_calls أو content_filter وغيرها).
  • usage:إحصائيات استخدام الرموز لهذه الطلب، تشمل prompt_tokens و completion_tokens و total_tokens.

流式响应

تدعم هذه الواجهة الاستجابة المتدفقة (Server-Sent Events)، وهذا مفيد جدًا لتكامل الويب، حيث يمكن أن يتيح للويب تحقيق تأثير العرض حرفيًا. إذا كنت ترغب في استجابة متدفقة، قم بتعيين معامل stream في جسم الطلب إلى true. كود مثال لاستدعاء Python:
تكون النتيجة كما يلي (مقتطف):
يمكنك أن ترى أن هناك العديد من data في الاستجابة، كل data تحتوي على جزء متزايد. choices[i].delta.content هو النص الجديد المضاف في الجزء الحالي، يمكنك تجميع هذه الأجزاء لتشكيل رد كامل. عندما يكون محتوى data هو [DONE]، فهذا يعني أن الاستجابة المتدفقة قد انتهت. آخر جزء يحمل usage سيجمع استخدام الرموز لهذه الطلب. مثال على JavaScript (Node.js):
مثال على كود Java:
يمكنك إعادة كتابة الكود بلغات أخرى بنفس المبدأ.

محادثة متعددة الجولات

إذا كنت ترغب في تنفيذ وظيفة المحادثة متعددة الجولات، تحتاج إلى وضع المحادثات السابقة في مصفوفة messages بالتتابع، مع الحفاظ على ترتيب ظهور user و assistant. مثال على كود استدعاء Python:
من خلال رفع عدة أسئلة، يمكنك بسهولة تنفيذ محادثة متعددة الجولات، ويمكنك الحصول على الردود كما يلي:
يمكنك أن ترى أن المعلومات الموجودة في choices تتوافق مع الاستخدام الأساسي، حيث يقدم النموذج ردًا بناءً على تاريخ المحادثة الكامل، مما يدعم التفاعل السياقي متعدد الجولات.

نصوص النظام (System Prompt)

يمكنك إضافة رسالة role كـ system في بداية messages لتقييد دور النموذج أو أسلوبه أو سلوكه:

استدعاء الأدوات (Function Calling)

يدعم نموذج GLM استدعاء الأدوات المتوافق مع OpenAI، يمكنك من خلال معلمة tools إعلان الوظائف القابلة للاستدعاء، وسيقوم النموذج عند الحاجة بإرجاع معلومات استدعاء الوظائف المهيكلة في choices[i].message.tool_calls.
إذا قرر النموذج استدعاء الأداة، ستتغير نتيجة finish_reason إلى tool_calls، وسيتم تقديم اسم الوظيفة ومعلمات بصيغة JSON في message.tool_calls. يمكنك تنفيذ هذه الوظيفة وإرجاع النتيجة كرسالة role كـ tool إلى النموذج، مما يكمل دورة استدعاء الأداة بالكامل.

اقتراحات اختيار النموذج

عند إرجاع api_error وكانت الرسالة الخدمة غير متاحة مؤقتًا، يرجى المحاولة لاحقًا.، فهذا عادةً ما يشير إلى أن خدمة GLM العلوية غير متاحة مؤقتًا، يُنصح بإعادة المحاولة مع تراجع أسي، أو التبديل إلى نموذج GLM آخر متاح (مثل التبديل مؤقتًا من glm-5.1 إلى glm-4.7 أو glm-4.6).

الخاتمة

من خلال هذه الوثيقة، لقد تعرفت على كيفية استخدام واجهة برمجة تطبيقات GLM Chat Completion لاستدعاء نماذج سلسلة GLM من Zhizhu AI، بما في ذلك الاستدعاءات الأساسية، الاستجابات المتدفقة، المحادثات متعددة الجولات، كلمات النظام واستدعاء الأدوات وغيرها من الاستخدامات النموذجية. نأمل أن تساعدك هذه الوثيقة في التوصيل والاستخدام الأفضل لهذه الواجهة. إذا كان لديك أي استفسارات، فلا تتردد في الاتصال بفريق الدعم الفني لدينا.