ഉള്ളടക്കത്തിലേക്ക് പോകുക
അവലോകനം

അവലോകനം

API-യുടെ ഭൂപടം: ഓരോ എൻഡ്‌പോയിന്റും, റിക്വസ്റ്റും പിശകും എങ്ങനെയിരിക്കും, കോളുകൾക്ക് എങ്ങനെ പണം നൽകുന്നു, OpenAI അല്ലെങ്കിൽ Anthropic SDK-യിൽ നിന്ന് വരുമ്പോൾ അറിയേണ്ടത്.

എൻഡ്‌പോയിന്റുകൾ

എല്ലാ എൻഡ്‌പോയിന്റുകളും ഒരു ബേസ് URL-ന് കീഴിലാണ്, HTTPS വഴി സേവിക്കുന്നു.

ബേസ് URL
https://api.shannon-ai.com
എൻഡ്‌പോയിന്റ് ഫോർമാറ്റ് എന്തിനുള്ളതാണ്
POST /v1/chat/completions OpenAI Chat Completions ഒരു സംഭാഷണം അയയ്ക്കുക, അടുത്ത ഉത്തരം നേടുക. സ്ട്രീമിംഗോടെയോ അല്ലാതെയോ.
POST /v1/messages Anthropic Messages ഇതുതന്നെ, Anthropic SDK-കളുടെ റിക്വസ്റ്റ്, മറുപടി രൂപങ്ങളിൽ.
POST /v1/responses OpenAI Responses ഇതുതന്നെ, Responses രൂപങ്ങളിൽ. എൻഡ്‌പോയിന്റ് സ്റ്റേറ്റ് സൂക്ഷിക്കുന്നില്ല: ഓരോ റിക്വസ്റ്റിലും സംഭാഷണം അയയ്ക്കുക.
GET /v1/models OpenAI മോഡൽ ലിസ്റ്റ് കോൺടെക്സ്റ്റ് വിൻഡോ, വിലകൾ, ശേഷികൾ എന്നിവയോടെ മോഡലുകൾ ലിസ്റ്റ് ചെയ്യുക. കീ ആവശ്യമില്ല.
POST /v1/tokenize Shannon API ഹോസ്റ്റ് ചെയ്ത ഓപ്പൺ-വെയിറ്റ് മോഡലിനായി ഒരു ടെക്സ്റ്റിന്റെയോ ചാറ്റ് റിക്വസ്റ്റിന്റെയോ ടോക്കണുകൾ എണ്ണുക. സൗജന്യം.
POST /v1/messages/count_tokens Anthropic ടോക്കൺ എണ്ണൽ ഹോസ്റ്റ് ചെയ്ത ഓപ്പൺ-വെയിറ്റ് മോഡലിനായി ഒരു Messages റിക്വസ്റ്റിന്റെ ഇൻപുട്ട് ടോക്കണുകൾ എണ്ണുക. സൗജന്യം.

ടെക്സ്റ്റ് ഉണ്ടാക്കുന്ന മൂന്ന് എൻഡ്‌പോയിന്റുകളും ഒരേ മോഡലുകളിൽ എത്തുന്നു. നിങ്ങളുടെ കോഡ് ഇതിനകം ഉപയോഗിക്കുന്ന ഫോർമാറ്റുള്ളത് തിരഞ്ഞെടുക്കുക.

റിക്വസ്റ്റ് അടിസ്ഥാനങ്ങൾ

