Chat Completions

يولّد استجابة انطلاقًا من قائمة رسائل. متوافقة مع OpenAI Chat Completions.

POST https://api.cloudzir.com/v1/chat/completions

المصادقة#

Authorization: Bearer zir_ai_<48 caractères hexadécimaux>
Content-Type: application/json

معاملات الجسم#

الحقلالنوعالافتراضيالوصف
model إلزاميstring- mina-flash أو mina-low أو mina-full. وإلا 404.
max_cost_micro_dzdinteger- سقف إنفاق بالميكرو دينار جزائري، متاح فقط مع mina-auto. يفشل الطلب إذا تجاوزه.
messages إلزاميarray- قائمة غير فارغة. الأدوار : system، developer (= system)، user، assistant، tool.
max_tokensinteger4096 أقصى رموز إخراج. محدود بسقف النموذج (8192 / 16384 / 32768) ؛ وإلا 400. الاسم البديل المقبول : max_completion_tokens.
temperaturenumberالنموذج0 إلى 2. منخفض = أقل تباينًا، دون ضمان استجابات متطابقة.
top_pnumberالنموذجالمجال ]0, 1].
streambooleanfalseاستجابة بصيغة SSE (الدليل).
stream_optionsobject- {"include_usage": true} يضيف قطعة أخيرة بحقل usage.
stopstring أو array-4 سلاسل توقف كحد أقصى.
toolsarray-64 أداة كحد أقصى (الدليل).
tool_choicestring أو objectauto auto · none · required · {"type":"function","function":{"name":"…"}}
response_formatobject- {"type":"text"} أو {"type":"json_object"}. json_schema مرفوض (400).
frequency_penalty، presence_penaltynumber0−2 إلى 2.
reasoning_effortstring- off · minimal · low · medium · high · xhigh · max (الدليل).
thinkingobjectالنموذج {"type":"enabled"} أو {"type":"disabled"}. له الأولوية على افتراضي النموذج.
userstring- معرّف مستخدمكم النهائي : يعزل حدود المعدل. أبجدي رقمي، ≤ 512.
ninteger1القيمة 1 فقط مقبولة.

مُتجاهَلة دون خطأ : logprobs، top_logprobs، seed، logit_bias، parallel_tool_calls، service_tier، metadata.

كائن الرسالة#

الحقلالوصف
roleدور الرسالة.
contentسلسلة نصية، أو قائمة كتل {"type":"text","text":"…"} و{"type":"image_url","image_url":{"url":"…"}} (الرؤية).
tool_callsفي رسالة assistant : الاستدعاءات المطلوبة في الجولة السابقة.
tool_call_idفي رسالة tool : معرّف الاستدعاء الذي تجيب عنه.
nameاسم اختياري للمُرسِل.

الطلب#

curl https://api.cloudzir.com/v1/chat/completions \
  -H "Authorization: Bearer $CLOUDZIR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "mina-low",
    "messages": [
      {"role": "system", "content": "Tu es un assistant concis."},
      {"role": "user", "content": "Cite trois wilayas côtières."}
    ],
    "max_tokens": 200,
    "temperature": 0.3
  }'

الاستجابة#

{
  "id": "chatcmpl-4334a6f158894999",
  "object": "chat.completion",
  "created": 1766400000,
  "model": "mina-low",
  "choices": [
    {
      "index": 0,
      "message": {"role": "assistant", "content": "Alger, Oran et Béjaïa."},
      "finish_reason": "stop"
    }
  ],
  "usage": {"prompt_tokens": 28, "completion_tokens": 9, "total_tokens": 37}
}
الحقلالوصف
idمعرّف الإكمال.
modelدائمًا نموذج Mina المطلوب.
choices[].messagecontent وعند الاقتضاء tool_calls.
finish_reason stop (انتهى) · length (بلغ max_tokens) · tool_calls (طُلبت أداة).
usageالرموز المفوترة؛ مصدر الحقيقة.

ترويسات الاستجابة#

الترويسةالوصف
X-Request-Idمعرّف فريد للطلب (UUID) : يُقدَّم للدعم. أي X-Request-ID يرسله العميل يُعاد كما هو.
X-RateLimit-Limit-RequestsRPM مستواكم.
X-RateLimit-Remaining-Requestsالطلبات المتبقية في النافذة.
Retry-Afterعلى 429/503 : ثوانٍ قبل إعادة المحاولة.

الاستجابة بالبث المباشر#

مع "stream": true، الاستجابة تدفق SSE من كائنات chat.completion.chunk ينتهي بـdata: [DONE]. البنية مفصّلة في دليل البث المباشر.

أكواد الأخطاء#

400، 401، 402، 403، 404، 429، 500، 503؛ انظروا أكواد الأخطاء.

الإعدادات

استجابة API