Tlola ho ea ho litaba
Netefatso

Netefatso

Kopo e 'ngoe le e 'ngoe e nka senotlolo sa hau sa API ho header. Senotlolo se le seng ka akhaonte se sebetsa ho endpoint e 'ngoe le e 'ngoe le model e 'ngoe le e 'ngoe, ka e 'ngoe ea mefuta e 'meli ea header.

Header · Li-SDK tsa OpenAI
Authorization: Bearer YOUR_API_KEY
Header · Li-SDK tsa Anthropic
x-api-key: YOUR_API_KEY

Li-header tse amohelwang

Li-header tsena ka bobeli li baloa endpoint e 'ngoe le e 'ngoe ea /v1, ho sa tsotellehe hore na endpoint e bua sebopeho sefe. Romela e le 'ngoe ea tsona.

Header Tlhaloso
Authorization: Bearer <key> E hlahlojoa pele. Ngola Bearer ka B e kholo le sebaka se le seng pele ho senotlolo. Li-SDK tsa OpenAI li romela header ena.
x-api-key: <key> E baloa ha kopo e se na header ea Authorization: Bearer. Li-SDK tsa Anthropic li romela header ena.

Ka SDK ea OpenAI, beha senotlolo le base URL; SDK e romela Authorization: Bearer.

from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.shannon-ai.com/v1"
)

response = client.chat.completions.create(
    model="shannon-3",
    messages=[
        {"role": "user", "content": "Hello, Shannon!"}
    ]
)

print(response.choices[0].message.content)

Ka SDK ea Anthropic, beha senotlolo le base URL ntle le /v1; SDK e romela x-api-key.

import anthropic

client = anthropic.Anthropic(
    api_key="YOUR_API_KEY",
    base_url="https://api.shannon-ai.com"
)

message = client.messages.create(
    model="shannon-3",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "Hello, Shannon!"}
    ]
)

print("".join(block.text for block in message.content if block.type == "text"))

Hore na li-endpoint life li hloka senotlolo

Endpoint Senotlolo
POST /v1/chat/completions E hlokahala
POST /v1/messages E hlokahala
POST /v1/responses E hlokahala
POST /v1/tokenize E hlokahala
POST /v1/messages/count_tokens E hlokahala
GET /v1/models Ha se hlokahale

Senotlolo sa hau

  • Senotlolo ke sk- e latelwa ke litlhaku tse 43 tse tsoang ho A–Z, a–z, 0–9, - le _: litlhaku tse 46 ka kakaretso.
  • Akhaonte e 'ngoe le e 'ngoe e na le senotlolo se le seng feela. Se etsoa neng kapa neng ha u bula Keys & usage ka lekhetlo la pele.
  • Senotlolo se fana ka phihlello e felletseng ho API bakeng sa akhaonte ea hau: endpoint e 'ngoe le e 'ngoe, model e 'ngoe le e 'ngoe le balance eohle.
  • Senotlolo ha se na letsatsi la ho fela. Se sebetsa ho fihlela u se fetola kapa u se hlakola.

Fetola le ho hlakola

U fetola mme u hlakola senotlolo leqepheng la Keys & usage. Keys & usage

Ketso Se etsahalang
Fetola Senotlolo se secha se fanoa mme se seholo se emisa ho sebetsa. Senotlolo se secha se sebetsa hanghang.
Hlakola Senotlolo se emisa ho sebetsa mme ha ho senotlolo se secha se fanoang. Fetola ho fumana senotlolo se sebetsang hape.
  • Ka bobeli li sebetsa hanghang: kopo e latelang e nang le senotlolo se seholo e arajoa ka 401. Nka metsotsoana e 60 e le moeli o phahameng pele senotlolo se seholo se hanoa hohle.
  • Moreki e mong le e mong oa akhaonte o sebelisa senotlolo se tšoanang, kahoo phetoho e fihla ho bona bohle. Kenya senotlolo se secha ho barekisi ba hau hang ka mor'a ho fetola.
  • Balance, usage le flood protection ke tsa akhaonte, eseng tsa senotlolo. Senotlolo se secha se tsoela pele ka balance e tšoanang le palo e tšoanang ea likopo bakeng sa motsotso oa hajoale.

Liphoso

Ho hloleha ho phethahetseng ho netefatsa ho na le boemo ba 401 le mofuta oa authentication_error. Molaetsa o khetholla linyeoe.

Boemo Mofuta Molaetsa Neng
401 authentication_error Missing authentication Kopo ha e na header ea Authorization: Bearer kapa header ea x-api-key e qalang ka sk-. Ena le eona ke karabo ho bearer ka litlhaku tse nyane le ho boleng ba Authorization bo se nang Bearer.
401 authentication_error Invalid API key Senotlolo hase senotlolo sa hajoale sa akhaonte: se ngotsoe hampe, se hlakotsoe, kapa se nkeloe sebaka ke phetoho.
{
  "error": {
    "type": "authentication_error",
    "message": "Invalid API key",
    "code": "invalid_api_key",
    "param": null
  }
}
  • Litseleng tsohle ntle le /v1/messages ntho ea error e boetse e na le code: "invalid_api_key", le bakeng sa senotlolo se sieo, le param: null.
  • Senotlolo se hlahlojoa pele body e baloa. Kopo e se nang senotlolo se nepahetseng e fumana 401 esita le ha body ea eona e se nepahetse kapa e le telele haholo.
  • Boleng ba Authorization: Bearer bo sa qalang ka sk- ha bo nkoe e le senotlolo sa API. E fumana 401 e nang le molaetsa oa hore token ha e nepahale kapa e felile.

Li-browser le CORS

  • API e araba likopo tsa browser tsa cross-origin feela bakeng sa lenane le tsitsitseng la li-origin. JavaScript leqepheng la origin e 'ngoe e ke ke ea bala likarabo tsa /v1.
  • Letsetsa API ho server ea hau mme u lumelle leqephe la hau hore le bue le server ea hau. Sena se boetse se boloka senotlolo ka ntle ho source ea leqephe.
  • Code ea ka server le lisebelisoa tsa command-line ha li angoe: molao ona o sebelisoa ke li-browser feela.
  • Ho kena ho shannon-ai.com ha ho netefatse likopo tsa /v1. Li-cookie ha li baloe moo; senotlolo ke credential e le 'ngoe feela.
  • Bakeng sa origin e lumelletsoeng, browser e ka romela content-type, authorization, x-api-key, anthropic-version, anthropic-beta, openai-beta le x-request-id, mme e ka bala header ea karabo x-request-id.

Ho boloka senotlolo se sireletsehile

  • Boloka senotlolo ho server. U se ke ua se kenya matlotlo a webe, li-app tsa mohala kapa li-repository tsa sechaba: ea nang le sona a ka sebelisa balance eohle ea hau.
  • Kenya senotlolo ho environment variable kapa ho secret store ho e-na le ho se ngola ho code.
  • Haeba senotlolo se kanna sa lutla, se fetole ho Keys & usage. Senotlolo se seholo se emisa ho sebetsa hanghang.
  • Ka mor'a ho lutla, bala lenane la likopo ho Keys & usage. Le bontša kopo e 'ngoe le e 'ngoe eo senotlolo se e entseng matsatsing a 30 a fetileng.