توثيق واجهة برمجة التطبيقات
ابدأ باستخدام واجهة برمجة التطبيقات (API) المتوافقة مع OpenAI وغير المقيدة في دقائق. استخدم مفتاح API الخاص بـ glm الذي أنشأته لإرسال الطلبات إلى نقطة النهاية الخاصة بالنموذج الوحيد.
المصادقة & الرؤوس
الخاص بك glm api key يخول كل طلب. مرره في Authorization رأس الصفحة كرمز حامل (Bearer token). هذه هي الطريقة القياسية التي تستخدمها مكتلات OpenAI الرسمية وتعمل مع أي عميل يدعم مصادقة متوافقة مع OpenAI. تتلقى هذا المفتاح على الفور بعد التسجيل باستخدام Google أو البريد الإلكتروني على لوحة التحكم.
احفظ مفتاحك بأمان. يمنحك هذا المفتاح وصولاً كاملاً إلى رصيدك المدفوع مسبقاً. إذا فقدته، قم بتوليد مفتاح جديد؛ حيث يصبح المفتاح القديم غير صالح على الفور. يمكنك امتلاك مفتاح نشط واحد فقط لكل حساب في أي وقت.
نقطة نهاية إكمال الدردشة
أرسل رسائل نصية إلى النموذج باستخدام POST /v1/chat/completions النقطة النهائية. عنوان URL الأساسي لجميع الطلبات هو https://api.apiglm.com/v1. يجب أن تحدد معرف النموذج كـ uncensored في جسم الطلب. تتعامل هذه النقطة النهائية مع أدوار المحادثة القياسية وتعيد النص المولد.
يستهلك كل طلب رموز من رصيدك المدفوع مسبقًا. الأخطاء والرفض لا تحاسب رصيدك. يقبل النموذج تسلسل الرسائل، مما يتيح محادثات متعددة الأدوار ضمن نافذة السياق.
curl https://api.apiglm.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "list the features"}]
}'
Models Endpoint
تحقق من النماذج المتاحة وتكوين نقاط النهاية عن طريق استدعاء GET /v1/models. تعيد نقطة النهاية هذه قائمة بالنماذج المدعومة حالياً بواسطة واجهة برمجة التطبيقات. يمكنك استخدامها للتحقق من الاتصال والتحقق من معرف النموذج قبل إرسال طلبات الإكمال. وهي مفيدة لتصحيح أخطاء تكوين العميل.
يشمل الرد بيانات تعريف حول النموذج، مثل معرفه وحقل owned_by. لا يستهلك هذا النقطة رصيدًا. استخدمها للتأكد من أن عميلك يشير إلى عنوان URL الأساسي الصحيح وأن رأس المصادقة الخاص بك صالح.
التدفق و SSE
فعّل إخراج الرمز الفوري عن طريق تعيين stream: true في طلبك. تُعيد واجهة برمجة التطبيقات تدفق أحداث الإرسال الخادم (SSE). تحتوي كل شريحة على أجزاء نصية جزئية. تتضمن الشريحة الأخيرة إحصائيات استخدام الرموز المميزة الكاملة لطلبك.
يقلل التدفق من زمن الاستجابة المُدرَك للمستخدمين. يسمح لتطبيقك بعرض الرموز أثناء توليدها. هذا مثالي لواجهات الدردشة حيث تُتوقع التغذية الراجعة الفورية. تعامل مع التدفق بشكل صحيح لضمان معالجة جميع الرموز.
from openai import OpenAI
client = OpenAI(base_url="https://api.apiglm.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)
استدعاء الوظائف
عرّف الأدوات في طلبك لتمكين استدعاء الوظائف. يمكن للنموذج إرجاع بيانات JSON مهيكلة تحدد الوظيفة التي يجب استدعاؤها ومعاملاتها. يتيح ذلك لتطبيقك تنفيذ التعليمات البرمجية بناءً على نية المستخدم. تشمل الدعم تعريفات الأدوات، واختيار الأدوات، ووضع JSON للتنسيق الدقيق للإخراج.
استخدم هذه الميزة لدمج نموذج اللغة الكبير في سير عملك. عرّف مخطط الوظيفة في جسم الطلب. يستجيب النموذج بقائمة من استدعاءات الأدوات. قم بتحليل هذه الاستدعاءات في كودك لتشغيل إجراءات خارجية. هذا يمكّن المهام المعقدة متعددة الخطوات.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.apiglm.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);
المعاملات & الحدود
يدعم نافذة السياق 100,000 رمز للنص البرمجي والإكمال المجمع. الحد الأقصى للإخراج هو 16,000 رمز لكل طلب. اضبط max_tokens للتحكم في طول المخرجات. الافتراضي هو 2,048 رمز إذا لم يتم تحديده. يمكنك ضبط درجة الحرارة، وtop_p، والبذرة للتباين.
تسمح حدود معدل الطلبات بـ 300 طلب في الدقيقة لكل مفتاح. الحد الأقصى للطلبات المتزامنة هو 8 لكل مفتاح. يجب أن يكون حجم جسم الطلب أقل من 8 ميجابايت. تعيد الأخطاء رموز حالة HTTP القياسية. يشير 401 إلى مفتاح غير صالح. يعني 402 استنفاد رصيدك. يشير 429 إلى تجاوز حد معدل الطلبات.
التدفق
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)الأسئلة الشائعة
ما هو عنوان URL الأساسي لواجهة برمجة التطبيقات (API)؟
عنوان URL الأساسي هو HTTPS://api.apiglm.com/v1. جميع نقاط النهاية، بما في ذلك إكمال المحادثات والنماذج، تكون بالنسبة لهذا العنوان. استخدم هذا العنوان في تكوين SDK الخاص بك أو عميل HTTP.
كيف أتعامل مع استجابات البث؟
عيّن معلمة stream إلى true في طلبك. يعيد الـ API تدفق SSE. تحتوي كل شريحة على نص جزئي. تتضمن الشريحة الأخيرة استخدام الرموز. قم بمعالجة كل شريحة عند وصولها لعرض المخرجات في الوقت الفعلي.
ماذا يحدث إذا تجاوزت حد معدل الطلب؟
تُعيد الـ API رمز الحالة 429. أنت محدود بـ 300 طلب في الدقيقة و8 طلبات متزامنة لكل مفتاح. انتظر حتى انتهاء نافذة حد المعدل أو قلل من وتيرة طلباتك.
احصل على مفتاحك فوراً
سجّل، انسخ المفتاح، حدّث عنوان URL الأساسي الخاص بك. هذا كل شيء.