البدء السريع لواجهة API
واجهة برمجة تطبيقات بدون رقابة جاهزة للاستخدام ومتوافقة مع واجهة OpenAI: غيّر base_url والمفتاح، واحتفظ بكودك.
https://api.aiapisource.com/v1uncensored
المصادقة
استخدم مفتاح API الخاص بك في رأس Authorization. يتم إنشاء المفتاح فورًا بعد تسجيل الدخول ويمكن تجديده في أي وقت؛ يؤدي التجديد إلى إلغاء صلاحية المفتاح السابق. لا ينتهي صلاحية رصيد مسبق الدفع أبدًا، ولا تنتهي صلاحية المفاتيح بشكل مستقل عن رصيدك.
أرسل الطلبات إلى نقطة النهاية المخصصة:
https://api.aiapisource.com/v1
تتم معالجة المصادقة عبر تنسيق رمز حامل قياسي.
نقطة نهاية إكمال المحادثات
أرسل طلب POST إلى POST /v1/chat/completions بجسم JSON يحتوي على model مضبوطًا على uncensored ورسائلك messages. يعيد النموذج نصًا استجابةً لإدخال النص.
- نافذة السياق: 100,000 رمز (الموجّه + الإكمال).
- حد حجم جسم الطلب: 8 ميجابايت.
- لا تتوفر نقاط النهاية للتلوين الدقيق أو الصور أو التضمينات.
مثال على الطلب:
curl https://api.aiapisource.com/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."}]
}'
الاستجابات المتدفقة
أضف "stream": true إلى طلبك لتلقي أحداث الإرسال من الخادم (SSE). ينقل البث المتدفق أجزاء النص بينما يولد النموذج الرد. ينتهي البث المتدفق عندما يكمل النموذج الرد أو يواجه خطأً؛ لا يحدد ورقة الحقائق السلوك عند الوصول إلى حد السياق أثناء البث المتدفق، بخلاف نافذة 100,000 رمز الصارمة.
عالج أحداث SSE في عميلك لتراكم أو معالجة الاستجابات الجزئية.
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)
استدعاء الدوال
تدعم واجهة برمجة التطبيقات استدعاء الدوال. عرّف الدوال في المعلمة tools. قد يعيد النموذج مصفوفة tool_calls في الرد. يجب عليك تنفيذ الدوال من جانبك وإرسال النتائج مرة أخرى في رسالة لاحقة.
هذا سلوك قياسي متوافق مع OpenAI. لا توجد حاجة لطبقات تجريد.
from openai import OpenAI
client = OpenAI(base_url="https://api.aiapisource.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)
معلومات النموذج
معرف النموذج هو uncensored. إنه نموذج مفتوح الأوزان يعمل على خوادم GPU الخاصة بنا، ومضبط للإجابة دون رفض المحتوى للاستخدام القانوني للبالغين. إنه ليس GPT أو Claude أو Gemini أو Grok أو DeepSeek أو أي نموذج من أي مورد آخر.
تحقق من GET /v1/models لمعرفة النماذج المتاحة. يتم تقديم نموذج واحد فقط.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.aiapisource.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);
حدود المعدل والأخطاء
الحد: 300 طلب في الدقيقة لكل مفتاح. حد صارم للمحتوى: لا محتوى جنسي يتضمن قاصرين.
الأخطاء الشائعة:
401: مفتاح API غير صالح أو مفقود. أنشئ مفتاحًا جديدًا إذا لزم الأمر.402: رصيد مسبق الدفع غير كافٍ. قم بشحن الرصيد بمبلغ $10 أو أكثر.429: تم تجاوز حدّ المعدل (300 طلب/دقيقة).
لا تُستخدم الموجّهات للتدريب. لا يتم الادعاء بوجود SLA أو شهادات.
مواصفات API
كل الحدود والميزات الفعلية للـ API في مكان واحد — راجعها قبل شحن الرصيد.
| البند | القيمة |
|---|---|
| صيغة API | متوافق مع OpenAI: يعمل أي SDK من OpenAI بتغيير base URL والمفتاح فقط |
| المصادقة | Authorization: Bearer YOUR_KEY |
| معرّف النموذج | uncensored |
| Base URL | https://api.aiapisource.com/v1 |
| نقاط النهاية | POST /v1/chat/completions · GET /v1/models |
| البث المتدفق | نعم — server-sent events؛ آخر جزء يتضمن استهلاك الرموز |
| استدعاء الدوال | نعم — tools و tool_choice؛ الرد يتضمن tool_calls حتى أثناء البث؛ تُرسل النتائج كرسالة role: tool |
| أقصى مخرجات | حتى 16,000 رمز لكل طلب (الافتراضي 2,048) |
| نافذة السياق | 64,000 رمز (المدخلات والمخرجات معاً) |
| المعاملات | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| وضع JSON | response_format: {"type": "json_object"} |
| حدّ المعدل | 300 طلب في الدقيقة لكل مفتاح |
| الطلبات المتزامنة | حتى 8 في الوقت نفسه لكل مفتاح |
| حجم الطلب | حتى 8 MB |
| ترويسات الرد | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| الفوترة | رصيد مسبق الدفع حسب الاستهلاك الفعلي؛ الأخطاء والرفض مجانية |
| شحن الرصيد | USDT (TRC20) أو USDC (Base)، أي مبلغ صحيح من $10 إلى $500 |
| مكافأة | +5% من $50، +10% من $100 |
| رصيد تجريبي مجاني | $0.50 لمدة 7 أيام، بدون بطاقة |
| الصلاحية | الرصيد المدفوع لا تنتهي صلاحيته، بدون اشتراك |
| السعر | $0.25 لكل مليون رمز مدخلات · $1.00 لكل مليون رمز مخرجات |
| تسجيل الدخول | Google أو البريد الإلكتروني وكلمة المرور |
| المفاتيح | مفتاح نشط واحد لكل حساب؛ المفتاح الجديد يحل محل القديم |
| المحتوى | محتوى البالغين مسموح؛ يُرفض أي محتوى جنسي يتعلق بالقاصرين |
رموز الأخطاء
تصل الأخطاء بصيغة JSON مع type ثابت؛ الطلبات الفاشلة أو المرفوضة لا تُحتسب.
| الرمز | النوع | المعنى |
|---|---|---|
400 | bad_request | JSON غير صالح أو رسائل فارغة أو معامل خاطئ أو تجاوز نافذة السياق |
401 | missing_key · invalid_key · key_revoked | لا يوجد مفتاح أو المفتاح خاطئ أو تم استبداله |
402 | no_credit | الرصيد فارغ — اشحن وتستأنف الطلبات فوراً |
403 | content_blocked | محتوى جنسي يتعلق بقاصرين — مرفوض دون احتساب |
404 | not_found | نقطة نهاية غير معروفة |
413 | request_too_large | جسم الطلب أكبر من 8 MB |
429 | rate_limited · concurrency | تجاوز 300 في الدقيقة أو 8 متزامنة — انتظر ثم أعد المحاولة |
503 | upstream_busy | النموذج مشغول — أعد المحاولة بعد ثوانٍ |
أسئلة وأجوبة
هل تنتهي صلاحية مفتاح API؟
لا، لا تنتهي صلاحية مفاتيح API بشكل مستقل. الرصيد المسبق الدفع لا ينتهي أبدًا. يمكنك إنشاء مفتاح جديد في أي وقت، مما يلغي المفتاح القديم فورًا.
هل يتم إرجاع استهلاك الرموز في الرد؟
نشرة الحقائق لا تؤكد توفير إحصائيات استخدام الرموز في كائن الاستجابة. وهي تحدد فقط حجم نافذة السياق البالغ 100,000 رمز.
متى ينتهي البث المتدفق؟
ينتهي البث المتدفق عندما يكمل النموذج الاستجابة أو يواجه خطأ. لا تحدد نشرة الحقائق انتهاء البث المتدفق تحديدًا عند الوصول إلى حد السياق.
مفتاحك على بُعد نموذج واحد
أنشئ حسابًا، وانسخ المفتاح، وغير عنوان URL الأساسي. هذا هو الإعداد الكامل.