Leum gun t-susbaint
Tòiseachadh Luath

Tòiseachadh Luath

Dèan a’ chiad iarrtas: faigh d’ iuchair, cuir aon teachdaireachd agus leugh am freagairt. Tha an API a’ bruidhinn nan cruthan OpenAI agus Anthropic, agus mar sin obraichidh an SDK a tha thu a’ cleachdadh mu thràth às dèidh dhut a base URL agus an iuchair atharrachadh.

1. Faigh d’ iuchair

Tha aon iuchair API aig gach cunntas. Clàraich a-steach, fosgail Keys & usage agus dèan lethbhreac dhith. Obraichidh an iuchair air gach endpoint agus gach modail. Iuchraichean & cleachdadh

2. Seòl do client dhan API

Tha na h-endpoints uile fon aon base URL. Gabhaidh OpenAI SDK e le /v1 aig a’ cheann; gabhaidh Anthropic SDK e às aonais, oir cuiridh e /v1/messages ris fhèin.

Client Base URL
OpenAI SDKan agus clients co-chòrdail ri OpenAI https://api.shannon-ai.com/v1
Anthropic SDKan https://api.shannon-ai.com

Bidh trì endpoints a’ toirt a-mach teacsa. Ruigidh iad na h-aon mhodailean; tagh am fear aig a bheil cruth a tha do chòd mu thràth a’ cleachdadh.

Endpoint Cruth
POST /v1/chat/completions OpenAI Chat Completions
POST /v1/messages Anthropic Messages
POST /v1/responses OpenAI Responses

3. Cuir a’ chiad iarrtas

Cuir aon teachdaireachd user gu shannon-3 air endpoint Chat Completions. Cuir d’ iuchair an àite YOUR_API_KEY.

POST https://api.shannon-ai.com/v1/chat/completions

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!"}
    ],
    max_tokens=1024
)

print(response.choices[0].message.content)
Raon Seòrsa Bun-roghainn Tuairisgeul
model string Id a’ mhodail a fhreagras. Tha na ids air an liostadh air Models & pricing.
messages array An còmhradh gu ruige seo: nithean le role agus content. Is e an teachdaireachd user mu dheireadh am prompt. Riatanach.
max_tokens integer 4096 Buidseat cuir-a-mach an iarrtais, bho 1 gu 65,536. Glèidhidh an t-iarrtas an t-suim seo bho do balance agus thèid cosgais a chuir air na chleachd e da-rìribh.
stream boolean false Cuiridh true am freagairt pios air phios fhad ’s a thèid a sgrìobhadh.

Is e JSON a th’ ann am bodhaig an iarrtais agus tha feum air an header Content-Type: application/json. Tha an liosta iomlan de raointean air duilleag an endpoint. Chat Completions

Am freagairt

Tillidh gairm gun stream aon nì JSON nuair a tha am freagairt coileanta. Is e eisimpleirean a th’ anns na teacsaichean agus na h-àireamhan gu h-ìosal.

200 JSON
{
  "id": "chatcmpl-9b2f6c1e4a7d4f0f8a3c5d2e1b6a7c90",
  "object": "chat.completion",
  "created": 1791590400,
  "model": "shannon-3",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Hello! What would you like to work on?",
        "reasoning_content": "A greeting. A short, friendly reply fits."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 1386,
    "completion_tokens": 74,
    "total_tokens": 1460
  }
}
Raon Seòrsa Tuairisgeul
id string chatcmpl- agus an uair sin 32 caractar hexadecimal.
object string An-còmhnaidh chat.completion.
created integer Àm an fhreagairt ann an diogan Unix.
model string Id foillsichte a’ mhodail a fhreagair, cuideachd nuair a chuir thu alias no litreachadh eile.
choices array An-còmhnaidh aon inntrigeadh, le index 0.
choices[0].message.role string An-còmhnaidh assistant.
choices[0].message.content string | null Am freagairt. Faodaidh e a bhith null nuair a tha tool_calls anns an fhreagairt.
choices[0].message.reasoning_content string | null Reasoning a’ mhodail ro fhreagairt, no null mura h-eil gin ann.
choices[0].message.tool_calls array Ri fhaighinn dìreach nuair a ghairmeas am modail fear dhe na h-innealan a dh’innis thu.
choices[0].finish_reason string stop airson freagairt, tool_calls nuair a ghairmeas am modail inneal.
usage.prompt_tokens integer Na tokens a leugh am modail airson am freagairt seo. Air shannon-2-* agus teaghlach Shannon 3 faodaidh seo a bhith nas motha na an teacsa a chuir thu.
usage.completion_tokens integer Na tokens a sgrìobh am modail.
usage.total_tokens integer An t-iomlan. Thèid cosgais modail Shannon a thomhas on àireamh seo.
  • Tha cunntasan tokens ann an usage, chan e airgead. Thèid na thug a’ ghairm bho do balance a shealltainn gach iarrtas air Keys & usage; tha mar a thèid a thomhas air Limits and balance. Crìochan agus balance
  • Tha an header x-request-id aig gach freagairt, cuideachd mearachd agus stream. Ma tha header x-request-id aig d’ iarrtas, thig a luach air ais; ma tha e dhìth, tha an luach 12 caractar hexadecimal. Cùm e anns na logaichean agad: bheir e ainm dhan aon iarrtas seo.

