Responses API-a
BerriaPOST /v1/responses-ek jarraibideak eta sarrera-elementuen zerrenda bat hartzen ditu eta irteera-elementuez osatutako response objektu bat itzultzen du, OpenAI Responses formatuan. Erabili OpenAI SDK-aren responses APIarekin eta haren gainean eraikitako tresnekin, hala nola Codex CLI. Endpoint-ak ez du egoerarik gordetzen: bidali elkarrizketa osoa eskaera guztiekin.
POST https://api.shannon-ai.com/v1/responses
Eskaerarik txikienak modelo id bat eta testu bat ditu. Erantzuna ez da streamean bidaltzen, hala eskatzen ez baduzu.
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."
}' Erantzuna response objektu bat da. Bere output-ak arrazonamendua dauka, modeloak arrazoitu badu, eta mezua:
{
"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
}
} Eskaera-eremuak
model eta input dira eskaera batek behar duena. Aplikatzen duena zutabeak eremu batek erantzuna aldatzen duen modeloak adierazten ditu. Pisu irekiko modelo ostatatuak modelo-zerrendako hamabi id dira; Shannon 3 familia shannon-3, shannon-3-pro, shannon-3.1 eta shannon-3.1-pro da. Modeloak eta prezioak
| Eremua | Mota | Lehenetsia | Deskribapena | Aplikatzen duena |
|---|---|---|---|---|
model | string | Beharrezkoa. Modelo-zerrendako id bat. Maiuskulak eta minuskulak ez dira bereizten. Falta den edo argitaratu gabeko id batek 400 unknown model itzultzen du. | Modelo guztiak | |
input | string | array | Kate bat, erabiltzaile-mezu bakar gisa irakurtzen dena, edo sarrera-elementuen array bat. Ikus beheko Sarrera-elementuak. | Modelo guztiak | |
instructions | string | Modeloarentzako jarraibideak, formatu honen system prompt-a. | Pisu irekiko modelo ostatatuak, shannon-1.6-*, shannon-2-*, shannon-coder-1 | |
stream | boolean | false | true balioak erantzuna server-sent events gisa bidaltzen du. Ikus beheko Streaminga. | Modelo guztiak |
max_output_tokens | integer | 4096 | Erantzunaren goiko muga, tokenetan. 1etik 65,536ra bitarteko tartetik kanpoko balioa tarte horretara mugitzen da. Eskaerak irauten duen bitartean zure saldotik bereizten den kopurua ere bada. Ikus beheko Irteera-muga. | Pisu irekiko modelo ostatatuak, shannon-1.6-*, shannon-2-*, shannon-coder-1 |
temperature | number | Laginketa-tenperatura. Pisu irekiko modelo ostatatuetan balioak 0 eta 2 artean mantentzen dira. | Pisu irekiko modelo ostatatuak; shannon-1.6-*, shannon-2-* eta shannon-coder-1 stream gabeko erantzunetan | |
top_p | number | Nukleo-laginketa. Balioak 0 eta 1 artean mantentzen dira. | Pisu irekiko modelo ostatatuak | |
tools | array | Modeloak dei diezazkiokeen funtzioak, formatu honen forma lauan: {"type": "function", "name", "description", "parameters"}. Ikus beheko Tresnak. | Modelo guztiak | |
tool_choice | string | object | auto | "auto" balioak modeloari erabakitzen uzten dio. "required" balioak tresna bati deitzera behartzen du. {"type": "function", "name": "…"} balioak tresna jakin horri deitzera behartzen du. | Pisu irekiko modelo ostatatuak |
reasoning | object | {"effort": "…"} off, low, medium edo high balioekin. Beste edozein balioak 400 itzultzen du. | Pisu irekiko modelo ostatatuak | |
text | object | {"format": {…}} JSON erantzun bat eskatzen du. Ikus beheko Irteera egituratua. | Shannon maila guztiak; pisu irekiko modelo ostatatuak id bakoitzeko zerrendatu bezala |
previous_response_id, store, metadata, parallel_tool_calls, truncation, include, user eta prompt_cache_key onartzen dira, lehendik dagoen bezero-kodea aldatu gabe ibil dadin. Ez dute erantzuna aldatzen. Elkarrizketarik gordetzen ez denez, ondorengo eskaera batek aurreko txandak input-ean darama.
Sarrera-elementuak
Sarrera-elementu bat mezu bat da, role eta content dituena, edo tresna-dei bat edo haren emaitza daraman elementu tipatu bat. content kate bat da edo zati-array bat.
| Elementua | Deskribapena | Aplikatzen duena |
|---|---|---|
{"role": "user", "content": …} | Zer galdetzen duzun. content kate bat da, edo input_text eta input_image zatiak. | Modelo guztiak |
{"role": "assistant", "content": …} | Modeloaren aurreko erantzun bat. content kate bat da, edo output_text zatiak. | Modelo guztiak |
{"role": "system", "content": …}{"role": "developer", "content": …} | Elkarrizketaren barruko jarraibideak. | Pisu irekiko modelo ostatatuak |
{"type": "function_call", "call_id": "…", "name": "…", "arguments": "…"} | Modeloak aurreko erantzun batean egindako tresna-dei bat. arguments JSON kate bat da. | Modelo guztiak |
{"type": "function_call_output", "call_id": "…", "output": "…"} | Dei horren emaitza. call_id deiaren id-a da eta output emaitza kate gisa. | Modelo guztiak |
Jarri jarraibideak instructions eremuan. Shannon 3 familiako id batekin, jarri bete behar diren jarraibideak user mezuan.
Erantzun baten output-eko elementuak bere horretan itzul daitezke input-era: message eta function_call elementuak irakurtzen dira, reasoning elementuak saltatzen dira.
Eduki-zatiak
| Zatia | Deskribapena | Eskuragarri hemen |
|---|---|---|
{"type": "input_text", "text": "…"} | Erabiltzaile-mezu baten testua. | Modelo guztiak |
{"type": "output_text", "text": "…"} | Assistant mezu baten testua. | Modelo guztiak |
{"type": "input_image", "image_url": "…"} | Irudi bat, base64 edukia duen data: URL gisa edo http(s) URL gisa. | Shannon 3 familia, shannon-1.6-lite, shannon-1.6-pro, eta irudi-sarrera zerrendatzen duten pisu irekiko modelo ostatatuak |
{"type": "input_file", "file_data": "data:application/pdf;base64,…"} | Dokumentu bat (PDF, Word, PowerPoint edo Excel): file_data-k data: URL bat du, edo file_url-ek http(s) URL bat. | Shannon 3 familia |
Shannon mailetan, irudiak eta fitxategiak input-eko azken user elementutik irakurtzen dira. Tamainek eta mugek beren orrialdea dute. Irudiak eta fitxategiak
Jarraibideak eta aukerak dituen eskaera
Eskaera honek jarraibideak, elkarrizketa sarrera-elementu gisa, irteera-muga bat, tenperatura bat eta arrazonamendu-esfortzu bat bidaltzen ditu. Pisu irekiko modelo ostatatu bat erabiltzen du, eta horrek guztiak aplikatzen ditu.
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"}
}' Pisu irekiko modelo ostatatu baten erantzunak id, object, model, created_at, status, output eta usage ditu. Bere usage-k cache-tik irakurritako tokenak eta arrazonamenduan erabilitako tokenak gehitzen ditu:
{
"usage": {
"input_tokens": 58,
"input_tokens_details": {
"cached_tokens": 0
},
"output_tokens": 67,
"output_tokens_details": {
"reasoning_tokens": 19
},
"total_tokens": 125
}
} Response objektua
id, object, status, output eta usage erantzun guztietan daude. Oinarritu zure kodea horietan.
| Eremua | Mota | Deskribapena | Bidaltzailea |
|---|---|---|---|
id | string | resp_ eta ondoren 32 karaktere hexadezimal. | Modelo guztiak |
object | string | Beti response. | Modelo guztiak |
status | string | completed. Stream batean lehenengo in_progress da, eta failed response.failed gertaera batean. | Modelo guztiak |
output | array | Irteera-elementuak modeloak sortu zituen ordenan: reasoning, message, function_call. | Modelo guztiak |
usage | object | input_tokens, output_tokens eta total_tokens. | Modelo guztiak |
usage.input_tokens_details | object | cached_tokens: prompt cache-tik irakurritako sarrera-tokenak. | Pisu irekiko modelo ostatatuak |
usage.output_tokens_details | object | reasoning_tokens: arrazonamenduan erabilitako irteera-tokenak. | Pisu irekiko modelo ostatatuak |
model | string | Erantzun duen modeloaren id kanonikoa. | Shannon 3 familia, pisu irekiko modelo ostatatuak |
created_at | integer | Erantzunaren ordua, Unix segundotan. | Shannon 3 familia, pisu irekiko modelo ostatatuak |
instructions, tools, temperature, … | instructions, tools eta temperature eskaeraren balioak errepikatzen dituzte. error eta incomplete_details null dira, metadata {} da, parallel_tool_calls true da, tool_choice auto da eta top_p null da. | Shannon 3 familia |
Irteera-elementuak
| Elementua | Deskribapena |
|---|---|
{"id": "rs_…", "type": "reasoning", "summary": [{"type": "summary_text", "text": "…"}]} | Modeloaren arrazonamendua summary_text zati bakar gisa. Modeloak arrazoitu duenean bakarrik dago. |
{"id": "msg_…", "type": "message", "role": "assistant", "content": [{"type": "output_text", "text": "…"}]} | Erantzuna: testua duen output_text zati bat. |
{"id": "fc_…", "type": "function_call", "call_id": "call_…", "name": "…", "arguments": "…"} | Tresna-dei bat. arguments JSON kate bat da. Bidali emaitza berriro call_id berarekin. |
OpenAI SDKek mezuaren testua zuretzat elkartzen dute response.output_text atalean.
Streaminga
Ezarri stream true gisa server-sent events jasotzeko. Frame bakoitzak gertaeraren izena duen event: lerro bat eta JSON objektu bat duen data: lerro bat ditu; objektuak izena errepikatzen du type-n. Lotu deltak beren elementuarekin output_index bidez.
OpenAI SDKrekin, irakurri gertaerak beren type bidez:
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
}' Gertaerak ordena honetan iristen dira. Arrazonamenduaren, mezuaren eta tresna-deien taldeak erantzunak dituenean bakarrik agertzen dira.
| Gertaera | Karga | Noiz |
|---|---|---|
response.created | response | Beti lehena. response.status in_progress da eta response.output hutsik dago. |
response.in_progress | response | Beti bigarrena, objektu berarekin. |
response.output_item.added | output_index, item | Arrazonamendua hasten da: reasoning elementu bat, summary hutsarekin. |
response.reasoning_summary_text.delta | output_index, summary_index, delta | Arrazonamenduaren zati bat. |
response.reasoning_summary_text.done | output_index, summary_index, text | Arrazonamendua osatu da: bere text osoa. |
response.output_item.done | output_index, item | Amaitutako reasoning elementua. |
response.output_item.added | output_index, item | Erantzuna hasten da: message elementu bat, in_progress egoerarekin eta edukirik gabe. |
response.content_part.added | output_index, content_index, part | output_text zati huts bat irekitzen da. |
response.output_text.delta | output_index, content_index, delta | Erantzunaren zati bat. |
response.output_text.done | output_index, content_index, text | Erantzuna osatu da: bere text osoa. |
response.content_part.done | output_index, content_index, part | Amaitutako output_text zatia. |
response.output_item.done | output_index, item | Amaitutako message elementua, completed egoerarekin. |
response.output_item.added | output_index, item | Tresna-dei bat hasten da: function_call elementu bat, call_id, name eta arguments hutsarekin. |
response.function_call_arguments.delta | output_index, delta | Deiaren argumentuak, osorik delta batean. |
response.function_call_arguments.done | output_index, arguments | Argumentu berberak, arguments gisa. |
response.output_item.done | output_index, item | Amaitutako function_call elementua. |
response.completed | response | Beti azkena arrakastaz amaitzen denean: response objektu osoa, output eta usage barne. |
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}, …}} Huts egiten duen stream bat
Shannon mailetan, huts egindako erantzun bat response.failed-ekin amaitzen da, response.completed-en ordez. Bere response.status failed da eta response.error-ek code bat dauka, rate_limit_exceeded edo server_error, eta message bat.
Pisu irekiko modelo ostatatuetan hutsegitea error gertaera bat da, code api_error eta message batekin. response.completed hala ere hurrena dator.
Hartu stream bat huts egin duela response.failed edo error gertaera bat duenean, eta bidali eskaera berriro.
Tresnak
Tresna bat zure kodeak exekutatzen duen funtzio bat da. Deskribatu tools-en; modeloak nahi duenean, erantzunak function_call elementu bat dauka, mezuaren ordez edo mezuaren ondoan.
Tresna baten definizioa tools-en:
[
{
"type": "function",
"name": "get_weather",
"description": "Current weather for a city.",
"parameters": {
"type": "object",
"properties": {
"city": {
"type": "string"
}
},
"required": [
"city"
]
}
}
] Hura deitzen duen erantzun baten output-a:
[
{
"id": "call_3d9a7c1e5b2f4a60c8e1d7f09b24a6c5",
"type": "function_call",
"name": "get_weather",
"call_id": "call_3d9a7c1e5b2f4a60c8e1d7f09b24a6c5",
"arguments": "{\"city\":\"Paris\"}"
}
] Exekutatu funtzioa, eta bidali eskaera berriro deia eta bere emaitza input-era gehituta:
[
{
"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\"}"
}
] function motako tresnak bakarrik irakurtzen dira. shannon-1.6-*, shannon-2-* eta shannon-coder-1-en parameters eskema JSON Schema-ren gako arruntetara murrizten da: oneOf anyOf gisa irakurtzen da, eta $ref, additionalProperties, const, default eta title bezalako gakoak ez zaizkio modeloari pasatzen.
tool_choice-ren required balioa eta izendatutako funtzio bat pisu irekiko modelo ostatatuek aplikatzen dituzte.
Tresna-begizta osorik bere orrian azaltzen da. Funtzio-deiak
Irteera egituratua
Formatu honek irteera egituratua text.format gisa idazten du. Eskema zuzenean format-ean dago, name eta strict-en ondoan, ez json_schema kide baten azpian, Chat Completions-en bezala.
{"type": "json_object"}-k edozein JSON objektu eskatzen du.{"type": "json_schema", "name", "schema", "strict"}-k zure eskema betetzen duen JSON eskatzen du.stricttrueda kanpoan uzten baduzu.
{
"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 testu gisa iristen da mezuaren output_text zatian; parseatu zuk zeuk. Irteera egituraturik gabeko pisu irekiko modelo ostatatu batek 400 itzultzen du.
{"city": "Lisbon", "date": "2027-05-12"} Zein modelok zer forma onartzen duen bere orrian zerrendatzen da. Irteera egituratuak
Arrazonamendua
Arrazoitzen duen modelo batek bere arrazonamendua reasoning motako irteera-elementu gisa itzultzen du, mezuaren aurretik. Stream batean response.reasoning_summary_text.delta gertaera gisa iristen da.
Pisu irekiko modelo ostatatuek reasoning.effort aplikatzen dute: off, low, medium edo high, eta high ezer bidaltzen ez baduzu. off-ek ez du arrazonamendu-elementurik itzultzen. Bidali objektu gisa; kate hutsa ez da irakurtzen endpoint honetan.
Esfortzuak beren orrian azaltzen dira. Arrazonamendu-esfortzua
Irteera-muga
max_output_tokens 4,096 da bidaltzen ez baduzu. Eskaera hasten denean zure saldotik bereizten den token kopurua da; erantzuna osatzen denean, kopuru hori eskaerak erabilitakoarekin ordezkatzen da. Zure gainerako saldoan sartzen ez den balio batek 429 Quota exceeded itzultzen du.
Erantzunaren luzera mugatzen du shannon-1.6-*, shannon-2-* eta shannon-coder-1 modeloetan, eta erantzun-testuaren luzera pisu irekiko modelo ostatatuetan.
Endpoint honetan shannon-coder-1 tokenetan kobratzen da zure saldotik, beste modelo guztiak bezala.
Eskaera-gorputzak 32 MiB arte izan dezake. Mugak eta saldoa
Erroreak
Erroreek OpenAI errore-gorputza erabiltzen dute: type eta message dituen error objektu bat; batzuek code eta param ere badituzte null balioarekin. Taulak endpoint honek maizen itzultzen duena zerrendatzen du. Zerrenda osoak, zer berriz saiatu behar den adierazita, bere orrialdea du. Errore‑kudeaketa
| Egoera | Mota | Mezua | Noiz |
|---|---|---|---|
401 | authentication_error | Missing authenticationInvalid API key | Ez da API gakorik bidali, edo gakoa ezezaguna edo indargabetua da. |
400 | invalid_request_error | unknown model: <id> | model falta da edo ez da argitaratutako id bat. |
400 | invalid_request_error | No user message provided. | Shannon mailak: input-ek ez du erabiltzaile-testurik. |
400 | invalid_request_error | <id> does not accept image input | Irudi bat bidali da irudi-sarrerarik ez duen pisu irekiko modelo ostatatu batera. |
400 | invalid_request_error | <id> does not accept response_format | text.format bidali da irteera egituraturik ez duen pisu irekiko modelo ostatatu batera. |
400 | invalid_request_error | unknown reasoning effort '<value>'; expected off, low, medium or high | reasoning.effort-ek zerrendatik kanpoko balio bat du. |
422 | invalid_request_error | Failed to deserialize the JSON body into the target type: … | Gorputza JSON baliodun da baina eremu batek mota okerra du. |
429 | rate_limit_error | Quota exceeded. Upgrade your plan at shannon-ai.com/plan | max_output_tokens zure saldoan geratzen dena baino handiagoa da. |
429 | rate_limit_error | Too many requests. Retry in <n>s. | Flood protection: minutu batean 120 eskaera baino gehiago zure kontuan. |
500 | api_error | The model backend failed to answer. Please retry. | Modeloak ez du erantzunik sortu. Bidali eskaera berriro. |
502 | api_error | The model backend failed to answer. Please retry. | Bera, pisu irekiko modelo ostatatuetan. |
504 | api_error | upstream timed out | Pisu irekiko modelo ostatatu batek stream gabeko erantzun baten denbora-muga baino gehiago behar izan du. Bidali stream true gisa ezarrita. |