අන්තර්ගතයට යන්න
සාරාංශය

සාරාංශය

API එකේ සිතියම: සෑම endpoint එකක්ම, ඉල්ලීමක් සහ දෝෂයක් පෙනෙන්නේ කෙසේද, calls සඳහා ගෙවන ආකාරය, සහ ඔබ OpenAI හෝ Anthropic SDK එකකින් පැමිණෙන විට දැනගත යුතු දේ.

Endpoints

සෑම endpoint එකක්ම එක base URL එක යටතේ පවතින අතර HTTPS හරහා සේවය කෙරේ.

Base URL
https://api.shannon-ai.com
Endpoint Format එය කුමක් සඳහාද
POST /v1/chat/completions OpenAI Chat Completions සංවාදයක් යවා ඊළඟ පිළිතුර ලබා ගන්න. Streaming සමඟ හෝ නොමැතිව.
POST /v1/messages Anthropic Messages එයම, Anthropic SDKs වල ඉල්ලීම් සහ පිළිතුරු හැඩතලවලින්.
POST /v1/responses OpenAI Responses එයම, Responses හැඩතලවලින්. Endpoint එක state තබා නොගනී: සෑම ඉල්ලීමක්ම සමඟ සංවාදය යවන්න.
GET /v1/models OpenAI model ලැයිස්තුව Models context window, මිල ගණන් සහ හැකියාවන් සමඟ ලැයිස්තුගත කරන්න. key එකක් අවශ්‍ය නැත.
POST /v1/tokenize Shannon API අපගේ සේවාදායකවල ධාවනය වන open-weight model එකක් සඳහා පෙළක හෝ chat ඉල්ලීමක tokens ගණන් කරන්න. නොමිලේ.
POST /v1/messages/count_tokens Anthropic token ගණන අපගේ සේවාදායකවල ධාවනය වන open-weight model එකක් සඳහා Messages ඉල්ලීමක input tokens ගණන් කරන්න. නොමිලේ.

පෙළ නිපදවන endpoints තුනෙන් එකම models වලට ළඟා විය හැක. ඔබේ code දැනටමත් භාවිතා කරන format එක ඇති එක තෝරන්න.

ඉල්ලීම්වල මූලික කරුණු

Header විස්තරය
Authorization: Bearer <key> ඔබේ API key එක. x-api-key නොයවන්නේ නම් GET /v1/models හැර සෑම endpoint එකකම අවශ්‍යයි.
x-api-key: <key> Anthropic SDKs යවන header එකේ එම key එකම. සෑම endpoint එකකම කියවයි.
Content-Type: application/json සෑම POST එකකම අවශ්‍යයි. එය නොමැතිව පිළිතුර 415 වේ.
x-request-id: <your id> විකල්ප. ඉල්ලීම සඳහා ඔබේම id එක; එය පිළිතුරේ x-request-id header එකේ ආපසු එයි. එය නොමැතිව API එක hexadecimal අක්ෂර 12ක id එකක් සාදයි.
  • සෑම POST එකක body එකම එක JSON object එකකි, 32 MiB දක්වා.
  • API එක නොදන්නා field එකක් දෝෂයක් ඇති නොකරන අතර බලපෑමක් ද නැත. වෙනත් provider කෙනෙකු සඳහා ලියූ ඉල්ලීමක් අමතර field එකක් නිසා අසාර්ථක නොවේ.
  • වැරදි JSON type එකක් ඇති දන්නා field එකකට, හෝ අවශ්‍ය field එකක් නැති විට, 422 සමඟ පිළිතුරු ලැබේ. වලංගු JSON නොවන body එකකට 400 සමඟ පිළිතුරු ලැබේ.
  • model යනු Models & pricing හි ඇති ids වලින් එකකි. ලොකු අකුරු සහ කුඩා අකුරු වැදගත් නොවේ.

පිළිතුර JSON වේ, නැතහොත් ඉල්ලීම stream true ලෙස සකසන විට server-sent events stream එකක් වේ. සෑම endpoint එකක්ම තමන්ගේම format එකෙන් පිළිතුරු දෙයි. සෑම පිළිතුරකම x-request-id header එක ඇත.

ඉල්ලීමක් පසුකරන දේ

