Chat Completions
MarkdownModellens svar på en konversation i OpenAI-format. Det vanligaste formatet: nästan alla klienter stöder det.
Fullständig guide
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": "Förklara i två meningar vad ett API är."}
]
}' 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": "Förklara i två meningar vad ett API är."}],
)
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: "Förklara i två meningar vad ett API är." }],
});
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": "Ett API är en överenskommelse om hur ett program ber ett annat att göra något…"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 21,
"completion_tokens": 48,
"total_tokens": 69
}
}Autentisering
- Authorizationheaderobligatoriskt
Nyckel i formatet
Bearer sk-…. Även följande headers kan användasx-api-keyellerx-goog-api-key.
Anropskropp
- modelstringobligatoriskt
Modellens ID från katalogen, till exempel
claude-sonnet-5-5. Modellen måste stödja OpenAI Chat-formatet. - messagesarrayobligatoriskt
Konversationshistorik: objekt med
role(system,developer,user,assistant,tool) ochcontent— en sträng eller en array med delar (text,image_url). - streambooleanvalfritt
Svar i Server-Sent Events-format. Standardvärdet är
false. Betald text levereras i ett enda block efter att kostnaden har beräknats, inte ord för ord. - stream_optionsobjectvalfritt
{"include_usage": true}— skicka slutligusagesom den sista händelsen i strömmen. - max_tokensintegervalfritt
Maximalt antal token i svaret. Det nya namnet är
max_completion_tokens. Om ingen gräns anges sätter Ailoot in 4096 (eller mindre om modellens svarsgräns är lägre; Grok har en egen gräns). Ange gränsen uttryckligen för långa svar, annars stannar svaret vid 4096 token medfinish_reason: "length". Gränsen ingår i reserveringen: ju högre den är, desto större tillgängligt saldo krävs. - temperaturenumbervalfritt
Slumpmässighet i svaret, vanligen från 0 till 2. Kan ignoreras av resonerande modeller.
- top_pnumbervalfritt
Alternativ till temperature: andelen av sannolikhetsmassan som används för att välja token.
- stopstring | arrayvalfritt
Strängar som stoppar genereringen.
- toolsarrayvalfritt
Beskrivningar av funktioner som modellen kan anropa. Formatet är detsamma som hos OpenAI:
{"type": "function", "function": {...}}. - tool_choicestring | objectvalfritt
auto,none,requiredeller en specifik funktion. - response_formatobjectvalfritt
{"type": "json_object"}eller{"type": "json_schema", ...}för ett strukturerat svar — om modellen stöder det. - reasoning_effortstringvalfritt
Resonemangets djup för resonerande modeller:
low,medium,high.
Övriga OpenAI-parametrar skickas vidare oförändrade; modellutvecklaren avgör om den specifika modellen stöder dem.
Svar
- choices[].messageobject
Modellens svar:
content, vid verktygsanrop —tool_calls. - choices[].finish_reasonstring
stop— svaret är klart;length— gränsen nåddes förmax_tokens(ett sådant svar räknas ändå som fullständigt och debiteras efter faktisk förbrukning);tool_calls— modellen anropar ett verktyg. - usageobject
prompt_tokens,completion_tokens,total_tokens— dessa används för att beräkna debiteringen.