API Responses
NovoPOST /v1/responses sprejme navodila in seznam elementov vhoda ter vrne objekt odgovora, sestavljen iz elementov izhoda, v formatu OpenAI Responses. Uporabljajte ga z API-jem responses v SDK-ju OpenAI in z orodji, zgrajenimi nanj, kot je Codex CLI. Končna točka ne hrani stanja: z vsakim zahtevkom pošljite celoten pogovor.
POST https://api.shannon-ai.com/v1/responses
Najmanjši zahtevek je id modela in besedilo. Odgovor ni pretakan, razen če to zahtevate.
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.shannon-ai.com/v1",
)
response = client.responses.create(
model="shannon-3",
input="Say hello in one sentence.",
)
print(response.output_text) import OpenAI from "openai";
const client = new OpenAI({
apiKey: "YOUR_API_KEY",
baseURL: "https://api.shannon-ai.com/v1",
});
const response = await client.responses.create({
model: "shannon-3",
input: "Say hello in one sentence.",
});
console.log(response.output_text); curl https://api.shannon-ai.com/v1/responses \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "shannon-3",
"input": "Say hello in one sentence."
}' Odgovor je objekt odgovora. Njegov output vsebuje razmišljanje, kadar je model razmišljal, in sporočilo:
{
"id": "resp_5f0c1e7a9b3d4c62a8e1f07d2b46c9a3",
"object": "response",
"created_at": 1791625200,
"model": "shannon-3",
"status": "completed",
"error": null,
"incomplete_details": null,
"instructions": null,
"metadata": {},
"parallel_tool_calls": true,
"temperature": null,
"tool_choice": "auto",
"tools": [],
"top_p": null,
"output": [
{
"id": "rs_8a2e6c1f4b7d4e03b9c5a1d70f3e2b64",
"type": "reasoning",
"summary": [
{
"type": "summary_text",
"text": "The user wants a greeting in one sentence. Keep it short and friendly."
}
]
},
{
"id": "msg_1c7b9e3a5d2f4a86b0e4c8d19a6f7e25",
"type": "message",
"role": "assistant",
"status": "completed",
"content": [
{
"type": "output_text",
"text": "Hello, it is good to meet you.",
"annotations": []
}
]
}
],
"usage": {
"input_tokens": 1184,
"output_tokens": 46,
"total_tokens": 1230
}
} Polja zahtevka
Zahtevek potrebuje model in input. Stolpec Upoštevajo navaja modele, pri katerih polje spremeni odgovor. Gostovani modeli z odprtimi utežmi so dvanajst id s seznama modelov; družina Shannon 3 so shannon-3, shannon-3-pro, shannon-3.1 in shannon-3.1-pro. Modeli in cene
| Polje | Tip | Privzeto | Opis | Upoštevajo |
|---|---|---|---|---|
model | string | Obvezno. Id s seznama modelov. Ujemanje ne razlikuje velikih in malih črk. Manjkajoč ali neobjavljen id vrne 400 unknown model. | Vsi modeli | |
input | string | array | Niz, ki se bere kot eno sporočilo uporabnika, ali polje elementov vhoda. Glejte Elementi vhoda spodaj. | Vsi modeli | |
instructions | string | Navodila za model, sistemski prompt tega formata. | Gostovani modeli z odprtimi utežmi, shannon-1.6-*, shannon-2-*, shannon-coder-1 | |
stream | boolean | false | true pošlje odgovor kot dogodke, ki jih pošilja strežnik (server-sent events). Glejte Pretakanje spodaj. | Vsi modeli |
max_output_tokens | integer | 4096 | Zgornja meja odgovora, v tokenih. Vrednost zunaj razpona od 1 do 65,536 se premakne v ta razpon. Je tudi znesek, ki se odloži z vašega stanja, medtem ko zahtevek teče. Glejte Omejitev izhoda spodaj. | Gostovani modeli z odprtimi utežmi, shannon-1.6-*, shannon-2-*, shannon-coder-1 |
temperature | number | Temperatura vzorčenja. Pri gostovanih modelih z odprtimi utežmi so vrednosti omejene med 0 in 2. | Gostovani modeli z odprtimi utežmi; shannon-1.6-*, shannon-2-* in shannon-coder-1 pri odgovorih brez pretakanja | |
top_p | number | Jedrno vzorčenje (nucleus sampling). Vrednosti so omejene med 0 in 1. | Gostovani modeli z odprtimi utežmi | |
tools | array | Funkcije, ki jih model lahko pokliče, v ravni obliki tega formata: {"type": "function", "name", "description", "parameters"}. Glejte Orodja spodaj. | Vsi modeli | |
tool_choice | string | object | auto | "auto" prepusti odločitev modelu. "required" ga prisili, da pokliče orodje. {"type": "function", "name": "…"} ga prisili, da pokliče to orodje. | Gostovani modeli z odprtimi utežmi |
reasoning | object | {"effort": "…"} z off, low, medium ali high. Vsaka druga vrednost vrne 400. | Gostovani modeli z odprtimi utežmi | |
text | object | {"format": {…}} zahteva odgovor v JSON. Glejte Strukturiran izhod spodaj. | Vse stopnje Shannon; gostovani modeli z odprtimi utežmi, kot je navedeno po id |
previous_response_id, store, metadata, parallel_tool_calls, truncation, include, user in prompt_cache_key so sprejeti, da obstoječa odjemalska koda deluje nespremenjena. Odgovora ne spreminjajo. Ker se noben pogovor ne shranjuje, nadaljevalni zahtevek v input nosi prejšnje obrate.
Elementi vhoda
Element vhoda je sporočilo, z role in content, ali tipiziran element, ki nosi klic orodja ali njegov rezultat. content je niz ali polje delov.
| Element | Opis | Upoštevajo |
|---|---|---|
{"role": "user", "content": …} | Kar vprašate. content je niz ali deli input_text in input_image. | Vsi modeli |
{"role": "assistant", "content": …} | Prejšnji odgovor modela. content je niz ali deli output_text. | Vsi modeli |
{"role": "system", "content": …}{"role": "developer", "content": …} | Navodila znotraj pogovora. | Gostovani modeli z odprtimi utežmi |
{"type": "function_call", "call_id": "…", "name": "…", "arguments": "…"} | Klic orodja, ki ga je model naredil v prejšnjem odgovoru. arguments je niz JSON. | Vsi modeli |
{"type": "function_call_output", "call_id": "…", "output": "…"} | Rezultat tistega klica. call_id je id klica, output pa rezultat kot niz. | Vsi modeli |
Navodila vstavite v polje instructions. Pri id družine Shannon 3 navodila, ki morajo veljati, vstavite v sporočilo user.
Elemente output odgovora lahko vrnete v input take, kot so: elementi message in function_call se preberejo, elementi reasoning se preskočijo.
Deli vsebine
| Del | Opis | Na voljo na |
|---|---|---|
{"type": "input_text", "text": "…"} | Besedilo sporočila uporabnika. | Vsi modeli |
{"type": "output_text", "text": "…"} | Besedilo sporočila asistenta. | Vsi modeli |
{"type": "input_image", "image_url": "…"} | Slika, kot URL data: z vsebino base64 ali kot URL http(s). | Družina Shannon 3, shannon-1.6-lite, shannon-1.6-pro in gostovani modeli z odprtimi utežmi, ki navajajo vhod slik |
{"type": "input_file", "file_data": "data:application/pdf;base64,…"} | Dokument (PDF, Word, PowerPoint ali Excel): file_data vsebuje URL data: ali file_url URL http(s). | Družina Shannon 3 |
Pri stopnjah Shannon se slike in datoteke berejo iz zadnjega elementa user v input. Velikosti in omejitve imajo svojo stran. Slike in datoteke
Zahtevek z navodili in možnostmi
Ta zahtevek pošilja navodila, pogovor kot elemente vhoda, omejitev izhoda, temperaturo in napor razmišljanja. Uporablja gostovani model z odprtimi utežmi, ki upošteva vse to.
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.shannon-ai.com/v1",
)
response = client.responses.create(
model="DeepSeek-V4-Flash-0731-W4A16-AUTOROUND-REAP",
instructions="You are a physics teacher. Answer in two sentences.",
input=[
{"role": "user", "content": "Why is the sky blue?"},
{"role": "assistant", "content": "Air scatters blue light more than red light."},
{"role": "user", "content": "And why are sunsets red?"},
],
max_output_tokens=512,
temperature=0.3,
reasoning={"effort": "low"},
)
for item in response.output:
if item.type == "reasoning":
print("reasoning:", item.summary[0].text)
elif item.type == "message":
print("answer:", item.content[0].text)
print(response.usage) import OpenAI from "openai";
const client = new OpenAI({
apiKey: "YOUR_API_KEY",
baseURL: "https://api.shannon-ai.com/v1",
});
const response = await client.responses.create({
model: "DeepSeek-V4-Flash-0731-W4A16-AUTOROUND-REAP",
instructions: "You are a physics teacher. Answer in two sentences.",
input: [
{ role: "user", content: "Why is the sky blue?" },
{ role: "assistant", content: "Air scatters blue light more than red light." },
{ role: "user", content: "And why are sunsets red?" },
],
max_output_tokens: 512,
temperature: 0.3,
reasoning: { effort: "low" },
});
for (const item of response.output) {
if (item.type === "reasoning") console.log("reasoning:", item.summary[0].text);
if (item.type === "message") console.log("answer:", item.content[0].text);
}
console.log(response.usage); curl https://api.shannon-ai.com/v1/responses \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "DeepSeek-V4-Flash-0731-W4A16-AUTOROUND-REAP",
"instructions": "You are a physics teacher. Answer in two sentences.",
"input": [
{"role": "user", "content": "Why is the sky blue?"},
{"role": "assistant", "content": "Air scatters blue light more than red light."},
{"role": "user", "content": "And why are sunsets red?"}
],
"max_output_tokens": 512,
"temperature": 0.3,
"reasoning": {"effort": "low"}
}' Odgovor gostovanega modela z odprtimi utežmi ima id, object, model, created_at, status, output in usage. Njegov usage doda tokene, prebrane iz predpomnilnika, in tokene, porabljene za razmišljanje:
{
"usage": {
"input_tokens": 58,
"input_tokens_details": {
"cached_tokens": 0
},
"output_tokens": 67,
"output_tokens_details": {
"reasoning_tokens": 19
},
"total_tokens": 125
}
} Objekt odgovora
id, object, status, output in usage so v vsakem odgovoru. Svojo kodo gradite na njih.
| Polje | Tip | Opis | Pošlje |
|---|---|---|---|
id | string | resp_, ki mu sledi 32 šestnajstiških znakov. | Vsi modeli |
object | string | Vedno response. | Vsi modeli |
status | string | completed. V toku je najprej in_progress, v dogodku response.failed pa failed. | Vsi modeli |
output | array | Elementi izhoda v vrstnem redu, v katerem jih je model ustvaril: reasoning, message, function_call. | Vsi modeli |
usage | object | input_tokens, output_tokens in total_tokens. | Vsi modeli |
usage.input_tokens_details | object | cached_tokens: vhodni tokeni, prebrani iz predpomnilnika promptov. | Gostovani modeli z odprtimi utežmi |
usage.output_tokens_details | object | reasoning_tokens: izhodni tokeni, porabljeni za razmišljanje. | Gostovani modeli z odprtimi utežmi |
model | string | Kanonični id modela, ki je odgovoril. | Družina Shannon 3, gostovani modeli z odprtimi utežmi |
created_at | integer | Čas odgovora, v sekundah Unix. | Družina Shannon 3, gostovani modeli z odprtimi utežmi |
instructions, tools, temperature, … | instructions, tools in temperature ponovijo zahtevek. error in incomplete_details sta null, metadata je {}, parallel_tool_calls je true, tool_choice je auto in top_p je null. | Družina Shannon 3 |
Elementi izhoda
| Element | Opis |
|---|---|
{"id": "rs_…", "type": "reasoning", "summary": [{"type": "summary_text", "text": "…"}]} | Razmišljanje modela kot en del summary_text. Prisotno samo, kadar je model razmišljal. |
{"id": "msg_…", "type": "message", "role": "assistant", "content": [{"type": "output_text", "text": "…"}]} | Odgovor: en del output_text z besedilom. |
{"id": "fc_…", "type": "function_call", "call_id": "call_…", "name": "…", "arguments": "…"} | Klic orodja. arguments je niz JSON. Rezultat pošljite nazaj z istim call_id. |
SDK-ji OpenAI besedilo sporočila združijo namesto vas v response.output_text.
Pretakanje
Za dogodke, ki jih pošilja strežnik (server-sent events), nastavite stream na true. Vsak okvir ima vrstico event: z imenom dogodka in vrstico data: z objektom JSON; objekt ponovi ime v type. Delte povežite z njihovim elementom prek output_index.
Z SDK-jem OpenAI dogodke preberite po njihovem type:
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.shannon-ai.com/v1",
)
stream = client.responses.create(
model="shannon-3",
input="Explain server-sent events in three sentences.",
stream=True,
)
for event in stream:
kind = getattr(event, "type", "error") # an event without a type is an error event
if kind == "response.reasoning_summary_text.delta":
pass # a piece of reasoning: event.delta
elif kind == "response.output_text.delta":
print(event.delta, end="", flush=True)
elif kind == "response.output_item.done" and event.item.type == "function_call":
print("\ntool call:", event.item.name, event.item.arguments)
elif kind == "response.completed":
print("\n", event.response.usage)
elif kind in ("response.failed", "error"):
raise RuntimeError("the stream failed, send the request again") import OpenAI from "openai";
const client = new OpenAI({
apiKey: "YOUR_API_KEY",
baseURL: "https://api.shannon-ai.com/v1",
});
const stream = await client.responses.create({
model: "shannon-3",
input: "Explain server-sent events in three sentences.",
stream: true,
});
for await (const event of stream) {
if (event.type === "response.reasoning_summary_text.delta") {
// a piece of reasoning: event.delta
} else if (event.type === "response.output_text.delta") {
process.stdout.write(event.delta);
} else if (event.type === "response.output_item.done" && event.item.type === "function_call") {
console.log("\ntool call:", event.item.name, event.item.arguments);
} else if (event.type === "response.completed") {
console.log("\n", event.response.usage);
} else if (event.type === "response.failed" || event.type === "error") {
throw new Error("the stream failed, send the request again");
}
} curl -N https://api.shannon-ai.com/v1/responses \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "shannon-3",
"input": "Explain server-sent events in three sentences.",
"stream": true
}' Dogodki prispejo v tem vrstnem redu. Skupine za razmišljanje, sporočilo in klice orodij se pojavijo samo, kadar jih odgovor ima.
| Dogodek | Vsebina | Kdaj |
|---|---|---|
response.created | response | Vedno prvi. response.status je in_progress, response.output pa je prazen. |
response.in_progress | response | Vedno drugi, z istim objektom. |
response.output_item.added | output_index, item | Razmišljanje se začne: element reasoning s praznim summary. |
response.reasoning_summary_text.delta | output_index, summary_index, delta | Košček razmišljanja. |
response.reasoning_summary_text.done | output_index, summary_index, text | Razmišljanje je popolno: njegov celoten text. |
response.output_item.done | output_index, item | Dokončani element reasoning. |
response.output_item.added | output_index, item | Odgovor se začne: element message s statusom in_progress in brez vsebine. |
response.content_part.added | output_index, content_index, part | Odpre se prazen del output_text. |
response.output_text.delta | output_index, content_index, delta | Košček odgovora. |
response.output_text.done | output_index, content_index, text | Odgovor je popoln: njegov celoten text. |
response.content_part.done | output_index, content_index, part | Dokončani del output_text. |
response.output_item.done | output_index, item | Dokončani element message s statusom completed. |
response.output_item.added | output_index, item | Klic orodja se začne: element function_call z call_id, name in praznimi arguments. |
response.function_call_arguments.delta | output_index, delta | Argumenti klica, popolni v enem delta. |
response.function_call_arguments.done | output_index, arguments | Isti argumenti, kot arguments. |
response.output_item.done | output_index, item | Dokončani element function_call. |
response.completed | response | Ob uspehu vedno zadnji: celoten objekt odgovora z output in usage. |
event: response.created
data: {"type":"response.created","response":{"id":"resp_5f0c…","object":"response","status":"in_progress","output":[], …}}
event: response.in_progress
data: {"type":"response.in_progress","response":{"id":"resp_5f0c…","object":"response","status":"in_progress","output":[], …}}
event: response.output_item.added
data: {"type":"response.output_item.added","output_index":0,"item":{"id":"msg_1c7b…","type":"message","role":"assistant","status":"in_progress","content":[]}}
event: response.content_part.added
data: {"type":"response.content_part.added","output_index":0,"content_index":0,"part":{"type":"output_text","text":""}}
event: response.output_text.delta
data: {"type":"response.output_text.delta","output_index":0,"content_index":0,"delta":"Server-sent"}
event: response.output_text.delta
data: {"type":"response.output_text.delta","output_index":0,"content_index":0,"delta":" events let a server push text over one HTTP reply."}
event: response.output_text.done
data: {"type":"response.output_text.done","output_index":0,"content_index":0,"text":"Server-sent events let a server push text over one HTTP reply."}
event: response.content_part.done
data: {"type":"response.content_part.done","output_index":0,"content_index":0,"part":{"type":"output_text","text":"Server-sent events let a server push text over one HTTP reply."}}
event: response.output_item.done
data: {"type":"response.output_item.done","output_index":0,"item":{"id":"msg_1c7b…","type":"message","role":"assistant","status":"completed","content":[{"type":"output_text","text":"Server-sent events let a server push text over one HTTP reply.","annotations":[]}]}}
event: response.completed
data: {"type":"response.completed","response":{"id":"resp_5f0c…","object":"response","status":"completed","output":[…],"usage":{"input_tokens":1190,"output_tokens":18,"total_tokens":1208}, …}} Tok, ki odpove
Pri stopnjah Shannon se neuspel odgovor konča z response.failed namesto z response.completed. Njegov response.status je failed, response.error pa vsebuje code, rate_limit_exceeded ali server_error, in message.
Pri gostovanih modelih z odprtimi utežmi je napaka dogodek error s code api_error in message. Za njim še vedno sledi response.completed.
Tok obravnavajte kot neuspel, kadar vsebuje dogodek response.failed ali error, in zahtevek pošljite znova.
Orodja
Orodje je funkcija, ki jo zažene vaša koda. Opišite ga v tools; kadar ga model želi, odgovor namesto sporočila ali ob njem vsebuje element function_call.
Definicija orodja v tools:
[
{
"type": "function",
"name": "get_weather",
"description": "Current weather for a city.",
"parameters": {
"type": "object",
"properties": {
"city": {
"type": "string"
}
},
"required": [
"city"
]
}
}
] output odgovora, ki ga kliče:
[
{
"id": "call_3d9a7c1e5b2f4a60c8e1d7f09b24a6c5",
"type": "function_call",
"name": "get_weather",
"call_id": "call_3d9a7c1e5b2f4a60c8e1d7f09b24a6c5",
"arguments": "{\"city\":\"Paris\"}"
}
] Zaženite funkcijo, nato zahtevek pošljite znova, z dodanim klicem in njegovim rezultatom v input:
[
{
"role": "user",
"content": "What is the weather in Paris?"
},
{
"type": "function_call",
"call_id": "call_3d9a7c1e5b2f4a60c8e1d7f09b24a6c5",
"name": "get_weather",
"arguments": "{\"city\":\"Paris\"}"
},
{
"type": "function_call_output",
"call_id": "call_3d9a7c1e5b2f4a60c8e1d7f09b24a6c5",
"output": "{\"temperature_c\": 18, \"sky\": \"cloudy\"}"
}
] Berejo se samo orodja tipa function. Pri shannon-1.6-*, shannon-2-* in shannon-coder-1 je shema parameters zožena na skupne ključne besede JSON Schema: oneOf se bere kot anyOf, ključne besede, kot so $ref, additionalProperties, const, default in title, pa se modelu ne posredujejo.
Vrednosti tool_choice required in poimenovana funkcija upoštevajo gostovani modeli z odprtimi utežmi.
Zanka orodij je v celoti opisana na svoji strani. Klicanje funkcij
Strukturiran izhod
Ta format strukturiran izhod zapiše kot text.format. Shema je neposredno v format, ob name in strict, ne pod članom json_schema kot pri Chat Completions.
{"type": "json_object"}zahteva poljuben objekt JSON.{"type": "json_schema", "name", "schema", "strict"}zahteva JSON, ki sledi vaši shemi.strictjetrue, kadar ga izpustite.
{
"model": "shannon-1.6-lite",
"input": "Extract the city and the date: 'The conference opens in Lisbon on 12 May 2027.'",
"text": {
"format": {
"type": "json_schema",
"name": "event",
"strict": true,
"schema": {
"type": "object",
"properties": {
"city": {
"type": "string"
},
"date": {
"type": "string",
"description": "ISO 8601 date"
}
},
"required": [
"city",
"date"
]
}
}
}
} JSON prispe kot besedilo v delu output_text sporočila; razčlenite ga sami. Gostovani model z odprtimi utežmi brez strukturiranega izhoda vrne 400.
{"city": "Lisbon", "date": "2027-05-12"} Kateri model sprejema katero obliko, je navedeno na svoji strani. Strukturirani izhodi
Razmišljanje
Model, ki razmišlja, vrne svoje razmišljanje kot element izhoda tipa reasoning, pred sporočilom. V toku prispe kot dogodki response.reasoning_summary_text.delta.
Gostovani modeli z odprtimi utežmi upoštevajo reasoning.effort: off, low, medium ali high, pri čemer velja high, kadar ne pošljete ničesar. off ne vrne elementa razmišljanja. Pošljite ga kot objekt; goli niz na tej končni točki ni prebran.
Napori so opisani na svoji strani. Napor razmišljanja
Omejitev izhoda
max_output_tokens je 4,096, kadar ga ne pošljete. To je število tokenov, odloženih z vašega stanja, ko se zahtevek začne; ko je odgovor popoln, se ta znesek nadomesti s tem, kar je zahtevek porabil. Vrednost, ki se ne prilega v vaše preostalo stanje, vrne 429 Quota exceeded.
Omejuje dolžino odgovora pri shannon-1.6-*, shannon-2-* in shannon-coder-1 ter dolžino besedila odgovora pri gostovanih modelih z odprtimi utežmi.
Na tej končni točki se shannon-coder-1 obračuna v tokenih z vašega stanja, kot vsak drug model.
Telo zahtevka je lahko veliko do 32 MiB. Omejitve in stanje
Napake
Napake uporabljajo telo napake OpenAI: objekt error s type in message; nekatere nosijo tudi code in param z vrednostjo null. Tabela navaja, kar ta končna točka vrača najpogosteje. Celoten seznam, s tem, kaj ponoviti, ima svojo stran. Obravnava napak
| Status | Tip | Sporočilo | Kdaj |
|---|---|---|---|
401 | authentication_error | Missing authenticationInvalid API key | API ključ ni bil poslan ali pa je ključ neznan ali preklican. |
400 | invalid_request_error | unknown model: <id> | model manjka ali ni objavljen id. |
400 | invalid_request_error | No user message provided. | Stopnje Shannon: input ne vsebuje besedila uporabnika. |
400 | invalid_request_error | <id> does not accept image input | Slika je bila poslana gostovanemu modelu z odprtimi utežmi brez vhoda slik. |
400 | invalid_request_error | <id> does not accept response_format | text.format je bil poslan gostovanemu modelu z odprtimi utežmi brez strukturiranega izhoda. |
400 | invalid_request_error | unknown reasoning effort '<value>'; expected off, low, medium or high | reasoning.effort vsebuje vrednost zunaj seznama. |
422 | invalid_request_error | Failed to deserialize the JSON body into the target type: … | Telo je veljaven JSON, vendar ima polje napačen tip. |
429 | rate_limit_error | Quota exceeded. Upgrade your plan at shannon-ai.com/plan | max_output_tokens je večji od tega, kar je ostalo od vašega stanja. |
429 | rate_limit_error | Too many requests. Retry in <n>s. | Zaščita pred poplavo: več kot 120 zahtevkov v eni minuti na vašem računu. |
500 | api_error | The model backend failed to answer. Please retry. | Model ni ustvaril odgovora. Pošljite zahtevek znova. |
502 | api_error | The model backend failed to answer. Please retry. | Enako, pri gostovanih modelih z odprtimi utežmi. |
504 | api_error | upstream timed out | Gostovani model z odprtimi utežmi je potreboval dlje od časovne omejitve odgovora brez pretakanja. Pošljite ga z stream nastavljenim na true. |