ພາບລວມ
ແຜນທີ່ຂອງ API: ທຸກ endpoint, ຄຳຮ້ອງຂໍ ແລະ ຂໍ້ຜິດພາດໜ້າຕາເປັນແນວໃດ, ການເອີ້ນຖືກຈ່າຍແນວໃດ, ແລະ ສິ່ງທີ່ຄວນຮູ້ເມື່ອທ່ານມາຈາກ SDK ຂອງ OpenAI ຫຼື Anthropic.
Endpoint
ທຸກ endpoint ຢູ່ພາຍໃຕ້ base URL ດຽວ ແລະ ໃຫ້ບໍລິການຜ່ານ HTTPS.
https://api.shannon-ai.com | Endpoint | ຮູບແບບ | ໃຊ້ເພື່ອຫຍັງ |
|---|---|---|
POST /v1/chat/completions | OpenAI Chat Completions | ສົ່ງການສົນທະນາ, ຮັບຄຳຕອບຖັດໄປ. ມີ ຫຼື ບໍ່ມີ streaming. |
POST /v1/messages | Anthropic Messages | ຄືກັນ, ໃນຮູບຮ່າງຄຳຮ້ອງຂໍ ແລະ ຄຳຕອບຂອງ SDK Anthropic. |
POST /v1/responses | OpenAI Responses | ຄືກັນ, ໃນຮູບຮ່າງ Responses. endpoint ບໍ່ເກັບສະຖານະ: ສົ່ງການສົນທະນາມາກັບທຸກຄຳຮ້ອງຂໍ. |
GET /v1/models | ລາຍຊື່ model ຂອງ OpenAI | ລາຍຊື່ model ພ້ອມ context window, ລາຄາ ແລະ ຄວາມສາມາດ. ບໍ່ຕ້ອງໃຊ້ key. |
POST /v1/tokenize | Shannon API | ນັບ tokens ຂອງຂໍ້ຄວາມ ຫຼື ຂອງຄຳຮ້ອງຂໍ chat ສຳລັບ hosted open-weight model. ບໍ່ເສຍຄ່າ. |
POST /v1/messages/count_tokens | ການນັບ token ຂອງ Anthropic | ນັບ input tokens ຂອງຄຳຮ້ອງຂໍ Messages ສຳລັບ hosted open-weight model. ບໍ່ເສຍຄ່າ. |
ສາມ endpoint ທີ່ສ້າງຂໍ້ຄວາມເຂົ້າເຖິງ model ດຽວກັນ. ເລືອກອັນທີ່ຮູບແບບກົງກັບທີ່ໂຄ້ດຂອງທ່ານໃຊ້ຢູ່ແລ້ວ.
ພື້ນຖານຂອງຄຳຮ້ອງຂໍ
| Header | ຄຳອະທິບາຍ |
|---|---|
Authorization: Bearer <key> | API key ຂອງທ່ານ. ຈຳເປັນໃນທຸກ endpoint ຍົກເວັ້ນ GET /v1/models, ເວັ້ນແຕ່ທ່ານສົ່ງ x-api-key. |
x-api-key: <key> | key ດຽວກັນໃນ header ທີ່ SDK Anthropic ສົ່ງ. ອ່ານໃນທຸກ endpoint. |
Content-Type: application/json | ຈຳເປັນໃນທຸກ POST. ຖ້າບໍ່ມີ ຄຳຕອບແມ່ນ 415. |
x-request-id: <your id> | ບໍ່ບັງຄັບ. id ຂອງທ່ານເອງສຳລັບຄຳຮ້ອງຂໍ; ມັນກັບມາໃນ header ຄຳຕອບ x-request-id. ຖ້າບໍ່ມີ API ສ້າງໜຶ່ງອັນເປັນຕົວອັກສອນເລກຖານສິບຫົກ 12 ຕົວ. |
- body ຂອງທຸກ
POSTແມ່ນ object JSON ໜຶ່ງອັນ, ສູງສຸດ 32 MiB. - ຟີລດ໌ທີ່ API ບໍ່ຮູ້ຈັກບໍ່ເຮັດໃຫ້ເກີດຂໍ້ຜິດພາດ ແລະ ບໍ່ມີຜົນ. ຄຳຮ້ອງຂໍທີ່ຂຽນສຳລັບຜູ້ໃຫ້ບໍລິການອື່ນບໍ່ລົ້ມເຫຼວຍ້ອນຟີລດ໌ເກີນ.
- ຟີລດ໌ທີ່ຮູ້ຈັກແຕ່ມີປະເພດ JSON ຜິດ, ຫຼື ຂາດຟີລດ໌ທີ່ຈຳເປັນ, ຖືກຕອບດ້ວຍ
422. body ທີ່ບໍ່ແມ່ນ JSON ທີ່ຖືກຕ້ອງຖືກຕອບດ້ວຍ400. modelແມ່ນໜຶ່ງໃນ id ໃນ Models & pricing. ຕົວພິມນ້ອຍ-ໃຫຍ່ບໍ່ສຳຄັນ.
ຄຳຕອບເປັນ JSON, ຫຼື stream ຂອງ server-sent events ເມື່ອຄຳຮ້ອງຂໍຕັ້ງ stream ເປັນ true. ແຕ່ລະ endpoint ຕອບໃນຮູບແບບຂອງຕົນເອງ. ທຸກຄຳຕອບມີ header x-request-id.
ສິ່ງທີ່ຄຳຮ້ອງຂໍຕ້ອງຜ່ານ
ຄຳຮ້ອງຂໍຖືກກວດຕາມລຳດັບຄົງທີ່ກ່ອນ model ຈະເຮັດວຽກ. ການກວດທຳອິດທີ່ບໍ່ຜ່ານຈະເປັນຜູ້ຕອບ, ດັ່ງນັ້ນ 401 ຍັງບໍ່ບອກຫຍັງກ່ຽວກັບ body.
| ກວດຕາມລຳດັບນີ້ | Status ເມື່ອລົ້ມເຫຼວ |
|---|---|
| API key | 401 |
| body: ຂະໜາດ, content type, JSON, ປະເພດຟີລດ໌ | 413 · 415 · 400 · 422 |
| id ຂອງ model | 400 |
| Flood protection: 120 ຄຳຮ້ອງຂໍຕໍ່ນາທີຕໍ່ບັນຊີ | 429 |
| ຍອດເງິນ: ງົບ output ຂອງຄຳຮ້ອງຂໍຕ້ອງພໍດີ | 429 |
ຮູບຮ່າງຂອງຂໍ້ຜິດພາດ
ຂໍ້ຜິດພາດແມ່ນ object JSON ທີ່ມີ error ເຊິ່ງເກັບ type ແລະ message. /v1/messages ຫໍ່ມັນຕາມທີ່ SDK Anthropic ຄາດຫວັງ; path ອື່ນທັງໝົດໃຊ້ຮູບຮ່າງ OpenAI.
{
"error": {
"type": "invalid_request_error",
"message": "unknown model: gpt-4o"
}
} {
"type": "error",
"error": {
"type": "invalid_request_error",
"message": "unknown model: gpt-4o"
}
} - ອ່ານ
typeແລະmessage.codeແລະparamມີໃນບາງຂໍ້ຜິດພາດເທົ່ານັ້ນ: ຖືວ່າເປັນທາງເລືອກ.paramເປັນnullສະເໝີ. - ຫຼັງຈາກ stream ເລີ່ມແລ້ວ, status ເປັນ
200ແລ້ວ. ຄວາມລົ້ມເຫຼວຈຶ່ງມາເປັນ error frame ພາຍໃນ stream. - ທຸກຄຳຕອບຂໍ້ຜິດພາດມີ header
x-request-id.
| ສະຖານະ | ປະເພດ | ເມື່ອໃດ |
|---|---|---|
400 | invalid_request_error | body ບໍ່ແມ່ນ JSON ທີ່ຖືກຕ້ອງ, id ຂອງ model ບໍ່ຮູ້ຈັກ, ຫຼື model ບໍ່ຮັບປະເພດ input ທີ່ທ່ານສົ່ງ. |
401 | authentication_error | ຂາດ key ຫຼື key ບໍ່ຖືກຕ້ອງ. |
404 | not_found_error | ບໍ່ມີ path ນີ້. |
405 | api_error | path ມີຢູ່, ແຕ່ method ຜິດ. |
413 | invalid_request_error | body ໃຫຍ່ກວ່າ 32 MiB. |
415 | invalid_request_error | Content-Type ບໍ່ແມ່ນ application/json. |
422 | invalid_request_error | ຟີລດ໌ມີປະເພດ JSON ຜິດ ຫຼື ຂາດຟີລດ໌ທີ່ຈຳເປັນ. |
429 | rate_limit_error | ຍອດເງິນບໍ່ພໍສຳລັບຄຳຮ້ອງຂໍ, ມີຄຳຮ້ອງຂໍເກີນ 120 ອັນໃນໜຶ່ງນາທີ, ການເອີ້ນ Shannon Coder ຂອງ window ຖືກໃຊ້ໝົດ, ຫຼື model ກຳລັງຍຸ່ງ. ຂໍ້ຄວາມບອກວ່າອັນໃດ. |
5xx | api_error | Status 500, 502, 503 ຫຼື 504: ຄຳຮ້ອງຂໍຖືກຕ້ອງ ແຕ່ຕອບບໍ່ໄດ້. ສົ່ງມັນອີກ. 500 ອາດມີປະເພດ server_error. |
ການຄິດເງິນ ແລະ ຍອດເງິນ
- ມີໜຶ່ງຍອດເງິນຕໍ່ບັນຊີ, ແລະ chat ກັບ API ໃຊ້ຮ່ວມກັນ: ໂຄວຕາຂອງແຜນມື້ນີ້ກ່ອນ, ແລ້ວຈຶ່ງເຄຣດິດທີ່ຊື້ເພີ່ມ. API ບໍ່ມີໂຄວຕາຂອງຕົນເອງ.
- ຄຳຮ້ອງຂໍກັນງົບ output ຂອງມັນ (
max_tokens, ຄ່າເລີ່ມຕົ້ນ 4,096) ແລ້ວຖືກຄິດເງິນຕາມ tokens ທີ່ໃຊ້ຈິງ, ໃນລາຄາຂອງ model. - ທຸກຄຳຕອບລາຍງານຈຳນວນ tokens ໃນ
usage. ໜ້າ Keys & usage ສະແດງຍອດເງິນ ແລະ ຄ່າໃຊ້ຈ່າຍຂອງແຕ່ລະຄຳຮ້ອງຂໍ. - ທຸກຄຳຮ້ອງຂໍໄດ້ຮັບການບໍລິການເທົ່າທຽມກັນ. ຂີດຈຳກັດດຽວທີ່ກ່ຽວກັບອັດຕາຄຳຮ້ອງຂໍແມ່ນ flood protection: 120 ຄຳຮ້ອງຂໍຕໍ່ນາທີຕໍ່ບັນຊີ. ຄຳຮ້ອງຂໍທີ່ສົ່ງແບບຂະໜານລໍຖ້າໃນຄິວ.
ຂີດຈຳກັດ ແລະ ຍອດເງິນ Model ແລະ ລາຄາ Keys & usage
ຟີລດ໌ທີ່ຂຶ້ນກັບ model
ທຸກ model ຮັບຄຳຮ້ອງຂໍດຽວກັນ. ບາງຟີລດ໌ມີຜົນສະເພາະບາງ model; ຕາຕະລາງບອກວ່າບ່ອນໃດ. ໜ້າຂອງແຕ່ລະ endpoint ລາຍຊື່ທຸກຟີລດ໌.
| ຟີລດ໌ | ຄຳອະທິບາຍ | ໃຊ້ໂດຍ |
|---|---|---|
system | ຄຳແນະນຳສຳລັບ model: ຂໍ້ຄວາມ system ໃນ Chat Completions, system ໃນ Messages, instructions ໃນ Responses. | Hosted open-weight models, shannon-1.6-*, shannon-2-*, shannon-coder-1 |
temperature | Sampling temperature. | Hosted open-weight models, shannon-1.6-*, shannon-coder-1 |
top_p | Nucleus sampling. | Hosted open-weight models |
seed | seed ຄົງທີ່ສຳລັບ sampling. | Hosted open-weight models |
stop | Stop sequence ສູງສຸດ 4 ອັນ. | Hosted open-weight models |
reasoning_effort | model ຄິດຫາເຫດຜົນຫຼາຍເທົ່າໃດກ່ອນຕອບ. reasoning.effort ໃນ Responses, thinking ໃນ Messages. | Hosted open-weight models |
web_search | true ໃຫ້ model ຄົ້ນຫາເວັບສຳລັບຄຳຮ້ອງຂໍນີ້. ຟີລດ໌ຂອງ API ນີ້, ໃນ Chat Completions ແລະ Messages. | model Shannon ຍົກເວັ້ນ shannon-coder-1 |
max_tokens | ງົບ output. ໃນທຸກ model ມັນກຳນົດຈຳນວນທີ່ກັນໄວ້ຈາກຍອດເງິນຂອງທ່ານ. | ໃນຖານະຂີດຈຳກັດຄວາມຍາວຂອງຄຳຕອບ: hosted open-weight models, shannon-1.6-*, shannon-coder-1 |
ມາຈາກ SDK ຂອງ OpenAI
- ຕັ້ງ base URL ເປັນ
https://api.shannon-ai.com/v1ແລະ key ເປັນ key Shannon ຂອງທ່ານ. ການເອີ້ນ Chat Completions ແລະ Responses ຈະໃຊ້ໄດ້ກັບ SDK ຕາມທີ່ມັນເປັນ. modelຕ້ອງເປັນ id ຂອງ Shannon. ຊື່ model ຂອງຜູ້ໃຫ້ບໍລິການອື່ນ, ເຊັ່ນgpt-4o, ຖືກຕອບດ້ວຍ400ແລະunknown model.- Reasoning ມາໃນຟີລດ໌ຂອງມັນເອງ:
reasoning_contentຄຽງຄູ່content, ໃນຂໍ້ຄວາມ ແລະ ໃນ delta ຂອງ stream. - stream ມີ
usageໃນ chunk ສຸດທ້າຍສະເໝີ, ພ້ອມກັບfinish_reason. - ການເອີ້ນ tool ໃນ stream ມາເປັນ chunk ດຽວທີ່ມີ string
argumentsຄົບຖ້ວນ. - ຄຳຕອບມີ choice ດຽວ.
- path ຂອງ API OpenAI ທີ່ບໍ່ຢູ່ໃນຕາຕະລາງຂ້າງເທິງ, ເຊັ່ນ
/v1/embeddings, ຖືກຕອບດ້ວຍ404.
ມາຈາກ SDK ຂອງ Anthropic
- ຕັ້ງ base URL ເປັນ
https://api.shannon-ai.com, ໂດຍບໍ່ມີ/v1, ແລະ key ເປັນ key Shannon ຂອງທ່ານ. SDK ສົ່ງມັນເປັນx-api-key. modelຕ້ອງເປັນ id ຂອງ Shannon.max_tokensເປັນທາງເລືອກໃນ API ນີ້. ຄ່າເລີ່ມຕົ້ນແມ່ນ 4,096.- ຄຳຕອບມີ content block ປະເພດ
thinking,textແລະtool_use. block ທຳອິດບໍ່ແມ່ນຂໍ້ຄວາມສະເໝີໄປ: ເລືອກ block ຕາມtype. stop_reasonແມ່ນend_turnຫຼືtool_use. stream ຂອງ model Shannon ຍັງຈົບດ້ວຍmax_tokensໄດ້.anthropic-versionແລະanthropic-betaຖືກຮັບໄວ້, ດັ່ງນັ້ນ SDK ເຮັດວຽກໂດຍບໍ່ຕ້ອງປ່ຽນ. ຄຳຮ້ອງຂໍບໍ່ຈຳເປັນຕ້ອງມີພວກມັນ.- ຂໍ້ຜິດພາດໃນ
/v1/messagesມີຮູບຮ່າງແບບ Anthropic:{"type": "error", "error": {…}}.
tool ສຳລັບຂຽນໂຄ້ດທີ່ໃຊ້ຮູບແບບເຫຼົ່ານີ້ຖືກຕັ້ງຄ່າແບບດຽວກັນ: base URL, key, ແລະ id ຂອງ Shannon ເປັນ model. ເຄື່ອງມື CLI ສຳລັບຂຽນໂຄ້ດ