Umzamo wokucabanga
OKUSHAI-model ecabangayo ibuyisa umbhalo wayo wokucabanga eceleni kwempendulo, ku-field yawo. Kuma-model e-open-weight ahlinzekiwe i-field eyodwa yesicelo isetha ukuthi i-model icabanga ngokujula kangakanani ngaphambi kokuphendula.
POST https://api.shannon-ai.com/v1/chat/completions
from openai import OpenAI
client = OpenAI(api_key="YOUR_API_KEY", base_url="https://api.shannon-ai.com/v1")
response = client.chat.completions.create(
model="Kimi-K3-3BIT-REAP",
reasoning_effort="low",
messages=[{"role": "user", "content": "Is 221 a prime number?"}],
)
message = response.choices[0].message
print("Reasoning:", getattr(message, "reasoning_content", None))
print("Answer:", message.content)
print("Reasoning tokens:", response.usage.completion_tokens_details.reasoning_tokens) import OpenAI from "openai";
const client = new OpenAI({ apiKey: "YOUR_API_KEY", baseURL: "https://api.shannon-ai.com/v1" });
const response = await client.chat.completions.create({
model: "Kimi-K3-3BIT-REAP",
reasoning_effort: "low",
messages: [{ role: "user", content: "Is 221 a prime number?" }],
});
const message = response.choices[0].message;
console.log("Reasoning:", message.reasoning_content);
console.log("Answer:", message.content);
console.log("Reasoning tokens:", response.usage.completion_tokens_details.reasoning_tokens); curl https://api.shannon-ai.com/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "Kimi-K3-3BIT-REAP",
"reasoning_effort": "low",
"messages": [
{"role": "user", "content": "Is 221 a prime number?"}
]
}' Impendulo iphatha umbhalo wokucabanga ku-reasoning_content, impendulo ku-content, nama-token okucabanga ku-usage:
{
"id": "chatcmpl-2a6c8e0b4d1f4a3c9e7b5d3f1a8c6e4b",
"object": "chat.completion",
"created": 1791590400,
"model": "Kimi-K3-3BIT-REAP",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "No. 221 = 13 x 17, so it is not prime.",
"reasoning_content": "Try small primes. 221 / 13 = 17, so 221 = 13 x 17."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 14,
"completion_tokens": 43,
"total_tokens": 57,
"prompt_tokens_details": {"cached_tokens": 0},
"completion_tokens_details": {"reasoning_tokens": 27}
}
} Yimaphi ama-model acabangayo
| I-model | Ibuyisa umbhalo wokucabanga | Isebenzisa i-field ye-effort |
|---|---|---|
shannon-1.6-lite | — | — |
shannon-1.6-pro, shannon-2-lite, shannon-2-pro, shannon-3, shannon-3-pro, shannon-3.1, shannon-3.1-pro, shannon-coder-1 | Yebo | — |
| Wonke ama-model e-open-weight ahlinzekiwe | Yebo | Yebo |
Lezi yizimpawu ze-capabilities.reasoning ne-capabilities.reasoning_effort i-GET /v1/models eziyibika ku-id ngayinye. Impendulo iphatha umbhalo wokucabanga kuphela uma i-model ikhiqize okunye. Ama-model namanani
Ukusetha i-effort
I-endpoint ngayinye inendlela yayo yokubhala i-effort. Zonke zikhetha elinye lamazinga amane afanayo.
| I-field | Uhlobo | Okuzenzakalelayo | Incazelo | Kusebenza ku- |
|---|---|---|---|---|
reasoning_effort | string | high | /v1/chat/completions. Ukuthi i-model icabanga ngokujula kangakanani ngaphambi kokuphendula: off, low, medium noma high. | Ama-model e-open-weight ahlinzekiwe |
reasoning | object | string | /v1/chat/completions. Inani elifanayo njengo-{"effort": "low"} noma njenge-string yodwa. Uma zombili ama-field ethunyelwe, i-reasoning_effort iyabalwa. | Ama-model e-open-weight ahlinzekiwe | |
reasoning.effort | string | high | /v1/responses. Kubhalwa njenge-object {"effort": "low"}. | Ama-model e-open-weight ahlinzekiwe |
thinking | object | /v1/messages. {"type": "enabled", "budget_tokens": n} noma {"type": "disabled"}. Isabelomali sikhetha elinye lamazinga; bheka ithebula elingezansi. | Ama-model e-open-weight ahlinzekiwe |
{
"model": "Kimi-K3-3BIT-REAP",
"reasoning_effort": "low",
"messages": [{"role": "user", "content": "Is 221 a prime number?"}]
} {
"model": "Kimi-K3-3BIT-REAP",
"reasoning": {"effort": "low"},
"input": "Is 221 a prime number?"
} {
"model": "Kimi-K3-3BIT-REAP",
"max_tokens": 1024,
"thinking": {"type": "enabled", "budget_tokens": 2048},
"messages": [{"role": "user", "content": "Is 221 a prime number?"}]
} | Inani | Iyamukelwa futhi | Umphumela |
|---|---|---|
off | none, minimal | Akukho ukucabanga. Impendulo ayiphathi umbhalo wokucabanga. |
low | Ukucabanga okufushane. | |
medium | default | Ukujula okuphakathi. |
high | max | Izinga elijule kunawo wonke. Leli yizinga lesicelo esingathumeli nani. |
- Amanani afundwa ngaphandle kokunaka onkulu noma amancane.
- Inani
defaultlishomedium. Ukushiya i-field ngaphandle kushohigh. - Ama-model e-Shannon (
shannon-*) asetha ukujula kwawo esicelweni ngasinye; i-GET /v1/modelsibikareasoning_effort: falsekuwo.
Isabelomali sokucabanga ku-/v1/messages
Ku-/v1/messages i-field ye-thinking ikhetha izinga. I-budget_tokens ikhetha elinye lamazinga angenhla; akuwumkhawulo wama-token wawo uqobo. I-adaptive ifundwa njenge-enabled.
| Okuthumelayo | Izinga |
|---|---|
{"type": "disabled"} | off |
{"type": "enabled", "budget_tokens": n} ene-n efika ku-2,048 | low |
I-n kusuka ku-2,049 kuya ku-8,192 | medium |
I-n enkulu, noma i-enabled ngaphandle kwe-budget_tokens | high |
Ayikho i-field ye-thinking | high |
Lapho umbhalo wokucabanga ufika khona
Umbhalo wokucabanga uhlala ehlukile empendulweni. Isimo ngasinye sinendawo yaso:
| I-endpoint | Ayiyi-stream | Nge-stream |
|---|---|---|
/v1/chat/completions | choices[0].message.reasoning_content: i-string, noma null uma i-model ingakhiqizanga lutho. | Ama-chunk ane-choices[0].delta.reasoning_content, ngaphambi kwama-chunk ane-delta.content. |
/v1/responses | Into ye-output ethi {"type": "reasoning", "summary": [{"type": "summary_text", "text": "…"}]} ngaphambi kwento ye-message. Ayikho into uma kungekho ukucabanga. | I-response.output_item.added ene-item ye-reasoning, bese imicimbi ye-response.reasoning_summary_text.delta nekanye ye-response.reasoning_summary_text.done. |
/v1/messages | Ibhlokhi yokuqala yokuqukethwe {"type": "thinking", "thinking": "…"}, bese ibhlokhi ye-text. Ayikho ibhlokhi ye-thinking uma kungekho ukucabanga. | Ibhlokhi yokuqukethwe ye-thinking: i-content_block_start, imicimbi ye-content_block_delta ene-thinking_delta, i-content_block_stop. Ibhlokhi yombhalo iyalandela. |
{
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "No. 221 = 13 x 17, so it is not prime.",
"reasoning_content": "Try small primes. 221 / 13 = 17, so 221 = 13 x 17."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 14,
"completion_tokens": 43,
"total_tokens": 57,
"prompt_tokens_details": {"cached_tokens": 0},
"completion_tokens_details": {"reasoning_tokens": 27}
}
} {
"output": [
{
"id": "rs_6f0a2c4e8b1d4f3a9c7e5b3d1f8a6c4e",
"type": "reasoning",
"summary": [
{
"type": "summary_text",
"text": "Try small primes. 221 / 13 = 17, so 221 = 13 x 17."
}
]
},
{
"id": "msg_1b3d5f7a9c2e4b6d8f0a2c4e6b8d0f1a",
"type": "message",
"role": "assistant",
"status": "completed",
"content": [
{
"type": "output_text",
"text": "No. 221 = 13 x 17, so it is not prime.",
"annotations": []
}
]
}
],
"usage": {
"input_tokens": 14,
"input_tokens_details": {"cached_tokens": 0},
"output_tokens": 43,
"output_tokens_details": {"reasoning_tokens": 27},
"total_tokens": 57
}
} {
"content": [
{
"type": "thinking",
"thinking": "Try small primes. 221 / 13 = 17, so 221 = 13 x 17."
},
{"type": "text", "text": "No. 221 = 13 x 17, so it is not prime."}
],
"stop_reason": "end_turn",
"usage": {
"input_tokens": 14,
"cache_read_input_tokens": 0,
"cache_creation_input_tokens": 0,
"output_tokens": 43
}
} Lapho ubheka khona, ngama-model:
| Ama-model | Lapho umbhalo ufika khona |
|---|---|
| Ama-model e-open-weight ahlinzekiwe | Kuwo wonke ama-endpoint, nge-stream noma ngaphandle kwayo. Isicelo esine-effort off, noma esine-response_format / text.format, siphendulwa ngaphandle kombhalo wokucabanga. |
shannon-3, shannon-3-pro, shannon-3.1, shannon-3.1-pro | Kuwo wonke ama-endpoint, nge-stream noma ngaphandle kwayo, noma ngabe i-model ikhiqize umbhalo wokucabanga. |
shannon-2-lite, shannon-2-pro | /v1/chat/completions, ngaphandle kwe-stream: ku-message.reasoning_content. Nge-stream, esicelweni esingenayo i-tools noma i-response_format: i-stream iphatha imigqa yezimvo : thinking ngenkathi i-model icabanga, bese kuza ama-chunk empendulo. /v1/messages, nge-stream: ibhlokhi ye-thinking ngaphambi kwebhlokhi yombhalo. |
shannon-1.6-pro, shannon-coder-1 | Ezimpendulweni ze-stream nasezimpendulweni zezicelo eziphethe i-tools, noma ngabe i-model ikhiqize umbhalo wokucabanga. |
Ku-/v1/responses, impendulo engeyona i-stream iphatha into ye-reasoning yomndeni we-Shannon 3 nama-model e-open-weight ahlinzekiwe.
Ukufunda i-stream
Ku-stream umbhalo wokucabanga uza kuqala, kuma-delta awo, bese impendulo iyalandela. Phrinta noma ugcine lokhu kokubili ngokwehlukana:
from openai import OpenAI
client = OpenAI(api_key="YOUR_API_KEY", base_url="https://api.shannon-ai.com/v1")
stream = client.chat.completions.create(
model="Kimi-K3-3BIT-REAP",
reasoning_effort="medium",
stream=True,
messages=[{"role": "user", "content": "Is 221 a prime number?"}],
)
for chunk in stream:
if not chunk.choices:
continue
delta = chunk.choices[0].delta
reasoning = getattr(delta, "reasoning_content", None)
if reasoning:
print(reasoning, end="", flush=True) # the reasoning text comes first
if delta.content:
print(delta.content, end="", flush=True) # then the answer import OpenAI from "openai";
const client = new OpenAI({ apiKey: "YOUR_API_KEY", baseURL: "https://api.shannon-ai.com/v1" });
const stream = await client.chat.completions.create({
model: "Kimi-K3-3BIT-REAP",
reasoning_effort: "medium",
stream: true,
messages: [{ role: "user", content: "Is 221 a prime number?" }],
});
for await (const chunk of stream) {
const delta = chunk.choices[0]?.delta ?? {};
if (delta.reasoning_content) process.stdout.write(delta.reasoning_content); // the reasoning text comes first
if (delta.content) process.stdout.write(delta.content); // then the answer
} curl -N https://api.shannon-ai.com/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "Kimi-K3-3BIT-REAP",
"reasoning_effort": "medium",
"stream": true,
"messages": [
{"role": "user", "content": "Is 221 a prime number?"}
]
}' I-chunk yokuqala ye-model e-open-weight ehlinzekiwe, ukucabanga noma impendulo, iphinde iphathe delta.role: "assistant". Ukusakaza
Ama-token okucabanga nokukhokha
Kuma-model e-open-weight ahlinzekiwe, ama-token okucabanga angama-token okuphumayo: akhokhiswa ngentengo yokuphumayo ye-model, futhi inani lokuphumayo selibafaka. I-usage ikhombisa ingxenye yokucabanga lapha:
| I-endpoint | I-field | Inothi |
|---|---|---|
/v1/chat/completions | usage.completion_tokens_details.reasoning_tokens | Sekufakiwe ku-completion_tokens. |
/v1/responses | usage.output_tokens_details.reasoning_tokens | Sekufakiwe ku-output_tokens. |
/v1/messages | usage.output_tokens | Ukucabanga nempendulo ndawonye. Lesi simo asinakho ukubala okuhlukile. |
- Kuma-model e-open-weight ahlinzekiwe i-
max_tokensinqamula umbhalo wempendulo. Ama-token okucabanga awabalwa kuyo. - Ngoba ukucabanga kukhokhiswa njengokuphumayo, izinga le-effort liphinde libe yisilungiselelo sezindleko: i-
offayikhiqizi ama-token okucabanga. - Ama-model e-Shannon abika i-
prompt_tokens,completion_tokensne-total_tokens(input_tokensne-output_tokensku-/v1/messages) ngaphandle kwengxenye yokucabanga, futhi akhokhisa intengo eyodwa ye-token ngayinye. Ama-model namanani
Ukucabanga esicelweni esilandelayo
Akudingeki ukuthi uthumele ukucabanga kubuye. Ibhlokhi ye-thinking noma into ye-reasoning engxoxweni oyithumelayo ayidluliselwa ku-model, ngakho isikhathi se-assistant singabuya nakho noma ngaphandle kwakho. Ibhlokhi ye-thinking inama-field amabili i-type ne-thinking; ayinayo i-signature.
Amaphutha
| Isimo | Uhlobo | Umlayezo | Nini |
|---|---|---|---|
400 | invalid_request_error | unknown reasoning effort '<value>'; expected off, low, medium or high | I-model e-open-weight ehlinzekiwe ithole inani eliphandle kohlu, isibonelo xhigh. Akukho okuthathwa ku-balance yakho. |
422 | invalid_request_error | Failed to deserialize the JSON body into the target type: … | I-reasoning_effort akuyona i-string. |
Amaphutha okuqinisekisa, e-balance nawe-seva afana nawo wonke amanye amaphutha. Ukuphathwa kwamaphutha