المصادقة وURL الأساسي
استخدام https://api.ollamaendpointurl.com/v1 كعنوان URL الأساسي الخاص بك وتضمين مفتاح API الخاص بك في Authorization رأس.
- عنوان URL الأساسي:
https://api.ollamaendpointurl.com/v1 - رأس:
Authorization: Bearer YOUR_API_KEY
أنشئ مفتاحك على الفور عبر Google أو البريد الإلكتروني على لوحة التحكم. لا يلزم رقم هاتف. يعمل هذا العنوان مع أي مكتبة SDK قياسية لـ OpenAI من خلال تجاوز عنوان URL الأساسي.
الطلب الأول
أرسل طلب POST إلى /v1/chat/completions باستخدام معرف النموذج uncensored ورسائلك.
curl https://api.ollamaendpointurl.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "What is the default port for Ollama?"}]
}'يعيد هذا استجابة JSON تحتوي على النص المُولّد. إذا تلقيت خطأ 401، فإن مفتاح API الخاص بك غير صالح. يشير خطأ 402 إلى عدم كفاية الرصيد المدفوع مسبقاً.
تكامل واجهة برمجة تطبيقات Python
قم بتهيئة العميل باستخدام المفتاح الخاص بك وعنوان URL الأساسي المخصص لإرسال الطلبات بشكل برمجي.
from openai import OpenAI
client = OpenAI(base_url="https://api.ollamaendpointurl.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)تعيين max_tokens للتحكم في طول المخرجات؛ بدونها، تكون القيمة الافتراضية هي 2,048 رمزاً. يقبل النموذج المعلمات القياسية مثل temperature و top_p ضبط سلوك التوليد.
تكامل Node SDK
قم بتكوين عميل Node.js للإشارة إلى نقطة النهاية الخاصة بنا للتكامل السلس في نصوصك.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.ollamaendpointurl.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);يتعامل SDK مع التسلسل تلقائياً. تأكد من أنك تستخدم إصداراً حديثاً من SDK الخاص بـ OpenAI يدعم عناوين URL الأساسية المخصصة. تُلقى الأخطاء كاستثناءات API قياسية.
استجابات البث
فعّل البث عن طريق تعيين stream: true لتلقي الرموز عبر أحداث Server-Sent (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)تظهر تفاصيل استهلاك الرموز في الشريحة الأخيرة من التدفق. هذا يقلل من زمن الاستجابة المُدرَك للمخرجات الطويلة. يدعم نقطة النهاية تنسيق SSE القياسي المتوافق مع معظم مكتبات العملاء.
حدود المعدلات ونافذة السياق
مقيد كل مفتاح API بـ 300 طلب في الدقيقة و8 طلبات متزامنة. نافذة السياق هي 100,000 رمز إجمالاً. الحد الأقصى للإخراج لكل طلب هو 16,000 رمز. يتم رفض الطلبات التي يتجاوز حجم جسمها 8 ميجابايت. يشير خطأ 429 إلى أنك وصلت إلى حد معدل الطلبات. انتظر قليلاً قبل إعادة المحاولة. لا تستهلك الأخطاء والرفضات الرصيد. الرصيد لا ينتهي صلاحيته. استخدم العملات المشفرة للشحن. ابدأ برصيد تجريبي بقيمة $0.50. احصل على مفتاحك الآن.