Fara í efni
Anthropic

Anthropic

POST /v1/messages tekur við beiðni á Anthropic Messages sniðinu og svarar á sama sniði, streymt eða ekki. Notaðu það með Anthropic SDK og með tólum sem byggja á því, svo sem Claude Code: stilltu base URL, notaðu Shannon API-lykilinn þinn og tilgreindu Shannon-líkanauðkenni.

POST https://api.shannon-ai.com/v1/messages

Beindu Anthropic SDK að Shannon base URL. SDK bætir við /v1/messages og sendir lykilinn þinn í x-api-key hausnum.

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": "Say hello in one sentence."}],
)

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

Svarið eru skilaboð þar sem content er listi af blokkum. Finndu blokkirnar eftir type: þegar líkanið rökhugsaði er fyrsta blokkin thinking og textinn kemur á eftir henni.

200 JSON
{
  "id": "msg_5f0c1e7a9b3d4c62a8e1f07d2b46c9a3",
  "type": "message",
  "role": "assistant",
  "model": "shannon-3",
  "content": [
    {
      "type": "thinking",
      "thinking": "The user wants a greeting in one sentence. Keep it short and friendly."
    },
    {
      "type": "text",
      "text": "Hello, it is good to meet you."
    }
  ],
  "stop_reason": "end_turn",
  "usage": {
    "input_tokens": 1184,
    "output_tokens": 46
  }
}

Hausar

Haus Gildi Lýsing
x-api-key YOUR_API_KEY API-lykillinn þinn. Authorization: Bearer YOUR_API_KEY er tekið gilt í hans stað.
content-type application/json Skylda.
anthropic-version 2023-06-01 Samþykkt, ekki skylda. Anthropic SDK sendir 2023-06-01; svarið hefur sama snið óháð gildinu.
anthropic-beta Samþykkt, ekki skylda.
x-request-id Valfrjálst. Þitt eigið auðkenni beiðninnar. Það kemur óbreytt til baka í svarinu; án þess ber svarið auðkenni með 12 sextándakerfisstöfum.

Beiðnireitir

Aðeins messages er skylda. Dálkurinn Notað af nefnir líkönin þar sem reitur breytir svarinu. Hýstu líkönin með opnum þyngdum eru auðkennin tólf á líkanalistanum; Shannon 3 fjölskyldan er shannon-3, shannon-3-pro, shannon-3.1 og shannon-3.1-pro. Líkön og verð

Reitur Gerð Sjálfgefið Lýsing Notað af
model string shannon-1.6-lite Shannon-líkanauðkenni af líkanalistanum. Sendu það með hverri beiðni. Samsvörun er ekki hástafanæm. Öll önnur nöfn skila 400 unknown model, svo tól sem sendir eigin líkananöfn þarf að stilla á Shannon-auðkenni. Öll líkön
messages array Skylda. Samtalið, elstu skilaboð fyrst, með hlutverkunum user og assistant. Sjá Skilaboð og efnisblokkir hér á eftir. Öll líkön
system string | array Fyrirmæli til líkansins: strengur eða fylki af textablokkum. Sjá System prompt hér á eftir. Hýst líkön með opnum þyngdum, shannon-1.6-*, shannon-2-*, shannon-coder-1
max_tokens integer 4096 Efri mörk svarsins, í táknum. Valfrjálst á þessum endapunkti; Anthropic SDK sendir það alltaf. Gildi utan 1 til 65,536 er fært inn í það bil. Þetta er jafnframt það magn sem tekið er frá af stöðunni þinni meðan beiðnin er í vinnslu. Hýst líkön með opnum þyngdum, shannon-1.6-lite, shannon-1.6-pro, shannon-coder-1
stream boolean false true sendir svarið sem server-sent events. Sjá Streymi hér á eftir. Öll líkön
temperature number Sýnatökuhiti. Á hýstum líkönum með opnum þyngdum eru gildi höfð á bilinu 0 til 2. Hýst líkön með opnum þyngdum, shannon-1.6-lite, shannon-1.6-pro, shannon-coder-1
top_p number Nucleus-sýnataka. Hýst líkön með opnum þyngdum
stop_sequences array Allt að 4 strengir. Svarið endar á undan þeim fyrsta sem birtist. stop_reason er áfram end_turn. Hýst líkön með opnum þyngdum
tools array Tólin sem líkanið má kalla á, hvert sem {"name", "description", "input_schema"}. Sjá Tól hér á eftir. Öll líkön
tool_choice object {"type": "auto"} lætur líkanið ákveða, {"type": "any"} lætur það kalla á tól, {"type": "tool", "name": "…"} lætur það kalla á það tól. Hýst líkön með opnum þyngdum
thinking object Hversu mikið líkanið rökhugsar áður en það svarar. Sjá Thinking hér á eftir. Hýst líkön með opnum þyngdum
web_search boolean false Viðbót Shannon við sniðið: true lætur líkanið leita á vefnum áður en það svarar. shannon-1.6-*, shannon-2-*, Shannon 3 fjölskyldan