ഹെഡർ വിവരണം
Authorization: Bearer <key> നിങ്ങളുടെ API കീ. x-api-key അയയ്ക്കുന്നില്ലെങ്കിൽ, GET /v1/models ഒഴികെ എല്ലാ എൻഡ്‌പോയിന്റിലും നിർബന്ധം.
x-api-key: <key> Anthropic SDK-കൾ അയയ്ക്കുന്ന ഹെഡറിൽ അതേ കീ. എല്ലാ എൻഡ്‌പോയിന്റിലും വായിക്കും.
Content-Type: application/json ഓരോ POST-ലും നിർബന്ധം. ഇല്ലെങ്കിൽ മറുപടി 415 ആണ്.
x-request-id: <your id> ഓപ്ഷണൽ. റിക്വസ്റ്റിനുള്ള നിങ്ങളുടെ സ്വന്തം ഐഡി; ഇത് മറുപടി ഹെഡർ x-request-id-ൽ തിരികെ വരും. ഇല്ലെങ്കിൽ API 12 ഹെക്സാഡെസിമൽ അക്ഷരങ്ങളുള്ള ഒന്ന് ഉണ്ടാക്കും.
  • ഓരോ POST-ന്റെയും ബോഡി 32 MiB വരെയുള്ള ഒരു JSON ഒബ്ജക്റ്റ് ആണ്.
  • API-ക്ക് അറിയാത്ത ഫീൽഡ് പിശകുണ്ടാക്കില്ല, ഫലവുമില്ല. മറ്റൊരു പ്രൊവൈഡർക്കായി എഴുതിയ റിക്വസ്റ്റ് അധിക ഫീൽഡ് കാരണം പരാജയപ്പെടില്ല.
  • അറിയാവുന്ന ഫീൽഡിന് തെറ്റായ JSON ടൈപ്പ് ആണെങ്കിലോ ആവശ്യമായ ഫീൽഡ് ഇല്ലെങ്കിലോ 422 മറുപടി ലഭിക്കും. സാധുവായ JSON അല്ലാത്ത ബോഡിക്ക് 400 മറുപടി ലഭിക്കും.
  • model എന്നത് Models & pricing-ലെ ഐഡികളിൽ ഒന്നാണ്. വലിയക്ഷരവും ചെറിയക്ഷരവും പ്രശ്നമല്ല.

മറുപടി JSON ആണ്, അല്ലെങ്കിൽ റിക്വസ്റ്റ് stream true ആക്കിയാൽ server-sent events-ന്റെ സ്ട്രീം ആണ്. ഓരോ എൻഡ്‌പോയിന്റും സ്വന്തം ഫോർമാറ്റിൽ മറുപടി നൽകുന്നു. ഓരോ മറുപടിയിലും x-request-id ഹെഡർ ഉണ്ട്.

ഒരു റിക്വസ്റ്റ് കടന്നുപോകുന്നത്

മോഡൽ പ്രവർത്തിക്കുന്നതിന് മുമ്പ് റിക്വസ്റ്റ് ഒരു നിശ്ചിത ക്രമത്തിൽ പരിശോധിക്കുന്നു. പരാജയപ്പെടുന്ന ആദ്യ പരിശോധന മറുപടി നൽകുന്നു, അതിനാൽ 401 ബോഡിയെക്കുറിച്ച് ഇതുവരെ ഒന്നും പറയുന്നില്ല.

പിശകിന്റെ ഘടന

type-ഉം message-ഉം ഉള്ള error അടങ്ങിയ JSON ഒബ്ജക്റ്റ് ആണ് പിശക്. /v1/messages അതിനെ Anthropic SDK-കൾ പ്രതീക്ഷിക്കുന്ന രീതിയിൽ പൊതിയുന്നു; മറ്റെല്ലാ പാത്തുകളും OpenAI ഘടന ഉപയോഗിക്കുന്നു.

{
  "error": {
    "type": "invalid_request_error",
    "message": "unknown model: gpt-4o"
  }
}
  • type-ഉം message-ഉം വായിക്കുക. code-ഉം param-ഉം ചില പിശകുകളിൽ മാത്രമേ ഉണ്ടാകൂ: അവ ഓപ്ഷണൽ ആയി കണക്കാക്കുക. param എപ്പോഴും null ആണ്.
  • സ്ട്രീം തുടങ്ങിയതിന് ശേഷം സ്റ്റാറ്റസ് ഇതിനകം 200 ആണ്. അതിനുശേഷമുള്ള പരാജയം സ്ട്രീമിനുള്ളിൽ ഒരു എറർ ഫ്രെയിമായി എത്തുന്നു.
  • ഓരോ പിശക് മറുപടിയിലും x-request-id ഹെഡർ ഉണ്ട്.
