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

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

# Chat Completions

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

Odpověď modelu na dialog ve formátu OpenAI. Nejrozšířenější formát: rozumí mu téměř všichni klienti.

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": "Vysvětli ve dvou větách, co je 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": "Vysvětli ve dvou větách, co je 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: "Vysvětli ve dvou větách, co je 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 je dohoda o tom, jak jeden program žádá druhý, aby něco udělal…"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 21,
    "completion_tokens": 48,
    "total_tokens": 69
  }
}
```

## Autorizace

| Parametr | Typ | Povinný | Popis |
| --- | --- | --- | --- |
| `Authorization` | header | povinný | Klíč ve tvaru `Bearer sk-…`. Lze použít také hlavičky `x-api-key` nebo `x-goog-api-key`. |

## Tělo požadavku

| Parametr | Typ | Povinný | Popis |
| --- | --- | --- | --- |
| `model` | string | povinný | ID modelu z [katalogu](https://ailoot.ai/models/cs/), například `claude-sonnet-5-5`. Model musí podporovat formát OpenAI Chat. |
| `messages` | array | povinný | Historie dialogu: objekty s `role` (`system`, `developer`, `user`, `assistant`, `tool`) a `content` – ve formě řetězce nebo pole částí (text, `image_url`). |
| `stream` | boolean | nepovinný | Odpověď ve formátu Server-Sent Events. Ve výchozím nastavení `false`. Placený text přichází v jednom bloku po výpočtu ceny, nikoli po jednotlivých slovech. |
| `stream_options` | object | nepovinný | `{"include_usage": true}` – odeslat závěrečný `usage` jako poslední událost proudu. |
| `max_tokens` | integer | nepovinný | Maximální počet tokenů odpovědi. Nový název – `max_completion_tokens`. Pokud limit není uveden, Ailoot doplní 4096 (nebo méně, pokud má model nižší limit odpovědi; Grok má vlastní limit). Pro dlouhé odpovědi nastavte limit výslovně, jinak se odpověď zastaví na 4096 tokenech s `finish_reason: "length"`. Limit se započítává do rezervace: čím je vyšší, tím více volného zůstatku potřebujete. |
| `temperature` | number | nepovinný | Náhodnost odpovědi, obvykle od 0 do 2. U modelů s uvažováním může být ignorována. |
| `top_p` | number | nepovinný | Alternativa k temperature: podíl celkové pravděpodobnosti pro výběr tokenů. |
| `stop` | string \| array | nepovinný | Řetězce, při jejichž výskytu se generování zastaví. |
| `tools` | array | nepovinný | Popisy funkcí, které model může vyvolat. Formát je stejný jako u OpenAI: `{"type": "function", "function": {...}}`. |
| `tool_choice` | string \| object | nepovinný | `auto`, `none`, `required` nebo konkrétní funkce. |
| `response_format` | object | nepovinný | `{"type": "json_object"}` nebo `{"type": "json_schema", ...}` pro strukturovanou odpověď – pokud ji model podporuje. |
| `reasoning_effort` | string | nepovinný | Hloubka uvažování pro modely s uvažováním: `low`, `medium`, `high`. |

Ostatní parametry OpenAI se předávají beze změn; o tom, zda je konkrétní model podporuje, rozhoduje jeho vývojář.

## Odpověď

| Parametr | Typ | Povinný | Popis |
| --- | --- | --- | --- |
| `choices[].message` | object |  | Odpověď modelu: `content`, při volání nástrojů – `tool_calls`. |
| `choices[].finish_reason` | string |  | `stop` – odpověď je dokončena; `length` – dosáhla limitu `max_tokens` (taková odpověď je i tak úplná a účtuje se podle skutečné spotřeby); `tool_calls` – model volá nástroj. |
| `usage` | object |  | `prompt_tokens`, `completion_tokens`, `total_tokens` – podle nich se počítá stržená částka. |

Máte další dotazy? Pošlete Request ID a popis – pomůžeme situaci objasnit.[Napsat podpoře](mailto:support@ailoot.ai)

## Ailoot · Společnost a její portfolio projektů





Ailoot staví na dlouhodobých provozních zkušenostech, široké klientské základně, stabilních službách a průběžném sledování KPI.





Společnost a její portfolio projektů: miliony zákazníků; měsíční tržby v miliardách.





Ailoot využívá tyto provozní zkušenosti k poskytování přístupu přes API k funkcím AI v produktech zákazníků, agentech, aplikacích a automatizacích.