Án max_tokens er gildið 4,096, og 65,536 á shannon-coder-1.

metadata, top_k, service_tier og cache_control merki á blokkum eru samþykkt svo að núverandi biðlarakóði keyri óbreyttur. Þau breyta ekki svarinu; skyndiminni prompta á hýstum líkönum með opnum þyngdum er sjálfvirkt.

JSON-svar samkvæmt skema er beðið um með response_format á Chat Completions og með text.format á Responses. Skipulögð úttök

Beiðni með system prompt og thinking

Þessi beiðni sendir system prompt, thinking-fjárhagsáætlun, hitastig og stöðvunarrunu. Hún notar hýst líkan með opnum þyngdum, sem tekur tillit til þessa alls.

import anthropic

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

message = client.messages.create(
    model="DeepSeek-V4-Flash-0731-W4A16-AUTOROUND-REAP",
    max_tokens=4096,
    system="You are a physics teacher. Answer in two sentences.",
    thinking={"type": "enabled", "budget_tokens": 2048},
    temperature=0.3,
    stop_sequences=["\n\n"],
    messages=[{"role": "user", "content": "Why is the sky blue?"}],
)

for block in message.content:
    if block.type == "thinking":
        print("reasoning:", block.thinking)
    elif block.type == "text":
        print("answer:", block.text)
print(message.usage)

Á hýstum líkönum með opnum þyngdum sýnir usage táknin sem lesin voru úr skyndiminni prompta sérstaklega frá öðrum inntakstáknum.

200 JSON
{
  "usage": {
    "input_tokens": 31,
    "cache_read_input_tokens": 0,
    "cache_creation_input_tokens": 0,
    "output_tokens": 62
  }
}

System prompt

system er strengur, eða fylki af textablokkum á forminu [{"type": "text", "text": "…"}]. Textar blokkanna eru tengdir saman með línuskiptingu.

Hún er notuð af hýstum líkönum með opnum þyngdum, shannon-1.6-lite, shannon-1.6-pro, shannon-2-lite, shannon-2-pro og shannon-coder-1. Með auðkenni úr Shannon 3 fjölskyldunni skaltu setja fyrirmæli sem verða að gilda inn í notandaskilaboðin.

Skilaboð og efnisblokkir

Skilaboð hafa role, annaðhvort user eða assistant, og content. content er strengur eða fylki af blokkum.

Blokk Lýsing Í boði á
{"type": "text", "text": "…"} Texti. Öll líkön
{"type": "image", "source": {"type": "base64", "media_type": "image/png", "data": "…"}}
{"type": "image", "source": {"type": "url", "url": "…"}}
Mynd í user skilaboðum, sem base64 eða með vefslóð. Shannon 3 fjölskyldan, shannon-1.6-lite, shannon-1.6-pro og hýst líkön með opnum þyngdum sem styðja myndainntak
{"type": "document", "source": {"type": "base64", "media_type": "application/pdf", "data": "…"}} Skjal (PDF, Word, PowerPoint eða Excel) í user skilaboðum, sem base64 eða með vefslóð. Shannon 3 fjölskyldan
{"type": "tool_use", "id": "toolu_…", "name": "…", "input": {…}} Í assistant skilaboðum: tólakall sem líkanið gerði í fyrra svari. Öll líkön
{"type": "tool_result", "tool_use_id": "toolu_…", "content": "…"} Í user skilaboðum: niðurstaða þess kalls. content er strengur eða listi af textablokkum. Öll líkön

