Chat Completions
MarkdownOdpoveď modelu na konverzáciu vo formáte OpenAI. Najrozšírenejší formát: rozumejú mu takmer všetci klienti.
Úplný sprievodca
https://api.ailoot.ai/v1/chat/completionscurl 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": "Vysvetli v dvoch vetách, čo je API."}
]
}' 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": "Vysvetli v dvoch vetách, čo je API."}],
)
print(resp.choices[0].message.content)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: "Vysvetli v dvoch vetách, čo je API." }],
});
console.log(resp.choices[0].message.content);{
"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, ako jedna aplikácia žiada inú, aby niečo urobila…"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 21,
"completion_tokens": 48,
"total_tokens": 69
}
}Autorizácia
- Authorizationheaderpovinné
Kľúč vo formáte
Bearer sk-…. Možno použiť aj hlavičkyx-api-keyalebox-goog-api-key.
Telo požiadavky
- modelstringpovinné
ID modelu z katalógu, napríklad
claude-sonnet-5-5. Model musí podporovať formát OpenAI Chat. - messagesarraypovinné
História konverzácie: objekty s
role(system,developer,user,assistant,tool) acontent– reťazcom alebo poľom častí (text,image_url). - streambooleanvoliteľné
Odpoveď vo formáte Server-Sent Events. Predvolene
false. Platený text príde v jednom bloku po výpočte ceny, nie po jednotlivých slovách. - stream_optionsobjectvoliteľné
{"include_usage": true}– odoslať konečnéusageako poslednú udalosť streamu. - max_tokensintegervoliteľné
Maximálny počet tokenov odpovede. Nový názov je
max_completion_tokens. Ak limit neuvediete, Ailoot nastaví 4096 (alebo menej, ak má model nižší limit odpovede; Grok má vlastný limit). Pri dlhých odpovediach nastavte limit výslovne, inak sa odpoveď zastaví pri 4096 tokenoch sfinish_reason: "length". Limit je súčasťou rezervácie: čím je vyšší, tým viac voľného zostatku potrebujete. - temperaturenumbervoliteľné
Miera náhodnosti odpovede, zvyčajne od 0 do 2. Modely s uvažovaním ju môžu ignorovať.
- top_pnumbervoliteľné
Alternatíva k temperature: podiel pravdepodobnostnej hmotnosti pri výbere tokenov.
- stopstring | arrayvoliteľné
Reťazce, pri ktorých sa generovanie zastaví.
- toolsarrayvoliteľné
Opisy funkcií, ktoré môže model zavolať. Formát je rovnaký ako pri OpenAI:
{"type": "function", "function": {...}}. - tool_choicestring | objectvoliteľné
auto,none,requiredalebo konkrétna funkcia. - response_formatobjectvoliteľné
{"type": "json_object"}alebo{"type": "json_schema", ...}pre štruktúrovanú odpoveď, ak to model podporuje. - reasoning_effortstringvoliteľné
Hĺbka uvažovania pri modeloch s uvažovaním:
low,medium,high.
Ostatné parametre OpenAI sa odovzdávajú bez zmien; o tom, či ich konkrétny model podporuje, rozhoduje jeho vývojár.
Odpoveď
- choices[].messageobject
Odpoveď modelu:
content, pri volaní nástrojovtool_calls. - choices[].finish_reasonstring
stop– odpoveď sa skončila;length– dosiahol sa limitmax_tokens(takáto odpoveď je napriek tomu úplná a účtuje sa podľa skutočnej spotreby);tool_calls– model volá nástroj. - usageobject
prompt_tokens,completion_tokens,total_tokens– podľa nich sa vypočítava účtovaná suma.