Preskočiť na obsah
Prehľad

Prehľad

Mapa API: každý endpoint, ako vyzerá request a chyba, ako sa volania platia a čo vedieť, keď prichádzate z SDK OpenAI alebo Anthropic.

Endpointy

Každý endpoint sídli pod jednou základnou URL a obsluhuje sa cez HTTPS.

Základná URL
https://api.shannon-ai.com
Endpoint Formát Na čo slúži
POST /v1/chat/completions OpenAI Chat Completions Pošlete konverzáciu, dostanete ďalšiu odpoveď. So streamovaním aj bez neho.
POST /v1/messages Anthropic Messages To isté, v tvaroch requestu a odpovede SDK Anthropic.
POST /v1/responses OpenAI Responses To isté, v tvaroch Responses. Endpoint neuchováva stav: konverzáciu posielajte s každým requestom.
GET /v1/models Zoznam modelov OpenAI Vypíše modely s kontextovým oknom, cenami a možnosťami. Nepotrebuje kľúč.
POST /v1/tokenize Shannon API Spočíta tokeny textu alebo chatového requestu pre hostovaný open-weight model. Zadarmo.
POST /v1/messages/count_tokens Počítanie tokenov Anthropic Spočíta vstupné tokeny requestu Messages pre hostovaný open-weight model. Zadarmo.

Tri endpointy, ktoré tvoria text, dosiahnu tie isté modely. Vyberte ten, ktorého formát váš kód už používa.

Základy requestu

Hlavička Popis
Authorization: Bearer <key> Váš API kľúč. Povinný na každom endpointe okrem GET /v1/models, pokiaľ neposielate x-api-key.
x-api-key: <key> Ten istý kľúč v hlavičke, ktorú posielajú SDK Anthropic. Číta sa na každom endpointe.
Content-Type: application/json Povinná pri každom POST. Bez nej je odpoveď 415.
x-request-id: <your id> Voliteľná. Vaše vlastné id requestu; vráti sa v hlavičke odpovede x-request-id. Bez nej API vytvorí id z 12 hexadecimálnych znakov.
  • Telo každého POST je jeden objekt JSON, najviac 32 MiB.
  • Pole, ktoré API nepozná, nespôsobí chybu a nemá žiadny účinok. Request napísaný pre iného poskytovateľa nezlyhá kvôli nadbytočnému poľu.
  • Na známe pole so zlým typom JSON alebo chýbajúce povinné pole sa odpovie 422. Na telo, ktoré nie je platný JSON, sa odpovie 400.
  • model je jedno z id na stránke Modely a ceny. Na veľkých a malých písmenách nezáleží.

Odpoveď je JSON, alebo stream server-sent events, keď request nastaví stream na true. Každý endpoint odpovedá vo vlastnom formáte. Každá odpoveď má hlavičku x-request-id.

Čo request prejde

Request sa pred spustením modelu kontroluje v pevnom poradí. Odpovie prvá kontrola, ktorá zlyhá, takže 401 vám o tele zatiaľ nič nehovorí.

Tvar chyby

Chyba je objekt JSON s error, ktorý obsahuje type a message. /v1/messages ho zabalí tak, ako to očakávajú SDK Anthropic; každá iná cesta používa tvar OpenAI.

{
  "error": {
    "type": "invalid_request_error",
    "message": "unknown model: gpt-4o"
  }
}
  • Čítajte type a message. code a param sú prítomné len pri niektorých chybách: berte ich ako voliteľné. param je vždy null.
  • Po začatí streamu je status už 200. Zlyhanie potom príde ako chybový frame vo vnútri streamu.
  • Každá chybová odpoveď nesie hlavičku x-request-id.
Stav Typ Kedy
400 invalid_request_error Telo nie je platný JSON, id modelu je neznáme, alebo model neprijíma druh vstupu, ktorý ste poslali.
401 authentication_error Kľúč chýba alebo nie je platný.
404 not_found_error Cesta neexistuje.
405 api_error Cesta existuje, metóda je nesprávna.
413 invalid_request_error Telo je väčšie než 32 MiB.
415 invalid_request_error Content-Type nie je application/json.
422 invalid_request_error Pole má nesprávny typ JSON alebo chýba povinné pole.
429 rate_limit_error Zostatok request nepokryje, za minútu prišlo viac než 120 requestov, volania Shannon Coder v okne sú vyčerpané, alebo je model vyťažený. Správa uvádza, ktorý prípad nastal.
5xx api_error Status 500, 502, 503 alebo 504: request bol platný a nedalo sa naň odpovedať. Pošlite ho znova. 500 môže niesť typ server_error.