Þú getur sent content úr fyrra svari til baka óbreytt: text og tool_use blokkir eru lesnar en thinking blokkir sleppt.

Á Shannon-þrepunum eru myndir og skjöl lesin úr síðustu user skilaboðunum. Stærðir og mörk hafa sína eigin síðu. Myndir og skrár

Thinking

Hýst líkön með opnum þyngdum varpa thinking yfir í rökhugsunarátak. Án reitsins er átakið mikið.

Form budget_tokens Áhrif
{"type": "disabled"} Engin rökhugsun. Svarið hefur enga thinking blokk.
{"type": "enabled", "budget_tokens": 2048} ≤ 2,048 Lítið átak.
{"type": "enabled", "budget_tokens": 8192} ≤ 8,192 Miðlungsátak.
{"type": "enabled", "budget_tokens": 16000} > 8,192 Mikið átak.

Líkan sem rökhugsar skilar rökhugsun sinni sem blokk {"type": "thinking", "thinking": "…"} á undan textanum. Shannon-þrepin sem rökhugsa senda hana líka.

Átaksstigunum er lýst á sinni eigin síðu. Rökhugsunarátak

Tól

Tól er fall sem kóðinn þinn keyrir. Lýstu hverju með name, description og input_schema. Þegar líkanið vill nota tól geymir svarið tool_use blokk og stop_reason er tool_use.

Tólaskilgreining í tools:

tools
[
  {
    "name": "get_weather",
    "description": "Current weather for a city.",
    "input_schema": {
      "type": "object",
      "properties": {
        "city": {
          "type": "string"
        }
      },
      "required": [
        "city"
      ]
    }
  }
]

content svars sem kallar á það:

200 content
[
  {
    "type": "text",
    "text": ""
  },
  {
    "type": "tool_use",
    "id": "toolu_3d9a7c1e5b2f4a60c8e1d7f09b24a6c5",
    "name": "get_weather",
    "input": {
      "city": "Paris"
    }
  }
]

Keyrðu tólið og sendu síðan beiðnina aftur með kallinu og tool_result blokk bætt við messages:

messages
[
  {
    "role": "user",
    "content": "What is the weather in Paris?"
  },
  {
    "role": "assistant",
    "content": [
      {
        "type": "tool_use",
        "id": "toolu_3d9a7c1e5b2f4a60c8e1d7f09b24a6c5",
        "name": "get_weather",
        "input": {
          "city": "Paris"
        }
      }
    ]
  },
  {
    "role": "user",
    "content": [
      {
        "type": "tool_result",
        "tool_use_id": "toolu_3d9a7c1e5b2f4a60c8e1d7f09b24a6c5",
        "content": "{\"temperature_c\": 18, \"sky\": \"cloudy\"}"
      }
    ]
  }
]

tool_choice

Form Áhrif Notað af
{"type": "auto"} Líkanið ákveður hvort það kallar á tól. Þetta er sjálfgefið. Öll líkön
{"type": "any"} Líkanið verður að kalla á eitt af tólunum. Hýst líkön með opnum þyngdum
{"type": "tool", "name": "…"} Líkanið verður að kalla á tólið sem er nefnt. Hýst líkön með opnum þyngdum

Aðeins tól með input_schema eru lesin. Vefleit er ekki tól á þessum endapunkti: stilltu reitinn web_search.

Tólalykkjunni er lýst í heild á sinni eigin síðu. Aðgerðaköll

Svarið