Model එකක් ධාවනය වීමට පෙර ඉල්ලීමක් ස්ථාවර පිළිවෙලකට පරීක්ෂා කෙරේ. අසාර්ථක වන පළමු පරීක්ෂාව පිළිතුරු දෙයි, එබැවින් 401 මගින් body ගැන තවමත් කිසිවක් නොකියයි.

දෝෂයේ හැඩය

දෝෂයක් යනු type සහ message රඳවන error සහිත JSON object එකකි. /v1/messages Anthropic SDKs බලාපොරොත්තු වන ආකාරයට එය ඔතයි; අනෙක් සෑම path එකක්ම OpenAI හැඩය භාවිතා කරයි.

{
  "error": {
    "type": "invalid_request_error",
    "message": "unknown model: gpt-4o"
  }
}
  • type සහ message කියවන්න. code සහ param ඇත්තේ සමහර දෝෂවල පමණි: ඒවා විකල්ප ලෙස සලකන්න. param සෑම විටම null වේ.
  • Stream එකක් ආරම්භ වූ පසු, status එක දැනටමත් 200 වේ. ඉන්පසු අසාර්ථකත්වයක් stream එක තුළ error frame එකක් ලෙස පැමිණේ.
  • සෑම දෝෂ පිළිතුරක්ම x-request-id header එක රැගෙන යයි.
තත්ත්වය වර්ගය කවදාද
400 invalid_request_error Body එක වලංගු JSON නොවේ, model id එක නොදන්නා ය, නැතහොත් ඔබ යැවූ input වර්ගයක් model එක පිළිගන්නේ නැත.
401 authentication_error 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 Field එකක JSON type එක වැරදිය, නැතහොත් අවශ්‍ය field එකක් නැත.
429 rate_limit_error ශේෂය ඉල්ලීමට ප්‍රමාණවත් නොවේ, විනාඩියක් තුළ ඉල්ලීම් 120කට වඩා පැමිණියේය, කවුළුවේ Shannon Coder calls අවසන් වී ඇත, නැතහොත් model එක කාර්යබහුලයි. පණිවිඩය කුමක්දැයි කියයි.
5xx api_error Status 500, 502, 503 හෝ 504: ඉල්ලීම වලංගු වූ නමුත් පිළිතුරු දිය නොහැකි විය. එය නැවත යවන්න. 500 එකකට server_error type එක තිබිය හැක.

දෝෂ

බිල්පත් සහ ශේෂය

  • ගිණුමකට එක ශේෂයක් ඇති අතර chat සහ API එය බෙදා ගනී: මුලින් අද දිනයේ සැලසුම් ප්‍රමාණය, පසුව මිලදී ගත් credit. API එකට තමන්ගේම quota එකක් නැත.
  • ඉල්ලීමක් එහි output අයවැය (max_tokens, පෙරනිමිය 4,096) වෙන් කර ගන්නා අතර, පසුව model එකේ මිලට එය සැබවින්ම භාවිතා කළ tokens සඳහා අය කෙරේ.
  • සෑම පිළිතුරක්ම එහි token ගණන් usage හි වාර්තා කරයි. Keys & usage පිටුවේ ශේෂය සහ සෑම ඉල්ලීමකටම වැය වූ දේ පෙන්වයි.
  • සෑම ඉල්ලීමකටම එක සමානව සේවය කෙරේ. ඉල්ලීම් වේගය පිළිබඳ එකම සීමාව flood protection ය: ගිණුමකට විනාඩියකට ඉල්ලීම් 120. සමාන්තරව යවන ඉල්ලීම් පෝලිමේ රැඳී සිටී.

සීමා සහ ශේෂය Models සහ මිල ගණන් යතුරු සහ භාවිතය

Model එක මත රඳා පවතින fields

සෑම model එකක්ම එකම ඉල්ලීම පිළිගනී. Fields කිහිපයක් බලපාන්නේ සමහර models මත පමණි; වගුවේ කොතැනදැයි නම් කර ඇත. Endpoint පිටුවල සෑම field එකක්ම ලැයිස්තුගත කර ඇත.