An aon ghairm mar stream

Suidhich stream gu true gus am freagairt a leughadh fhad ’s a thèid a sgrìobhadh. Tha a h-uile càil eile san iarrtas mar a bha.

from openai import OpenAI

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

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

for chunk in stream:
    if chunk.choices and chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

Tha gach frèam dhen stream na aon loidhne a thòisicheas le data: agus anns a bheil nì JSON. Aon fhrèam, clò-bhuailte air grunn loidhnichean:

Aon fhrèam
{
  "id": "chatcmpl-9b2f6c1e4a7d4f0f8a3c5d2e1b6a7c90",
  "object": "chat.completion.chunk",
  "created": 1791590400,
  "model": "shannon-3",
  "choices": [
    {
      "index": 0,
      "delta": {
        "content": "Hello! "
      },
      "finish_reason": null
    }
  ]
}
Frèamaichean, nan òrdugh delta finish_reason
Fhad ’s a nì am modail reasoning. Neoni no barrachd frèamaichean. {"reasoning_content": "…"} null
Am freagairt, pios air phios. Neoni no barrachd frèamaichean. {"content": "…"} null
An frèam JSON mu dheireadh. Tha usage ann cuideachd; chan fheum thu iarraidh. {} "stop"
Deireadh an stream: an loidhne data: [DONE].
  • Tha staid 200 agus content-type: text/event-stream aig an fhreagairt. Tha gach frèam na loidhne data: <json> agus loidhne fhalamh às a dhèidh.
  • Tha loidhne : ping a’ ruighinn gach 15 diogan. Is e beachd a th’ ann a chumas an ceangal fosgailte; leumaidh clients SSE thairis air.
  • Thig fàilligeadh às dèidh fosgladh an stream mar fhrèam data: {"error": {…}}. Fuirichidh an staid 200, agus mar sin sgrùd na frèamaichean.

Sruthadh

Ma dh’fhàilligeas a’ ghairm

Is e nì JSON le error a th’ ann am mearachd anns a bheil type agus message. Seo na freagairtean a choinnicheas a’ chiad ghairm as trice.

Staid Seòrsa Teachdaireachd Dè tha e a’ ciallachadh
401 authentication_error Missing authentication Cha do ràinig iuchair an API. Cuir Authorization: Bearer agus an uair sin d’ iuchair.
401 authentication_error Invalid API key Chan e an iuchair seo an iuchair làithreach aig cunntas. Dèan lethbhreac dhith a-rithist o Keys & usage.
400 invalid_request_error unknown model: <id> Chan e id foillsichte a th’ ann an model. Cleachd id o Models & pricing.
422 invalid_request_error Failed to deserialize the JSON body into the target type… Tha seòrsa JSON ceàrr air raon, no tha messages a dhìth.
429 rate_limit_error Quota exceeded. Upgrade your plan at shannon-ai.com/plan Chan eil buidseat cuir-a-mach an iarrtais a’ freagairt ri do balance.

Làimhseachadh mearachd

Càit an tèid thu an ath rud

  • Modailean & prìsean — Tagh modail: ids, uinneagan co-theacsa agus prìsean.
  • Chat Completions — Gach raon iarrtais, raon freagairt agus tachartas stream dhen endpoint a ghairm thu.
  • Sruthadh — Frèamaichean stream, loidhnichean keep-alive agus mearachdan am broinn stream.
  • Call gnìomh — Leig leis a’ mhodail na gnìomhan agad a ghairm.
  • Crìochan agus balance — Dè a tha iarrtas a’ glèidheadh agus a’ cosg, agus cia mheud iarrtas a dh’fhaodas tu a chur.
  • Raon-cluiche API — Feuch iarrtasan sa bhrobhsair le d’ iuchair.