Reitur Gerð Lýsing Sent af
id string msg_ og síðan 32 sextándakerfisstafir. Öll líkön
type string Alltaf message. Öll líkön
role string Alltaf assistant. Öll líkön
model string Hið kanóníska auðkenni líkansins sem svaraði. Öll líkön
content array Blokkir svarsins, í þessari röð: thinking þegar líkanið rökhugsaði, text, síðan ein tool_use fyrir hvert tólakall. Öll líkön
stop_reason string Hvers vegna svarið endaði. Sjá gildin hér að neðan. Öll líkön
usage object input_tokens og output_tokens. Öll líkön
sources array Aðeins á beiðni með web_search: true þar sem leitin fann eitthvað: niðurstöðurnar sem líkanið fékk, hver með index, title og url. [1] í svarinu er færslan með index 1. Í streymi kemur það með message_delta atburðinum. shannon-1.6-*, shannon-2-*, Shannon 3 fjölskyldan
usage.cache_read_input_tokens integer cache_read_input_tokens er sá hluti prompts sem var lesinn úr skyndiminni; input_tokens er afgangurinn. cache_creation_input_tokens er alltaf 0. Hýst líkön með opnum þyngdum

Svarblokkir

Blokk Lýsing
{"type": "thinking", "thinking": "…"} Rökhugsun líkansins. Það er enginn signature meðlimur.
{"type": "text", "text": "…"} Svartextinn. Hann getur verið tómur þegar svarið er tólakall.
{"type": "tool_use", "id": "toolu_…", "name": "…", "input": {…}} Tólakall. input er JSON-hlutur. Sendu niðurstöðuna til baka með sama id.

stop_reason

stop_reason Lýsing Sent af
end_turn Líkanið lauk svarinu, eða ein af stop_sequences þínum birtist. Öll líkön
tool_use Svarið geymir eitt eða fleiri tólakall. Öll líkön
max_tokens Svarið var skorið við úttaksmörkin. Shannon 3 fjölskyldan, shannon-1.6-lite, shannon-1.6-pro, shannon-coder-1, í straumum

Streymi

Stilltu stream á true til að fá server-sent events. Hver rammi hefur event: línu með heiti atburðarins og data: línu með JSON-hlut sem endurtekur heitið í type. Straumhjálparföll Anthropic SDK lesa þessa atburði fyrir þig:

import anthropic

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

with client.messages.stream(
    model="shannon-3",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Explain server-sent events in three sentences."}],
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)
    message = stream.get_final_message()

print()
print(message.stop_reason, message.usage)

Atburðirnir, í þeirri röð sem þeir berast:

Atburður Gögn Hvenær
message_start message Alltaf fyrst. message geymir auðkennið, hlutverkið, líkanið, tómt content og usage sem byrjar á núlli.
content_block_start index, content_block Blokk opnast. content_block er tóm text eða thinking blokk, eða tool_use blokk með id og name.
content_block_delta index, delta {"type": "thinking_delta", "thinking"} Hluti rökhugsunarinnar, fyrir thinking blokk.
content_block_delta index, delta {"type": "text_delta", "text"} Hluti svarsins, fyrir text blokk.
content_block_delta index, delta {"type": "input_json_delta", "partial_json"} Röksemdir tólakalls, fullkláraðar í einu delta, fyrir tool_use blokk.
content_block_stop index Blokkinni með þetta index er lokið.
message_delta delta {stop_reason, stop_sequence}, usage Lok svarsins: delta.stop_reason og usage beiðninnar.
message_stop Alltaf síðast.

Blokkir eru númeraðar með index í þeirri röð sem þær opnast, og ein blokk er fullkláruð áður en sú næsta opnast. Lestu hverja blokk eftir gerð hennar, ekki númeri: straumur getur fyrst opnað tóma text blokk, síðan thinking blokkina og skilað svarinu í síðari text blokk.

200 text/event-stream
event: message_start
data: {"type":"message_start","message":{"id":"msg_5f0c…","type":"message","role":"assistant","model":"shannon-3","content":[],"usage":{"input_tokens":0,"output_tokens":0}}}

event: content_block_start
data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""}}

event: content_block_stop
data: {"type":"content_block_stop","index":0}

event: content_block_start
data: {"type":"content_block_start","index":1,"content_block":{"type":"thinking","thinking":""}}

event: content_block_delta
data: {"type":"content_block_delta","index":1,"delta":{"type":"thinking_delta","thinking":"Three sentences: what it is, how it is framed, why it is used."}}