സ്റ്റാറ്റസ് ടൈപ്പ് എപ്പോൾ
400 invalid_request_error ബോഡി സാധുവായ JSON അല്ല, മോഡൽ ഐഡി അജ്ഞാതമാണ്, അല്ലെങ്കിൽ നിങ്ങൾ അയച്ച ഒരു തരം ഇൻപുട്ട് മോഡൽ സ്വീകരിക്കുന്നില്ല.
401 authentication_error കീ ഇല്ല അല്ലെങ്കിൽ സാധുവല്ല.
404 not_found_error പാത്ത് നിലവിലില്ല.
405 api_error പാത്ത് നിലവിലുണ്ട്, മെത്തേഡ് തെറ്റാണ്.
413 invalid_request_error ബോഡി 32 MiB-യേക്കാൾ വലുതാണ്.
415 invalid_request_error Content-Type application/json അല്ല.
422 invalid_request_error ഒരു ഫീൽഡിന് തെറ്റായ JSON ടൈപ്പ് ആണ്, അല്ലെങ്കിൽ ആവശ്യമായ ഫീൽഡ് ഇല്ല.
429 rate_limit_error ബാലൻസ് റിക്വസ്റ്റിന് തികയുന്നില്ല, ഒരു മിനിറ്റിൽ 120-ൽ കൂടുതൽ റിക്വസ്റ്റുകൾ എത്തി, വിൻഡോയിലെ Shannon Coder കോളുകൾ തീർന്നു, അല്ലെങ്കിൽ മോഡൽ തിരക്കിലാണ്. ഏതെന്ന് സന്ദേശം പറയും.
5xx api_error സ്റ്റാറ്റസ് 500, 502, 503 അല്ലെങ്കിൽ 504: റിക്വസ്റ്റ് സാധുവായിരുന്നു, പക്ഷേ ഉത്തരം നൽകാൻ കഴിഞ്ഞില്ല. വീണ്ടും അയയ്ക്കുക. 500-ൽ server_error എന്ന ടൈപ്പ് ഉണ്ടാകാം.

എറർ ഹാൻഡ്ലിംഗ്

ബില്ലിംഗും ബാലൻസും

  • ഓരോ അക്കൗണ്ടിനും ഒരു ബാലൻസ് ഉണ്ട്, ചാറ്റും API-യും അത് പങ്കിടുന്നു: ആദ്യം ഇന്നത്തെ പ്ലാൻ അലവൻസ്, പിന്നെ വാങ്ങിയ ക്രെഡിറ്റ്. API-ക്ക് സ്വന്തമായ ക്വാട്ടയില്ല.
  • റിക്വസ്റ്റ് അതിന്റെ ഔട്ട്പുട്ട് ബജറ്റ് (max_tokens, ഡിഫോൾട്ട് 4,096) റിസർവ് ചെയ്യുകയും, തുടർന്ന് യഥാർത്ഥത്തിൽ ഉപയോഗിച്ച ടോക്കണുകൾക്ക് മോഡലിന്റെ വിലയിൽ ചാർജ് ചെയ്യപ്പെടുകയും ചെയ്യുന്നു.
  • ഓരോ മറുപടിയും അതിന്റെ ടോക്കൺ എണ്ണങ്ങൾ usage-ൽ റിപ്പോർട്ട് ചെയ്യുന്നു. Keys & usage പേജ് ബാലൻസും ഓരോ റിക്വസ്റ്റിന്റെ ചെലവും കാണിക്കുന്നു.
  • ഓരോ റിക്വസ്റ്റും തുല്യമായി സേവിക്കുന്നു. റിക്വസ്റ്റ് നിരക്കിലെ ഒരേയൊരു പരിധി ഫ്ലഡ് പ്രൊട്ടക്ഷനാണ്: ഓരോ അക്കൗണ്ടിനും മിനിറ്റിൽ 120 റിക്വസ്റ്റുകൾ. സമാന്തരമായി അയയ്ക്കുന്ന റിക്വസ്റ്റുകൾ ക്യൂവിൽ കാത്തിരിക്കുന്നു.

