عنوان URL الأساسي والمصادقة
يُستضاف واجهة برمجة التطبيقات Unrestricted AI على https://api.unrestrictedai.top/v1. يتبع هيكل إكمال الدردشة الخاص بـ OpenAI، مما يعني أنه يمكنك استخدام مكتات OpenAI SDK الحالية عن طريق تحديث base_url فقط وتقديم مفتاح API الخاص بك. تحتاج فقط إلى مفتاح واحد نشط لكل حساب، وهو يمنحك وصولاً فورياً إلى النموذج بدون رقابة. تتم المصادقة عبر رأس Authorization باستخدام مخطط Bearer. تأكد من أمان مفتاحك، لأنه يتحكم في استخدام رصيدك المسبق الدفع. على عكس خدمات الاشتراك، تدفع فقط مقابل الرموز المعالجة، مع حساب الأخطاء والرفض بصفر رموز.
طلبك الأول
أرسل طلب إكمال دردشة قياسي لاختبار الاتصال. معرف النموذج هو دائماً uncensored. تقبل نقطة النهاية إدخال النص وتُرجع مخرجات نصية، وتدعم ما يصل إلى 100,000 رمز في نافذة السياق. إذا لم تحدد max_tokens، فإن واجهة برمجة التطبيقات تستخدم افتراضياً 2,048 رمز مخرجات. يوضح هذا الطلب POST البسيط الوظيفة الأساسية: إرسال الموجّه واستلام الاستجابة المولدة بدون فلاتر محتوى للمواضيع القانونية للبالغين أو المثيرة للجدل.
تكامل SDK بايثون
استخدام مكتبة OpenAI الرسمية لـ Python هو أسرع طريقة للتكامل. وجه العميل إلى عنوان URL الأساسي الخاص بنا وأمر مفتاحك. يُظهر الكود أدناه طلب متزامن أساسي. تتعامل هذه الطريقة مع تحليل JSON تلقائيًا، مما يتيح لك الوصول إلى محتوى الاستجابة مباشرةً في متغيرات Python الخاصة بك. إنها مثالية لخدمات الخلفية أو المعالجة الدفعية حيث يكون زمن استجابة البث أقل أهمية من بساطة الكود.
تكامل SDK Node.js
لبيئات JavaScript، قم بتكوين عميل OpenAI Node.js لاستهداف نقطة النهاية الخاصة بنا. الطبيعة غير المتزامنة لـ Node.js تتوافق جيدًا مع وقت استجابة الـ API. اضبط عنوان URL الأساسي بشكل صحيح، وستتعامل SDK مع تنسيق الطلب. تذكر أن هذه الـ API لا تدعم نقاط النهاية للصور أو الصوت أو التضمين، لذا التزم بإكمالات النصوص فقط. هذه الطريقة مناسبة لخوادم الويب أو الوظائف الطرفية حيث تحتاج إلى حقن استجابات LLM بدون رقابة في المحتوى الديناميكي.
الاستجابات المتدفقة
فعّل البث المتدفق عن طريق تعيين stream: true في طلبك. تُرجع واجهة برمجة التطبيقات البيانات عبر أحداث Server-Sent Events (SSE)، مما يتيح لك استقبال الرموز في الوقت الفعلي. يتم تضمين استخدام الرموز ومقاييس الفوترة في الجزء الأخير من البث المتدفق. يقلل هذا من زمن الاستجابة المُدرَك للمستخدمين النهائيين، خاصة للمخرجات الطويلة. يُنصح بالبث المتدفق لواجهات الدردشة حيث يحسن التقديم الفوري للنص تجربة المستخدم. راقب الجزء الأخير للحصول على إجمالي عدد الرموز لتتبع رصيدك المسبق الدفع بدقة.
الحدود والأخطاء والنافذة
يُقتصر كل مفتاح API على 300 طلب في الدقيقة و8 طلبات متزامنة. يجب ألا يتجاوز جسم الطلب 8 MB. تشمل الأخطاء الشائعة 401 للمفاتيح غير الصالحة، و402 عندما يستنفد الرصيد المسبق الدفع، و429 لحدّ المعدل. تدعم نافذة السياق 100,000 رمز إجمالاً، بما في ذلك كل من الموجّه والإكمال. إذا تجاوزت هذه الحدود، فعّل استراتيجية التراجع الأسي. الرصيد لا ينتهي أبداً، وتُعالج الأخطاء مثل الشحن المزدوج عبر صفحة الدعم، مما يضمن الاحتفاظ بقيمتك المسبقة الدفع إلى ما لا نهاية.
cURL
curl https://api.unrestrictedai.top/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.unrestrictedai.top/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)Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.unrestrictedai.top/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);البث المتدفق
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)