Field විස්තරය යොදන්නේ
system Model එක සඳහා උපදෙස්: Chat Completions හි system පණිවිඩයක්, Messages හි system, Responses හි instructions. අපගේ සේවාදායකවල ධාවනය වන open-weight models, shannon-1.6-*, shannon-2-*, shannon-coder-1
temperature Sampling temperature. අපගේ සේවාදායකවල ධාවනය වන open-weight models, shannon-1.6-*, shannon-coder-1
top_p Nucleus sampling. අපගේ සේවාදායකවල ධාවනය වන open-weight models
seed Sampling සඳහා ස්ථාවර seed එකක්. අපගේ සේවාදායකවල ධාවනය වන open-weight models
stop උපරිම වශයෙන් stop sequences 4ක් දක්වා. අපගේ සේවාදායකවල ධාවනය වන open-weight models
reasoning_effort පිළිතුරු දීමට පෙර model එක කොතරම් තර්ක කරයිද. Responses හි reasoning.effort, Messages හි thinking. අපගේ සේවාදායකවල ධාවනය වන open-weight models
web_search true මගින් මෙම ඉල්ලීම සඳහා model එකට වෙබ් එක සෙවීමට ඉඩ දෙයි. Chat Completions සහ Messages හි මෙම API එකේ field එකකි. shannon-coder-1 හැර Shannon models
max_tokens Output අයවැය. සෑම model එකකම එය ඔබේ ශේෂයෙන් වෙන් කරන ප්‍රමාණය සකසයි. පිළිතුරේ දිග පිළිබඳ සීමාව ලෙස: අපගේ සේවාදායකවල ධාවනය වන open-weight models, shannon-1.6-*, shannon-coder-1

Chat Completions

OpenAI SDK එකකින් පැමිණෙන්නේ නම්

  • Base URL එක https://api.shannon-ai.com/v1 ලෙසත්, key එක ඔබේ Shannon key එකටත් සකසන්න. එවිට Chat Completions සහ Responses calls SDK එකත් සමඟ එලෙසම ක්‍රියා කරයි.
  • model Shannon id එකක් විය යුතුය. gpt-4o වැනි වෙනත් provider කෙනෙකුගේ model නමකට 400 සහ unknown model සමඟ පිළිතුරු ලැබේ.
  • තර්කනය ඊටම වූ field එකක පැමිණේ: පණිවිඩයේ සහ stream deltas වල content අසල reasoning_content.
  • Stream එකක සෑම විටම අවසාන chunk එකේ finish_reason සමඟ usage ඇත.
  • Stream එකක tool call එකක් සම්පූර්ණ arguments string එක සහිත එක chunk එකක් ලෙස පැමිණේ.
  • පිළිතුරකට එක choice එකක් ඇත.
  • /v1/embeddings වැනි, ඉහත වගුවේ නැති OpenAI API paths වලට 404 සමඟ පිළිතුරු ලැබේ.

Anthropic SDK එකකින් පැමිණෙන්නේ නම්

  • Base URL එක /v1 නොමැතිව https://api.shannon-ai.com ලෙසත්, key එක ඔබේ Shannon key එකටත් සකසන්න. SDK එක එය x-api-key ලෙස යවයි.
  • model Shannon id එකක් විය යුතුය.
  • මෙම API එකේ max_tokens විකල්පයකි. එහි පෙරනිමිය 4,096.
  • පිළිතුරක thinking, text සහ tool_use වර්ගවල content blocks ඇත. පළමු block එක සෑම විටම පෙළ නොවේ: blocks type අනුව තෝරන්න.
  • stop_reason end_turn හෝ tool_use වේ. Shannon model එකක stream එකක් max_tokens සමඟ ද අවසන් විය හැක.
  • anthropic-version සහ anthropic-beta පිළිගන්නා බැවින් SDK එක වෙනසක් නොමැතිව ක්‍රියා කරයි. ඉල්ලීමකට ඒවා අවශ්‍ය නැත.
  • /v1/messages හි දෝෂ Anthropic හැඩය ගනී: {"type": "error", "error": {…}}.

මෙම format වලින් කථා කරන coding මෙවලම් එලෙසම සකසයි: base URL, key, සහ model එක ලෙස Shannon id එකක්. CLI coding මෙවලම්