Kontentga o'tish
Mulohaza darajasi

Mulohaza darajasi

Yangi

Mulohaza qiladigan model o'z mulohaza matnini javob yonida, alohida maydonda qaytaradi. Xostingdagi open-weight modellarda bitta so'rov maydoni model javob berishdan oldin qanchalik chuqur mulohaza qilishini belgilaydi.

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)

Javob mulohaza matnini reasoning_contentda, javobni contentda, mulohaza tokenlarini esa usageda olib keladi:

200 JSON
{
  "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}
  }
}

Qaysi modellar mulohaza qiladi

Model Mulohaza matnini qaytaradi Daraja maydonini qo'llaydi
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 Ha —
Xostingdagi har bir open-weight model Ha Ha

Bular GET /v1/models har bir id uchun ko'rsatadigan capabilities.reasoning va capabilities.reasoning_effort flaglari. Javob mulohaza matnini faqat model uni hosil qilgandagina olib keladi. Modellar va narxlar

Darajani belgilash

Har bir endpointning daraja yozilishi o'ziniki. Ularning hammasi bir xil to'rt darajadan birini tanlaydi.

Maydon Tur Standart Tavsif Qo'llaydi
reasoning_effort string high /v1/chat/completions. Model javob berishdan oldin qanchalik chuqur mulohaza qiladi: off, low, medium yoki high. Xostingdagi open-weight modellar
reasoning object | string /v1/chat/completions. Xuddi shu qiymat {"effort": "low"} yoki oddiy satr sifatida. Ikkala maydon yuborilsa, reasoning_effort hisobga olinadi. Xostingdagi open-weight modellar
reasoning.effort string high /v1/responses. {"effort": "low"} obyekti sifatida yoziladi. Xostingdagi open-weight modellar
thinking object /v1/messages. {"type": "enabled", "budget_tokens": n} yoki {"type": "disabled"}. Byudjet darajalardan birini tanlaydi; pastdagi jadvalga qarang. Xostingdagi open-weight modellar
{
  "model": "Kimi-K3-3BIT-REAP",
  "reasoning_effort": "low",
  "messages": [{"role": "user", "content": "Is 221 a prime number?"}]
}
Qiymat Yana qabul qilinadi Ta'siri
off none, minimal Mulohazasiz. Javob mulohaza matnini olib kelmaydi.
low Qisqa mulohaza.
medium default O'rta chuqurlik.
high max Eng chuqur daraja. Qiymat yubormaydigan so'rovning darajasi shu.
  • Qiymatlar katta-kichik harfga e'tibor bermay o'qiladi.
  • default qiymati mediumni bildiradi. Maydonni qoldirish highni bildiradi.
  • Shannon modellari (shannon-*) har bir so'rovda chuqurlikni o'zlari belgilaydi; GET /v1/models ular uchun reasoning_effort: falseni ko'rsatadi.

/v1/messages dagi thinking byudjeti

/v1/messages da thinking maydoni darajani tanlaydi. budget_tokens yuqoridagi darajalardan birini tanlaydi; u o'z token limiti emas. adaptive enabled kabi o'qiladi.

Siz yuborasiz Daraja
{"type": "disabled"} off
{"type": "enabled", "budget_tokens": n}, n 2,048 gacha low
n 2,049 dan 8,192 gacha medium
Kattaroq n yoki budget_tokenssiz enabled high
thinking maydoni yo'q high

Mulohaza matni qayerga keladi

Mulohaza matni doim javobdan alohida. Har bir formatning buning uchun o'z joyi bor:

Endpoint Oqimsiz Oqimli
/v1/chat/completions choices[0].message.reasoning_content: satr, model hech narsa hosil qilmagan bo'lsa null. delta.contentli chunk'lardan oldin choices[0].delta.reasoning_contentli chunk'lar.
/v1/responses message elementidan oldin output elementi {"type": "reasoning", "summary": [{"type": "summary_text", "text": "…"}]}. Mulohaza bo'lmasa element yo'q. reasoning elementi bilan response.output_item.added, so'ng response.reasoning_summary_text.delta hodisalari va bitta response.reasoning_summary_text.done.
/v1/messages Birinchi kontent bloki {"type": "thinking", "thinking": "…"}, keyin text bloki. Mulohaza bo'lmasa thinking bloki yo'q. thinking kontent bloki: content_block_start, thinking_deltali content_block_delta hodisalari, content_block_stop. Matn bloki ergashadi.
{
  "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}
  }
}

