કન્ટેન્ટ પર જાઓ
સારાંશ

સારાંશ

API નો નકશો: દરેક એન્ડપોઇન્ટ, રિક્વેસ્ટ અને એરર કેવા દેખાય છે, કોલ્સ માટે ચુકવણી કેવી રીતે થાય છે, અને OpenAI અથવા Anthropic SDK માંથી આવતા હોવ ત્યારે શું જાણવું.

એન્ડપોઇન્ટ્સ

દરેક એન્ડપોઇન્ટ એક base URL હેઠળ છે અને HTTPS પર પીરસાય છે.

Base URL
https://api.shannon-ai.com
એન્ડપોઇન્ટ ફોર્મેટ તે શેના માટે છે
POST /v1/chat/completions OpenAI Chat Completions વાતચીત મોકલો, આગલો જવાબ મેળવો. streaming સાથે અથવા વિના.
POST /v1/messages Anthropic Messages એ જ, Anthropic SDK ની રિક્વેસ્ટ અને જવાબના આકારોમાં.
POST /v1/responses OpenAI Responses એ જ, Responses ના આકારોમાં. એન્ડપોઇન્ટ કોઈ સ્ટેટ રાખતું નથી: દરેક રિક્વેસ્ટ સાથે વાતચીત મોકલો.
GET /v1/models OpenAI મોડેલ યાદી કોન્ટેક્સ્ટ વિન્ડો, કિંમતો અને ક્ષમતાઓ સાથે મોડેલ્સની યાદી. કી જોઈતી નથી.
POST /v1/tokenize Shannon API હોસ્ટેડ open-weight મોડેલ માટે ટેક્સ્ટ અથવા chat રિક્વેસ્ટના ટોકન્સ ગણો. મફત.
POST /v1/messages/count_tokens Anthropic ટોકન ગણતરી હોસ્ટેડ open-weight મોડેલ માટે Messages રિક્વેસ્ટના ઇનપુટ ટોકન્સ ગણો. મફત.

ટેક્સ્ટ બનાવતા ત્રણ એન્ડપોઇન્ટ્સ સમાન મોડેલ્સ સુધી પહોંચે છે. જેનું ફોર્મેટ તમારો કોડ પહેલેથી વાપરે છે તે પસંદ કરો.

રિક્વેસ્ટની મૂળભૂત બાબતો

હેડર વર્ણન
Authorization: Bearer <key> તમારી API કી. GET /v1/models સિવાય દરેક એન્ડપોઇન્ટ પર જરૂરી, સિવાય કે તમે x-api-key મોકલો.
x-api-key: <key> Anthropic SDK જે હેડરમાં મોકલે છે તેમાં એ જ કી. દરેક એન્ડપોઇન્ટ પર વંચાય છે.
Content-Type: application/json દરેક POST પર જરૂરી. તેના વિના જવાબ 415 છે.
x-request-id: <your id> વૈકલ્પિક. રિક્વેસ્ટ માટે તમારું પોતાનું id; તે જવાબ હેડર x-request-id માં પાછું આવે છે. તેના વિના API 12 હેક્સાડેસિમલ અક્ષરોનું એક બનાવે છે.
  • દરેક POST નો બોડી એક JSON ઓબ્જેક્ટ છે, 32 MiB સુધી.
  • API જે ફીલ્ડ જાણતું નથી તેનાથી કોઈ એરર થતી નથી અને તેની કોઈ અસર નથી. બીજા પ્રદાતા માટે લખેલી રિક્વેસ્ટ વધારાના ફીલ્ડને કારણે નિષ્ફળ જતી નથી.
  • ખોટા JSON પ્રકારવાળા જાણીતા ફીલ્ડનો, અથવા ખૂટતા જરૂરી ફીલ્ડનો જવાબ 422 થી અપાય છે. માન્ય JSON ન હોય તેવા બોડીનો જવાબ 400 થી અપાય છે.
  • model એ Models & pricing પરના id માંનો એક છે. મોટા અને નાના અક્ષરો મહત્વના નથી.

જવાબ 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 નથી, મોડેલ id અજાણ્યો છે, અથવા તમે મોકલેલા પ્રકારનું ઇનપુટ મોડેલ લેતું નથી.
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 પેજ બેલેન્સ અને દરેક રિક્વેસ્ટનો ખર્ચ બતાવે છે.
  • દરેક રિક્વેસ્ટ સમાન રીતે પીરસાય છે. રિક્વેસ્ટ દર પરની એકમાત્ર મર્યાદા flood protection છે: એકાઉન્ટ દીઠ પ્રતિ મિનિટ 120 રિક્વેસ્ટ. સમાંતર મોકલેલી રિક્વેસ્ટ્સ કતારમાં રાહ જુએ છે.

