Source: https://ailoot.ai/docs/ar/api/chat-completions/
Canonical: https://ailoot.ai/docs/ar/api/chat-completions/
Language: ar

[API](https://ailoot.ai/docs/ar/) 

# Chat Completions

[Markdown](https://ailoot.ai/docs/ar/api/chat-completions/index.md)

رد النموذج على محادثة بصيغة OpenAI. هذه الصيغة هي الأكثر شيوعاً، وتفهمها معظم تطبيقات العميل.

POST`https://api.ailoot.ai/v1/chat/completions`

Chat Completions

```bash
curl https://api.ailoot.ai/v1/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-5-5",
    "messages": [
      {"role": "user", "content": "اشرح في جملتين ما هي API."}
    ]
  }' 
```

```python
from openai import OpenAI
import os

client = OpenAI(max_retries=0, 
    base_url="https://api.ailoot.ai/v1",
    api_key=os.environ["AILOOT_API_KEY"],
)

resp = client.chat.completions.create(
    model="claude-sonnet-5-5",
    messages=[{"role": "user", "content": "اشرح في جملتين ما هي API."}],
)
print(resp.choices[0].message.content)
```

```js
import OpenAI from "openai";

const client = new OpenAI({ maxRetries: 0,
  baseURL: "https://api.ailoot.ai/v1",
  apiKey: process.env.AILOOT_API_KEY,
});

const resp = await client.chat.completions.create({
  model: "claude-sonnet-5-5",
  messages: [{ role: "user", content: "اشرح في جملتين ما هي API." }],
});
console.log(resp.choices[0].message.content);
```

200 OK

```json
{
  "id": "chatcmpl-8f2c…",
  "object": "chat.completion",
  "created": 1790812800,
  "model": "claude-sonnet-5-5",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "API هي اتفاق يحدّد كيف يطلب برنامج من برنامج آخر تنفيذ شيء ما…"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 21,
    "completion_tokens": 48,
    "total_tokens": 69
  }
}
```

## المصادقة

| المعامل | النوع | مطلوب | الوصف |
| --- | --- | --- | --- |
| `Authorization` | header | مطلوب | المفتاح بصيغة `Bearer sk-…`. يمكن أيضاً استخدام الترويسات `x-api-key` أو `x-goog-api-key`. |

## جسم الطلب

| المعامل | النوع | مطلوب | الوصف |
| --- | --- | --- | --- |
| `model` | string | مطلوب | معرّف النموذج من [الكتالوج](https://ailoot.ai/models/ar/)، مثل `claude-sonnet-5-5`. يجب أن يدعم النموذج صيغة OpenAI Chat. |
| `messages` | array | مطلوب | سجل المحادثة: كائنات تتضمن `role` (`system`, `developer`, `user`, `assistant`, `tool`) و `content` — كسلسلة نصية أو مصفوفة أجزاء (نص، `image_url`). |
| `stream` | boolean | اختياري | الرد بصيغة Server-Sent Events. القيمة الافتراضية هي `false`. يأتي النص المدفوع دفعة واحدة بعد احتساب التكلفة، ولا يصل كلمة بكلمة. |
| `stream_options` | object | اختياري | `{"include_usage": true}` — إرسال القيمة النهائية لـ `usage` كآخر حدث في التدفق. |
| `max_tokens` | integer | اختياري | الحد الأقصى لتوكنات الرد. الاسم الجديد هو `max_completion_tokens`. إذا لم يُحدد الحد، يضع Ailoot القيمة 4096 (أو أقل إذا كان حد رد النموذج أقل؛ ولدى Grok حد خاص). للردود الطويلة، حدد الحد صراحةً، وإلا فسيتوقف الرد عند 4096 توكن مع `finish_reason: "length"`. يدخل هذا الحد في حساب الرصيد المحجوز: كلما زاد، احتجت إلى رصيد متاح أكبر. |
| `temperature` | number | اختياري | درجة عشوائية الرد، عادةً من 0 إلى 2. قد تتجاهلها نماذج الاستدلال. |
| `top_p` | number | اختياري | بديل لـtemperature: نسبة الكتلة الاحتمالية المستخدمة لاختيار التوكنات. |
| `stop` | string \| array | اختياري | سلاسل نصية يتوقف التوليد عندها. |
| `tools` | array | اختياري | وصف الدوال التي يمكن للنموذج استدعاؤها. الصيغة مماثلة لصيغة OpenAI: `{"type": "function", "function": {...}}`. |
| `tool_choice` | string \| object | اختياري | `auto`, `none`, `required` أو دالة محددة. |
| `response_format` | object | اختياري | `{"type": "json_object"}` أو `{"type": "json_schema", ...}` لرد منظّم، إذا كان النموذج يدعم ذلك. |
| `reasoning_effort` | string | اختياري | عمق الاستدلال لدى نماذج الاستدلال: `low`, `medium`, `high`. |

تُمرّر بقية معاملات OpenAI كما هي؛ ويحدد مطوّر النموذج ما إذا كان النموذج المحدد يدعمها.

## الرد

| المعامل | النوع | مطلوب | الوصف |
| --- | --- | --- | --- |
| `choices[].message` | object |  | رد النموذج: `content`، وعند استدعاء الأدوات — `tool_calls`. |
| `choices[].finish_reason` | string |  | `stop` — اكتمل الرد؛ `length` — بلغ الحد المحدد في `max_tokens` (يظل هذا الرد كاملاً وتُحسب تكلفته بحسب الاستخدام الفعلي)؛ `tool_calls` — يستدعي النموذج أداة. |
| `usage` | object |  | `prompt_tokens`, `completion_tokens`, `total_tokens` — تُحسب قيمة الخصم بناءً عليها. |

هل لديك أسئلة أخرى؟ أرسل Request ID ووصفاً للمشكلة وسنساعدك على فهمها.[مراسلة الدعم](mailto:support@ailoot.ai)

## Ailoot · الشركة ومحفظة مشاريعها





تستند Ailoot إلى خبرة تشغيلية متراكمة وقاعدة عملاء واسعة وخدمة مستقرة ومراقبة مستمرة لمؤشرات الأداء KPI.





الشركة ومحفظة مشاريعها: ملايين العملاء؛ مبيعات بالمليارات شهريًا.





توظف Ailoot هذه الخبرة التشغيلية لإتاحة الوصول عبر API إلى قدرات الذكاء الاصطناعي في منتجات العملاء ووكلائهم وتطبيقاتهم وعمليات الأتمتة.