event: ping
data: {"type": "ping"}

event: content_block_stop
data: {"type":"content_block_stop","index":1}

event: content_block_start
data: {"type":"content_block_start","index":2,"content_block":{"type":"text","text":""}}

event: content_block_delta
data: {"type":"content_block_delta","index":2,"delta":{"type":"text_delta","text":"Server-sent events let a server push text over one HTTP reply."}}

event: content_block_stop
data: {"type":"content_block_stop","index":2}

event: message_delta
data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{"input_tokens":1190,"output_tokens":84}}

event: message_stop
data: {"type":"message_stop"}

Keep-alive

Sent af Lýsing
Shannon 3 fjölskyldan, shannon-1.6-lite, shannon-1.6-pro, shannon-coder-1 ping atburður með gögnin {"type": "ping"}, á 15 sekúndna fresti.
Hýst líkön með opnum þyngdum Athugasemdarlínan : keepalive, á 15 sekúndna fresti meðan líkanið vinnur.

Straumur sem bilar

Bilun eftir að straumurinn er hafinn er error atburður með sama meginmál og villusvar: {"type": "error", "error": {"type", "message"}}. Lokaatburðirnir, message_delta og message_stop, fylgja samt. Líttu á svarið sem misheppnað og sendu beiðnina aftur.

Villur

Villur nota Anthropic-villumeginmálið: type er error og error hluturinn geymir type og message. Taflan sýnir það sem þessi endapunktur skilar oftast. Heildarlistinn, með því hvað á að endurreyna, hefur sína eigin síðu. Villumeðhöndlun

400 JSON
{
  "type": "error",
  "error": {
    "type": "invalid_request_error",
    "message": "unknown model: no-such-model"
  }
}
Staða Gerð Skilaboð Hvenær
401 authentication_error Missing authentication
Invalid API key
Enginn API-lykill var sendur, eða lykillinn er óþekktur eða afturkallaður.
400 invalid_request_error unknown model: <id> model er ekki Shannon-líkanauðkenni.
400 invalid_request_error No user message provided Shannon-þrep: beiðnin hefur engan notandatexta og engin tools.
400 invalid_request_error <id> does not accept image input Mynd var send til hýsts líkans með opnum þyngdum sem tekur ekki við myndainntaki.
422 invalid_request_error Failed to deserialize the JSON body into the target type: … messages vantar, eða reitur hefur rangt JSON-gagnatag.
429 rate_limit_error Quota exceeded. Upgrade your plan at shannon-ai.com/plan max_tokens er stærra en það sem eftir er af stöðunni þinni.
429 rate_limit_error Too many requests. Retry in <n>s. Flóðvörn: fleiri en 120 beiðnir á einni mínútu á reikningnum þínum.
429 rate_limit_error Shannon Coder call quota reached. Upgrade your plan at shannon-ai.com/plan shannon-coder-1: Shannon Coder köll áskriftarinnar þinnar fyrir núverandi 4 klukkustunda glugga eru uppurin.
500 server_error The model backend failed to answer. Please retry. Líkanið skilaði ekki svari. Sendu beiðnina aftur.
502 api_error The model backend failed to answer. Please retry. Líkanið skilaði ekki svari. Sendu beiðnina aftur.

Talning tákna

POST /v1/messages/count_tokens tekur sama meginmál og skilaboðabeiðni (model, system, messages, tools) og skilar {"input_tokens": n}: fjölda inntakstákna sem beiðnin yrði gjaldfærð fyrir. Þetta telur fyrir hýst líkön með opnum þyngdum, er ókeypis og telst ekki með í flóðvörn.

import anthropic

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

count = client.messages.count_tokens(
    model="DeepSeek-V4-Flash-0731-W4A16-AUTOROUND-REAP",
    system="You are a physics teacher. Answer in two sentences.",
    messages=[{"role": "user", "content": "Why is the sky blue?"}],
)

print(count.input_tokens)

Talning hefur sína eigin síðu, með endapunkti fyrir hreinan texta og mörkunum. Tókatalning