Spracovanie chýb

Fakturácia a zostatok

  • Na účet pripadá jeden zostatok a chat a API ho zdieľajú: najprv dnešný limit plánu, potom zakúpený kredit. API nemá vlastnú kvótu.
  • Request si rezervuje svoj výstupný rozpočet (max_tokens, predvolene 4,096) a potom sa mu účtujú tokeny, ktoré skutočne použil, za cenu modelu.
  • Každá odpoveď hlási svoje počty tokenov v usage. Stránka Kľúče a využitie ukazuje zostatok a koľko stál každý request.
  • Každý request sa obsluhuje rovnako. Jediným limitom frekvencie requestov je ochrana pred zahltením: 120 requestov za minútu na účet. Requesty poslané paralelne čakajú v rade.

Limity a zostatok Modely a ceny Kľúče a využitie

Polia, ktoré závisia od modelu

Každý model berie rovnaký request. Niekoľko polí platí len na niektorých modeloch; tabuľka uvádza kde. Stránky endpointov uvádzajú každé pole.

Pole Popis Uplatňuje
system Pokyny pre model: správa system na Chat Completions, system na Messages, instructions na Responses. Hostované open-weight modely, shannon-1.6-*, shannon-2-*, shannon-coder-1
temperature Teplota vzorkovania. Hostované open-weight modely, shannon-1.6-*, shannon-coder-1
top_p Nucleus sampling. Hostované open-weight modely
seed Pevné seed pre vzorkovanie. Hostované open-weight modely
stop Až 4 stop sekvencie. Hostované open-weight modely
reasoning_effort Ako veľmi model uvažuje, než odpovie. reasoning.effort na Responses, thinking na Messages. Hostované open-weight modely
web_search true dovolí modelu pri tomto requeste vyhľadávať na webe. Pole tohto API, na Chat Completions a Messages. Modely Shannon okrem shannon-coder-1
max_tokens Výstupný rozpočet. Na každom modeli určuje sumu rezervovanú zo zostatku. Ako limit dĺžky odpovede: hostované open-weight modely, shannon-1.6-*, shannon-coder-1

Chat Completions

Ak prichádzate z SDK OpenAI

  • Nastavte základnú URL na https://api.shannon-ai.com/v1 a kľúč na váš kľúč Shannon. Volania Chat Completions a Responses potom s SDK fungujú tak, ako je.
  • model musí byť id Shannon. Na názov modelu iného poskytovateľa, napríklad gpt-4o, sa odpovie 400 a unknown model.
  • Uvažovanie prichádza vo vlastnom poli: reasoning_content vedľa content, v správe aj v delta streamu.
  • Stream vždy nesie usage vo svojom poslednom chunku spolu s finish_reason.
  • Volanie nástroja v streame príde ako jeden chunk s úplným reťazcom arguments.
  • Odpoveď má jednu voľbu.
  • Na cesty API OpenAI, ktoré nie sú v tabuľke vyššie, napríklad /v1/embeddings, sa odpovie 404.

Ak prichádzate z SDK Anthropic

  • Nastavte základnú URL na https://api.shannon-ai.com, bez /v1, a kľúč na váš kľúč Shannon. SDK ho posiela ako x-api-key.
  • model musí byť id Shannon.
  • max_tokens je v tomto API voliteľné. Jeho predvolená hodnota je 4,096.
  • Odpoveď obsahuje bloky obsahu typu thinking, text a tool_use. Prvý blok nie je vždy text: bloky vyberajte podľa type.
  • stop_reason je end_turn alebo tool_use. Stream modelu Shannon môže skončiť aj s max_tokens.
  • anthropic-version a anthropic-beta sa prijímajú, takže SDK funguje bez zmien. Request ich nepotrebuje.
  • Chyby na /v1/messages majú tvar Anthropic: {"type": "error", "error": {…}}.

Nástroje na programovanie, ktoré tieto formáty používajú, sa nastavujú rovnako: základná URL, kľúč a id Shannon ako model. CLI nástroje na programovanie