મર્યાદાઓ અને બેલેન્સ મોડેલ્સ અને કિંમત Keys & usage

મોડેલ પર આધારિત ફીલ્ડ્સ

દરેક મોડેલ સમાન રિક્વેસ્ટ લે છે. થોડા ફીલ્ડ્સ માત્ર અમુક મોડેલ્સ પર અસર કરે છે; ટેબલ જણાવે છે ક્યાં. એન્ડપોઇન્ટ પેજ દરેક ફીલ્ડ યાદી કરે છે.

ફીલ્ડ વર્ણન કોણ લાગુ કરે છે
system મોડેલ માટે સૂચનાઓ: Chat Completions પર system મેસેજ, Messages પર system, Responses પર instructions. હોસ્ટેડ open-weight મોડેલ્સ, shannon-1.6-*, shannon-2-*, shannon-coder-1
temperature સેમ્પલિંગ temperature. હોસ્ટેડ open-weight મોડેલ્સ, shannon-1.6-*, shannon-coder-1
top_p Nucleus સેમ્પલિંગ. હોસ્ટેડ open-weight મોડેલ્સ
seed સેમ્પલિંગ માટે નિશ્ચિત seed. હોસ્ટેડ open-weight મોડેલ્સ
stop વધુમાં વધુ 4 સ્ટોપ સિક્વન્સ. હોસ્ટેડ open-weight મોડેલ્સ
reasoning_effort જવાબ આપતા પહેલાં મોડેલ કેટલું reasoning કરે. Responses પર reasoning.effort, Messages પર thinking. હોસ્ટેડ open-weight મોડેલ્સ
web_search true આ રિક્વેસ્ટ માટે મોડેલને વેબ પર શોધવા દે છે. આ API નું ફીલ્ડ, Chat Completions અને Messages પર. shannon-coder-1 સિવાયના Shannon મોડેલ્સ
max_tokens આઉટપુટ બજેટ. દરેક મોડેલ પર તે તમારા બેલેન્સમાંથી અલગ રખાતી રકમ નક્કી કરે છે. જવાબની લંબાઈની મર્યાદા તરીકે: હોસ્ટેડ open-weight મોડેલ્સ, shannon-1.6-*, shannon-coder-1

Chat Completions

OpenAI SDK માંથી આવતા હોવ તો

  • base URL ને https://api.shannon-ai.com/v1 અને કીને તમારી Shannon કી સેટ કરો. Chat Completions અને Responses કોલ્સ પછી SDK સાથે જેમ છે તેમ કામ કરે છે.
  • model Shannon id હોવું જોઈએ. gpt-4o જેવા બીજા પ્રદાતાના મોડેલ નામનો જવાબ 400 અને unknown model થી અપાય છે.
  • Reasoning પોતાના ફીલ્ડમાં આવે છે: content ની બાજુમાં reasoning_content, મેસેજમાં અને સ્ટ્રીમ deltas માં.
  • સ્ટ્રીમ હંમેશા તેના છેલ્લા chunk માં finish_reason સાથે usage લઈ જાય છે.
  • સ્ટ્રીમમાં ટૂલ કોલ સંપૂર્ણ arguments સ્ટ્રિંગ સાથે એક chunk તરીકે આવે છે.
  • જવાબમાં એક choice હોય છે.
  • ઉપરના ટેબલમાં ન હોય તેવા OpenAI API ના પાથ, જેમ કે /v1/embeddings, નો જવાબ 404 થી અપાય છે.

Anthropic SDK માંથી આવતા હોવ તો

  • base URL ને https://api.shannon-ai.com, /v1 વિના, અને કીને તમારી Shannon કી સેટ કરો. SDK તેને x-api-key તરીકે મોકલે છે.
  • model Shannon id હોવું જોઈએ.
  • આ 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": {…}}.

આ ફોર્મેટ બોલતા કોડિંગ ટૂલ્સ એ જ રીતે સેટ થાય છે: base URL, કી, અને મોડેલ તરીકે Shannon id. CLI કોડિંગ ટૂલ્સ