പരിധികളും ബാലൻസും മോഡലുകളും വിലയും കീകളും ഉപയോഗവും

മോഡലിനെ ആശ്രയിക്കുന്ന ഫീൽഡുകൾ

എല്ലാ മോഡലുകളും ഒരേ റിക്വസ്റ്റ് സ്വീകരിക്കുന്നു. ചില ഫീൽഡുകൾ ചില മോഡലുകളിൽ മാത്രമേ ഫലിക്കൂ; പട്ടിക എവിടെയെന്ന് പേരുപറയുന്നു. എൻഡ്‌പോയിന്റ് പേജുകളിൽ ഓരോ ഫീൽഡും ഉണ്ട്.

ഫീൽഡ് വിവരണം ബാധകമാക്കുന്നത്
system മോഡലിനുള്ള നിർദ്ദേശങ്ങൾ: Chat Completions-ൽ system മെസേജ്, Messages-ൽ system, Responses-ൽ instructions. ഹോസ്റ്റ് ചെയ്ത ഓപ്പൺ-വെയിറ്റ് മോഡലുകൾ, shannon-1.6-*, shannon-2-*, shannon-coder-1
temperature സാമ്പ്ലിംഗ് ടെമ്പറേച്ചർ. ഹോസ്റ്റ് ചെയ്ത ഓപ്പൺ-വെയിറ്റ് മോഡലുകൾ, shannon-1.6-*, shannon-coder-1
top_p ന്യൂക്ലിയസ് സാമ്പ്ലിംഗ്. ഹോസ്റ്റ് ചെയ്ത ഓപ്പൺ-വെയിറ്റ് മോഡലുകൾ
seed സാമ്പ്ലിംഗിനുള്ള സ്ഥിര സീഡ്. ഹോസ്റ്റ് ചെയ്ത ഓപ്പൺ-വെയിറ്റ് മോഡലുകൾ
stop പരമാവധി 4 സ്റ്റോപ്പ് സീക്വൻസുകൾ. ഹോസ്റ്റ് ചെയ്ത ഓപ്പൺ-വെയിറ്റ് മോഡലുകൾ
reasoning_effort ഉത്തരം നൽകുന്നതിന് മുമ്പ് മോഡൽ എത്രത്തോളം റീസൺ ചെയ്യണം. Responses-ൽ reasoning.effort, Messages-ൽ thinking. ഹോസ്റ്റ് ചെയ്ത ഓപ്പൺ-വെയിറ്റ് മോഡലുകൾ
web_search true ആയാൽ ഈ റിക്വസ്റ്റിനായി മോഡലിന് വെബിൽ തിരയാം. ഈ API-യുടെ ഒരു ഫീൽഡ്, Chat Completions-ലും Messages-ലും. shannon-coder-1 ഒഴികെയുള്ള Shannon മോഡലുകൾ
max_tokens ഔട്ട്പുട്ട് ബജറ്റ്. എല്ലാ മോഡലിലും ഇത് നിങ്ങളുടെ ബാലൻസിൽ നിന്ന് റിസർവ് ചെയ്യുന്ന തുക നിശ്ചയിക്കുന്നു. ഉത്തരത്തിന്റെ ദൈർഘ്യ പരിധിയായി: ഹോസ്റ്റ് ചെയ്ത ഓപ്പൺ-വെയിറ്റ് മോഡലുകൾ, shannon-1.6-*, shannon-coder-1

