ئاستی بیرکردنەوە
Nûمۆدێلێک کە بیر دەکاتەوە دەقی بیرکردنەوەکەی لەتەنیشت وەڵامەکە دەگەڕێنێتەوە، لە بوارێکی تایبەتی خۆیدا. لەسەر مۆدێلە open-weight ـە میوانداریکراوەکان یەک بواری داواکاری دیاری دەکات مۆدێلەکە چەند قووڵ بیر دەکاتەوە پێش وەڵامدانەوە.
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?"}
]
}' وەڵامەکە دەقی بیرکردنەوە لە reasoning_content دا هەڵدەگرێت، وەڵامەکە لە content دا، و تۆکنەکانی بیرکردنەوە لە 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}
}
} کام مۆدێل بیر دەکەنەوە
| مۆدێل | دەقی بیرکردنەوە دەگەڕێنێتەوە | بواری ئاست جێبەجێ دەکات |
|---|---|---|
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 | بەڵێ | — |
| هەموو مۆدێلێکی open-weight ی میوانداریکراو | بەڵێ | بەڵێ |
ئەمانە ئاڵاکانی capabilities.reasoning و capabilities.reasoning_effort ن کە GET /v1/models بۆ هەر id ێک ڕاپۆرتیان دەکات. وەڵامێک تەنها کاتێک دەقی بیرکردنەوە هەڵدەگرێت کە مۆدێلەکە هەندێکی دروست کردبێت. مۆدێل و نرخ
دانانی ئاست
هەر endpoint ێک شێوازی نووسینی تایبەتی خۆی هەیە بۆ ئاست. هەموویان یەکێک لەو هەمان چوار ئاستە هەڵدەبژێرن.
| بوار | جۆر | بنەڕەتی | وەسف | جێبەجێکراو لەلایەن |
|---|---|---|---|---|
reasoning_effort | string | high | /v1/chat/completions. مۆدێلەکە چەند قووڵ بیر دەکاتەوە پێش وەڵامدانەوە: off، low، medium یان high. | مۆدێلە open-weight ـە میوانداریکراوەکان |
reasoning | object | string | /v1/chat/completions. هەمان بەها وەک {"effort": "low"} یان وەک string ی سادە. کاتێک هەردوو بوارەکە دەنێردرێن، reasoning_effort هەژمار دەکرێت. | مۆدێلە open-weight ـە میوانداریکراوەکان | |
reasoning.effort | string | high | /v1/responses. وەک ئۆبجێکتی {"effort": "low"} دەنووسرێت. | مۆدێلە open-weight ـە میوانداریکراوەکان |
thinking | object | /v1/messages. {"type": "enabled", "budget_tokens": n} یان {"type": "disabled"}. بودجەکە یەکێک لە ئاستەکان هەڵدەبژێرێت؛ خشتەی خوارەوە ببینە. | مۆدێلە open-weight ـە میوانداریکراوەکان |
{
"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?"}]
} | بەها | هەروەها وەردەگیرێت | کاریگەری |
|---|---|---|
off | none, minimal | بێ بیرکردنەوە. وەڵامەکە هیچ دەقی بیرکردنەوە هەڵناگرێت. |
low | بیرکردنەوەی کورت. | |
medium | default | قووڵی ناوەند. |
high | max | قووڵترین ئاست. ئەمە ئاستی ئەو داواکارییەیە کە هیچ بەهایەک نانێرێت. |
- بەهاکان بەبێ گوێدانە پیتی گەورە یان بچووک دەخوێنرێنەوە.
- بەهای
defaultواتایmediumە. بەجێهێشتنی بوارەکە واتایhighە. - مۆدێلەکانی Shannon (
shannon-*) قووڵییەکەی خۆیان لە هەر داواکارییەکدا دادەنێن؛GET /v1/modelsبۆیانreasoning_effort: falseڕاپۆرت دەکات.
بودجەی thinking لەسەر /v1/messages
لەسەر /v1/messages بواری thinking ئاستەکە هەڵدەبژێرێت. budget_tokens یەکێک لە ئاستەکانی سەرەوە هەڵدەبژێرێت؛ سنووری تۆکنی تایبەتی خۆی نییە. adaptive وەک enabled دەخوێنرێتەوە.
| تۆ دەنێریت | ئاست |
|---|---|
{"type": "disabled"} | off |
{"type": "enabled", "budget_tokens": n} لەگەڵ n تا 2,048 | low |
n لە 2,049 تا 8,192 | medium |
n ێکی گەورەتر، یان enabled بەبێ budget_tokens | high |
بەبێ بواری thinking | high |
دەقی بیرکردنەوە لە کوێ دەگات
دەقی بیرکردنەوە هەمیشە لە وەڵامەکە جیایە. هەر فۆرماتێک شوێنی تایبەتی خۆی هەیە بۆی:
| Endpoint | بێ stream | بە stream |
|---|---|---|
/v1/chat/completions | choices[0].message.reasoning_content: string ێک، یان null کاتێک مۆدێلەکە هیچی دروست نەکردووە. | Chunk ـەکان بە choices[0].delta.reasoning_content، پێش chunk ـەکانی delta.content. |
/v1/responses | ئایتمێکی output بەم شێوەیە {"type": "reasoning", "summary": [{"type": "summary_text", "text": "…"}]} پێش ئایتمی message. کاتێک بیرکردنەوە نەبێت ئایتم نییە. | response.output_item.added لەگەڵ ئایتمێکی reasoning، پاشان ڕووداوەکانی response.reasoning_summary_text.delta و یەک response.reasoning_summary_text.done. |
/v1/messages | یەکەم بلۆکی ناوەڕۆک {"type": "thinking", "thinking": "…"}، پاشان بلۆکی text. کاتێک بیرکردنەوە نەبێت بلۆکی thinking نییە. | بلۆکێکی ناوەڕۆکی thinking: content_block_start، ڕووداوەکانی content_block_delta لەگەڵ thinking_delta، content_block_stop. بلۆکی دەق دوای ئەوە دێت. |
{
"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
}
} لە کوێ بیدۆزیتەوە، بۆ هەر مۆدێلێک:
| مۆدێلەکان | دەق لە کوێ دەگات |
|---|---|
| مۆدێلە open-weight ـە میوانداریکراوەکان | لەسەر هەموو endpoint ێک، بە stream یان بەبێ. داواکارییەک بە ئاستی off، یان بە response_format / text.format، بەبێ دەقی بیرکردنەوە وەڵام دەدرێتەوە. |
shannon-3، shannon-3-pro، shannon-3.1، shannon-3.1-pro | لەسەر هەموو endpoint ێک، بە stream یان بەبێ، هەر کاتێک مۆدێلەکە دەقی بیرکردنەوەی دروست کردبێت. |
shannon-2-lite، shannon-2-pro | /v1/chat/completions، بێ stream: لە message.reasoning_content دا. بە stream، لە داواکارییەک بەبێ tools یان response_format: stream هێڵی تێبینی : thinking هەڵدەگرێت لەکاتی بیرکردنەوەی مۆدێلەکە، پاشان chunk ـەکانی وەڵام. /v1/messages، بە stream: بلۆکی thinking پێش بلۆکی دەق. |
shannon-1.6-pro، shannon-coder-1 | لە وەڵامە stream کراوەکان و لە وەڵامی ئەو داواکارییانەی tools هەڵدەگرن، هەر کاتێک مۆدێلەکە دەقی بیرکردنەوەی دروست کردبێت. |
لەسەر /v1/responses، وەڵامێکی بێ stream ئایتمی reasoning هەڵدەگرێت بۆ بنەماڵەی Shannon 3 و مۆدێلە open-weight ـە میوانداریکراوەکان.
خوێندنەوەی stream
لە stream دا دەقی بیرکردنەوە یەکەم دێت، لە delta ی تایبەتی خۆیدا، و وەڵامەکە دوای ئەوە دێت. هەردووکیان بە جیا چاپ یان هەڵبگرە:
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?"}
]
}' یەکەم chunk ی مۆدێلێکی open-weight ی میوانداریکراو، بیرکردنەوە یان وەڵام، delta.role: "assistant" یش هەڵدەگرێت. Streaming
تۆکنەکانی بیرکردنەوە و نرخگرتن
لەسەر مۆدێلە open-weight ـە میوانداریکراوەکان، تۆکنەکانی بیرکردنەوە تۆکنی outputن: بە نرخی output ی مۆدێلەکە نرخ دەگیرێن، و ژمارەی output پێشتر لەخۆیان دەگرێت. usage بەشی بیرکردنەوە لێرە نیشان دەدات:
| Endpoint | بوار | تێبینی |
|---|---|---|
/v1/chat/completions | usage.completion_tokens_details.reasoning_tokens | پێشتر لە completion_tokens دا هەیە. |
/v1/responses | usage.output_tokens_details.reasoning_tokens | پێشتر لە output_tokens دا هەیە. |
/v1/messages | usage.output_tokens | بیرکردنەوە و وەڵام پێکەوە. ئەم فۆرماتە ژمارەیەکی جیای نییە. |
- لەسەر مۆدێلە open-weight ـە میوانداریکراوەکان
max_tokensدەقی وەڵامەکە سنووردار دەکات. تۆکنەکانی بیرکردنەوە لەسەری هەژمار ناکرێن. - چونکە بیرکردنەوە وەک output نرخ دەگیرێت، ئاستی بیرکردنەوە ڕێکخستنێکی تێچووشە:
offهیچ تۆکنی بیرکردنەوە دروست ناکات. - مۆدێلەکانی Shannon
prompt_tokens،completion_tokensوtotal_tokens(input_tokensوoutput_tokensلەسەر/v1/messages) ڕاپۆرت دەکەن بەبێ بەشی بیرکردنەوە، و یەک نرخی جێگیر بۆ هەر تۆکنێک دەگرن. مۆدێل و نرخ
بیرکردنەوە لە داواکاری دواتردا
پێویست ناکات بیرکردنەوە بنێریتەوە. بلۆکی thinking یان ئایتمی reasoning لە گفتوگۆکەی دەینێریت بۆ مۆدێلەکە ناگوازرێتەوە، بۆیە نۆرەی assistant دەتوانێت لەگەڵیدا یان بەبێ ئەو بگەڕێتەوە. بلۆکی thinking دوو بوارە type و thinking؛ signature ی نییە.
هەڵەکان
| دۆخ | جۆر | پەیام | کەی |
|---|---|---|---|
400 | invalid_request_error | unknown reasoning effort '<value>'; expected off, low, medium or high | مۆدێلێکی open-weight ی میوانداریکراو بەهایەکی لە دەرەوەی لیستەکە وەرگرتووە، بۆ نموونە xhigh. هیچ شتێک لە باڵانسەکەت ناگیرێت. |
422 | invalid_request_error | Failed to deserialize the JSON body into the target type: … | reasoning_effort string نییە. |
هەڵەکانی authentication، باڵانس و سێرڤەر هەمان هی هەموو داواکارییەکن. Çewtî