Qayerga qarash kerak, model bo'yicha:

Modellar Matn qayerga keladi
Xostingdagi open-weight modellar Har bir endpointda, oqimli yoki oqimsiz. off darajali yoki response_format / text.formatli so'rovga mulohaza matnisiz javob beriladi.
shannon-3, shannon-3-pro, shannon-3.1, shannon-3.1-pro Har bir endpointda, oqimli yoki oqimsiz, model mulohaza matnini hosil qilganda.
shannon-2-lite, shannon-2-pro /v1/chat/completions, oqimsiz: message.reasoning_contentda. tools yoki response_formatsiz so'rovda oqimli: model mulohaza qilayotganda oqim : thinking izoh satrlarini, so'ng javob chunk'larini olib keladi. /v1/messages, oqimli: matn blokidan oldin thinking bloki.
shannon-1.6-pro, shannon-coder-1 Oqimli javoblarda va toolsni olib keladigan so'rovlarga javoblarda, model mulohaza matnini hosil qilganda.

/v1/responses da oqimsiz javob Shannon 3 oilasi va xostingdagi open-weight modellar uchun reasoning elementini olib keladi.

Oqimni o'qish

Oqimda mulohaza matni birinchi, o'z deltalarida keladi, javob undan keyin. Ikkalasini alohida chop eting yoki saqlang:

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

Xostingdagi open-weight modelning birinchi chunk'i, mulohaza yoki javob, delta.role: "assistant"ni ham olib keladi. Oqim

Mulohaza tokenlari va hisob-kitob

Xostingdagi open-weight modellarda mulohaza tokenlari chiqish tokenlari: ular modelning chiqish narxida hisoblanadi va chiqish soni ularni allaqachon o'z ichiga oladi. usage bu yerda mulohaza ulushini ko'rsatadi:

Endpoint Maydon Izoh
/v1/chat/completions usage.completion_tokens_details.reasoning_tokens completion_tokensga allaqachon kiritilgan.
/v1/responses usage.output_tokens_details.reasoning_tokens output_tokensga allaqachon kiritilgan.
/v1/messages usage.output_tokens Mulohaza va javob birgalikda. Bu formatda alohida son yo'q.
  • Xostingdagi open-weight modellarda max_tokens javob matnini cheklaydi. Mulohaza tokenlari unga hisoblanmaydi.
  • Mulohaza chiqish sifatida hisoblangani uchun daraja ayni paytda xarajat sozlamasi ham: off mulohaza tokenlarini hosil qilmaydi.
  • Shannon modellari prompt_tokens, completion_tokens va total_tokensni (/v1/messages da input_tokens va output_tokens) mulohaza ulushisiz ko'rsatadi va har bir token uchun bitta qat'iy narxda hisoblaydi. Modellar va narxlar

Keyingi so'rovdagi mulohaza

Mulohazani qaytarib yuborishingiz shart emas. Yuboradigan suhbatingizdagi thinking bloki yoki reasoning elementi modelga uzatilmaydi, shuning uchun assistant navbati u bilan ham, usiz ham qaytishi mumkin. thinking blokida type va thinking ikki maydoni bor; signature yo'q.

Xatolar

Holat Tur Xabar Qachon
400 invalid_request_error unknown reasoning effort '<value>'; expected off, low, medium or high Xostingdagi open-weight model ro'yxatdan tashqari qiymat oldi, masalan xhigh. Balansingizdan hech narsa yechilmaydi.
422 invalid_request_error Failed to deserialize the JSON body into the target type: … reasoning_effort satr emas.

Autentifikatsiya, balans va server xatolari har bir so'rovdagi bilan bir xil. Xatolarni boshqarish