Chat Completions

OpenAI SDK-യിൽ നിന്ന് വരുമ്പോൾ

  • ബേസ് URL https://api.shannon-ai.com/v1 ആയും കീ നിങ്ങളുടെ Shannon കീ ആയും സജ്ജമാക്കുക. അപ്പോൾ Chat Completions, Responses കോളുകൾ SDK-യിൽ അതേപടി പ്രവർത്തിക്കും.
  • model ഒരു Shannon ഐഡി ആയിരിക്കണം. gpt-4o പോലുള്ള മറ്റൊരു പ്രൊവൈഡറുടെ മോഡൽ പേരിന് 400, unknown model എന്നിവയോടെ മറുപടി ലഭിക്കും.
  • റീസണിംഗ് സ്വന്തം ഫീൽഡിൽ വരുന്നു: മെസേജിലും സ്ട്രീം ഡെൽറ്റകളിലും content-ന് അടുത്ത് reasoning_content.
  • സ്ട്രീം എപ്പോഴും അതിന്റെ അവസാന ചങ്കിൽ finish_reason-നൊപ്പം usage വഹിക്കുന്നു.
  • സ്ട്രീമിലെ ടൂൾ കോൾ പൂർണ്ണമായ arguments സ്ട്രിംഗോടെ ഒരൊറ്റ ചങ്കായി എത്തുന്നു.
  • മറുപടിക്ക് ഒരു choice ഉണ്ട്.
  • മുകളിലെ പട്ടികയിലില്ലാത്ത OpenAI API പാത്തുകൾക്ക്, ഉദാഹരണത്തിന് /v1/embeddings, 404 മറുപടി ലഭിക്കും.

Anthropic SDK-യിൽ നിന്ന് വരുമ്പോൾ

  • ബേസ് URL https://api.shannon-ai.com ആയി, /v1 ഇല്ലാതെ, സജ്ജമാക്കുക, കീ നിങ്ങളുടെ Shannon കീ ആക്കുക. SDK അത് x-api-key ആയി അയയ്ക്കുന്നു.
  • model ഒരു Shannon ഐഡി ആയിരിക്കണം.
  • ഈ API-യിൽ max_tokens ഓപ്ഷണൽ ആണ്. ഇതിന്റെ ഡിഫോൾട്ട് 4,096 ആണ്.
  • മറുപടിയിൽ thinking, text, tool_use ടൈപ്പുകളിലുള്ള കണ്ടന്റ് ബ്ലോക്കുകൾ ഉണ്ട്. ആദ്യ ബ്ലോക്ക് എപ്പോഴും ടെക്സ്റ്റ് ആകണമെന്നില്ല: ബ്ലോക്കുകൾ type പ്രകാരം തിരഞ്ഞെടുക്കുക.
  • stop_reason end_turn അല്ലെങ്കിൽ tool_use ആണ്. Shannon മോഡലിന്റെ സ്ട്രീം max_tokens ഓടെയും അവസാനിക്കാം.
  • anthropic-version, anthropic-beta എന്നിവ സ്വീകരിക്കും, അതിനാൽ SDK മാറ്റമില്ലാതെ പ്രവർത്തിക്കുന്നു. റിക്വസ്റ്റിന് അവ ആവശ്യമില്ല.
  • /v1/messages-ലെ പിശകുകൾക്ക് Anthropic ഘടനയാണ്: {"type": "error", "error": {…}}.

ഈ ഫോർമാറ്റുകൾ സംസാരിക്കുന്ന കോഡിംഗ് ടൂളുകളും ഇതേ രീതിയിൽ സജ്ജമാക്കുന്നു: ബേസ് URL, കീ, മോഡലായി ഒരു Shannon ഐഡി. CLI കോഡിംഗ് ടൂളുകൾ