Yiya kumxholo
Uqinisekiso

Uqinisekiso

Isicelo ngasinye sithwala i-API key yakho kwi-header. Isitshixo esinye kuyo nayiphi na iakhawunti sisebenza kuyo yonke i-endpoint nakuyo yonke imodeli, ngenye yeefom ezimbini zeheader.

Header · ii-SDK ze-OpenAI
Authorization: Bearer YOUR_API_KEY
Header · ii-SDK ze-Anthropic
x-api-key: YOUR_API_KEY

Ii-header ezamkelweyo

Zombini ii-header ziyafundwa kuyo yonke i-endpoint ye-/v1, nokuba yiyiphi ifomethi i-endpoint ethetha ngayo. Thumela enye kuzo.

Header Inkcazelo
Authorization: Bearer <key> Iphononongwa kuqala. Bhala i-Bearer ngoonobumba abakhulu B nesithuba esinye phambi kwesitshixo. Ii-SDK ze-OpenAI zithumela le header.
x-api-key: <key> Ifundwa xa isicelo singenayo i-header ye-Authorization: Bearer. Ii-SDK ze-Anthropic zithumela le header.

Nge-SDK ye-OpenAI, seta isitshixo ne-base URL; i-SDK ithumela i-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)

Nge-SDK ye-Anthropic, seta isitshixo ne-base URL ngaphandle kwe-/v1; i-SDK ithumela i-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"))

Zeziphi ii-endpoint ezifuna isitshixo

Endpoint Isitshixo
POST /v1/chat/completions Kuyafuneka
POST /v1/messages Kuyafuneka
POST /v1/responses Kuyafuneka
POST /v1/tokenize Kuyafuneka
POST /v1/messages/count_tokens Kuyafuneka
GET /v1/models Akufuneki

Isitshixo sakho

  • Isitshixo yi-sk- elandelwa zinhlobo ezingama-43 ezisuka kwi-A–Z, a–z, 0–9, - kunye ne-_: zizonke zinhlobo ezingama-46.
  • Iakhawunti nganye inesitshixo esinye kanye. Senziwa ngokuqala kwakho ukuvula Izitshixo nokusetyenziswa.
  • Isitshixo sinika ukufikelela okupheleleyo kwi-API yeakhawunti yakho: yonke i-endpoint, yonke imodeli kunye nebhalansi yonke.
  • Isitshixo asinalo ixesha lokuphelelwa. Sisebenza de usitshintshe okanye usirhoxise.

Tshintsha kwaye urhoxise

Utshintsha kwaye urhoxisa isitshixo kwiphepha leZitshixo nokusetyenziswa. Izitshixo nokusetyenziswa

Isenzo Okwenzekayo
Tshintsha Kunikezelwa isitshixo esitsha kwaye esidala siyayeka ukusebenza. Isitshixo esitsha sisebenza ngoko nangoko.
Rhoxisa Isitshixo siyayeka ukusebenza kwaye akukho sitshixo sitsha sinikezelwayo. Tshintsha ukuze ufumane isitshixo esisebenzayo kwakhona.
  • Zombini zisebenza ngoko nangoko: isicelo esilandelayo esinesitshixo esidala siphendulwa nge-401. Thatha imizuzwana engama-60 njengomda ophezulu phambi kokuba isitshixo esidala siyenqatshwe kwindawo yonke.
  • Zonke ii-client zeakhawunti zisebenzisa isitshixo esinye, ngoko ukutshintsha kufikelela kuzo zonke. Faka isitshixo esitsha kwii-client zakho kwakamsinya emva kokutshintsha.
  • Ibhalansi, ukusetyenziswa ne-flood protection zezeakhawunti, hayi zesitshixo. Isitshixo esitsha siqhubeka nebhalansi enye nenani elinye lezicelo kumzuzu wangoku.

Iimpazamo

Ukusilela ngalinye kokuqinisekisa kunesimo 401 nohlobo authentication_error. Umyalezo ubonisa umahluko phakathi kweemeko.

Isimo Uhlobo Umyalezo Xa
401 authentication_error Missing authentication Isicelo asinayo i-header ye-Authorization: Bearer okanye i-header ye-x-api-key eqala nge-sk-. Eli nalo lipendulo ye-bearer ngoonobumba abancinci nakwixabiso le-Authorization ngaphandle kwe-Bearer.
401 authentication_error Invalid API key Isitshixo asiso isitshixo samanje seakhawunti: sibhalwe kakubi, sirhoxisiwe, okanye sithatyathelwe indawo kukutshintsha.
{
  "error": {
    "type": "authentication_error",
    "message": "Invalid API key",
    "code": "invalid_api_key",
    "param": null
  }
}
  • Kuyo yonke indlela ngaphandle kwe-/v1/messages into ye-error ibamba ne-code: "invalid_api_key", nakwisitshixo esilahlekileyo, kunye ne-param: null.
  • Isitshixo siphononongwa phambi kokuba umzimba ufundwe. Isicelo esingenasitshixo esisebenzayo sifumana i-401 nokuba umzimba waso awusebenzi okanye mkhulu kakhulu.
  • Ixabiso le-Authorization: Bearer elingaqali nge-sk- alithathwa njenge-API key. Lifumana i-401 kunye nomyalezo wokuba i-token ayisebenzi okanye iphelelwe lixesha.

Amabrawuza ne-CORS

  • I-API iphendula izicelo zebrawuza ze-cross-origin kuphela kuluhlu olungatshintshiyo lweendawo. I-JavaScript kwiphepha lenye indawo ayikwazi ukufunda iimpendulo ze-/v1.
  • Biza i-API kwi-server yakho uvumele iphepha lakho lithethe ne-server yakho. Oko kugcina nesitshixo singekho kwikhowudi yomthombo wephepha.
  • Ikhowudi ye-server-side nezixhobo zomgca womyalelo azichatshazelwa: lo mthetho usetyenziswa ngamabrawuza kuphela.
  • Ukungena kwi-shannon-ai.com akuqinisekisi izicelo ze-/v1. Iincwadana azifundwa apho; isitshixo kuphela yimvume.
  • Kwindawo evunyelweyo, ibrawuza inokuthumela i-content-type, authorization, x-api-key, anthropic-version, anthropic-beta, openai-beta kunye ne-x-request-id, kwaye inokufunda i-header yempendulo ye-x-request-id.

Ukugcina isitshixo sikhuselekile

  • Gcina isitshixo kwi-server. Ungasifaki kumaphepha ewebhu, kwii-app zefowuni okanye kwii-repository zawonke-wonke: nabani na onaso angasebenzisa yonke ibhalansi yakho.
  • Layisha isitshixo kwi-environment variable okanye kwindawo yeemfihlo kunokuba sibhalwe kwikhowudi.
  • Ukuba isitshixo sinokuba sivuzile, sitshintshe kwiZitshixo nokusetyenziswa. Isitshixo esidala siyayeka ukusebenza ngoko nangoko.
  • Emva kokuvuza, funda uluhlu lwezicelo kwiZitshixo nokusetyenziswa. Libonisa isicelo ngasinye esenziwe sisitshixo kwiintsuku ezingama-30 zokugqibela.