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

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

# Chat Completions

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

Modelning OpenAI formatidagi suhbatga javobi. Eng keng tarqalgan format: deyarli barcha mijoz dasturlari uni tushunadi.

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 nima ekanini ikki gapda tushuntiring."}
    ]
  }' 
```

```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 nima ekanini ikki gapda tushuntiring."}],
)
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 nima ekanini ikki gapda tushuntiring." }],
});
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 — bir dastur boshqasidan qanday qilib biror ishni bajarishni so‘rashi haqidagi kelishuv…"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 21,
    "completion_tokens": 48,
    "total_tokens": 69
  }
}
```

## Avtorizatsiya

| Parametr | Tur | Majburiy | Tavsif |
| --- | --- | --- | --- |
| `Authorization` | header | majburiy | Kalit quyidagi ko‘rinishda: `Bearer sk-…`. Quyidagi sarlavhalar ham mos keladi: `x-api-key` yoki `x-goog-api-key`. |

## So‘rov tanasi

| Parametr | Tur | Majburiy | Tavsif |
| --- | --- | --- | --- |
| `model` | string | majburiy | Model ID’si [katalogdan](https://ailoot.ai/models/uz/), masalan `claude-sonnet-5-5`. Model OpenAI Chat formatini qo‘llab-quvvatlashi kerak. |
| `messages` | array | majburiy | Suhbat tarixi: quyidagi maydonlarga ega obyektlar: `role` (`system`, `developer`, `user`, `assistant`, `tool`) va `content` — satr yoki qismlar massivi (matn, `image_url`). |
| `stream` | boolean | ixtiyoriy | Server-Sent Events formatidagi javob. Standart qiymat `false`. Narx hisoblangach, pullik matn so‘zma-so‘z emas, bitta blok ko‘rinishida keladi. |
| `stream_options` | object | ixtiyoriy | `{"include_usage": true}` — yakuniy `usage` qiymatini oqimning oxirgi hodisasi sifatida yuborish. |
| `max_tokens` | integer | ixtiyoriy | Javob tokenlarining maksimal soni. Yangi nomi — `max_completion_tokens`. Limit ko‘rsatilmasa, Ailoot 4096 ni qo‘yadi (yoki modelning javob limiti kichikroq bo‘lsa, kamroq; Grok’ning o‘z limiti bor). Uzoq javoblar uchun limitni aniq belgilang, aks holda javob 4096 tokenda quyidagi sabab bilan to‘xtaydi: `finish_reason: "length"`. Limit zaxiraga kiradi: u qancha katta bo‘lsa, shuncha ko‘p erkin balans kerak. |
| `temperature` | number | ixtiyoriy | Javobning tasodifiyligi, odatda 0 dan 2 gacha. Fikrlaydigan modellarda e’tiborga olinmasligi mumkin. |
| `top_p` | number | ixtiyoriy | temperature uchun muqobil: token tanlash uchun ehtimollik massasining ulushi. |
| `stop` | string \| array | ixtiyoriy | Generatsiya to‘xtaydigan satrlar. |
| `tools` | array | ixtiyoriy | Model chaqirishi mumkin bo‘lgan funksiyalar tavsifi. Format OpenAI’dagi kabi: `{"type": "function", "function": {...}}`. |
| `tool_choice` | string \| object | ixtiyoriy | `auto`, `none`, `required` yoki aniq bir funksiya. |
| `response_format` | object | ixtiyoriy | `{"type": "json_object"}` yoki `{"type": "json_schema", ...}` tuzilmali javob uchun — agar model buni qo‘llab-quvvatlasa. |
| `reasoning_effort` | string | ixtiyoriy | Fikrlaydigan modellarning fikrlash chuqurligi: `low`, `medium`, `high`. |

OpenAI’ning qolgan parametrlari o‘z holicha uzatiladi; ularni aniq model qo‘llab-quvvatlashini model ishlab chiquvchisi belgilaydi.

## Javob

| Parametr | Tur | Majburiy | Tavsif |
| --- | --- | --- | --- |
| `choices[].message` | object |  | Model javobi: `content`, vositalar chaqirilganda — `tool_calls`. |
| `choices[].finish_reason` | string |  | `stop` — javob tugagan; `length` — quyidagi limitga yetgan: `max_tokens` (bunday javob baribir to‘liq hisoblanadi va haqiqiy foydalanish bo‘yicha to‘lanadi); `tool_calls` — model vositani chaqiradi. |
| `usage` | object |  | `prompt_tokens`, `completion_tokens`, `total_tokens` — yechib olinadigan summa shular asosida hisoblanadi. |

Savollaringiz qoldimi? Request ID va tavsifni yuboring — tushunishga yordam beramiz.[Yordam xizmatiga yozish](mailto:support@ailoot.ai)

## Ailoot · Kompaniya va uning loyihalar portfeli





Ailoot to‘plangan faoliyat tajribasi, keng mijozlar bazasi, barqaror xizmat va doimiy KPI nazoratiga tayanadi.





Kompaniya va uning loyihalar portfeli: millionlab mijozlar; oylik sotuvlar hajmi milliardlarda.





Ailoot bu faoliyat tajribasini mijozlar mahsulotlari, agentlar, ilovalar va avtomatlashtirishlarda AI imkoniyatlariga API orqali kirishni ta’minlashda qo‘llaydi.
