Neidio i'r cynnwys
Chat Completions

Chat Completions

Mae POST /v1/chat/completions yn cymryd sgwrs ac yn dychwelyd neges nesaf y model yn fformat OpenAI Chat Completions. Defnyddiwch ef o unrhyw SDK OpenAI neu dros HTTP plaen; y dudalen hon yw'r cyfeirnod maes wrth faes.

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

Y cais lleiaf yw id model ac un neges defnyddiwr.

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

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

Un gwrthrych JSON yw'r ateb:

200 JSON
{
  "id": "chatcmpl-5f0c1e7a9b3d4c62a8e1f07d2b46c9a3",
  "object": "chat.completion",
  "created": 1791625200,
  "model": "shannon-3",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Hello, it is good to meet you.",
        "reasoning_content": "The user wants a greeting in one sentence. Keep it short and friendly."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 1184,
    "completion_tokens": 46,
    "total_tokens": 1230
  }
}

Penawdau

Penawdau'r cais

Pennawd Gwerth Disgrifiad
Authorization Bearer YOUR_API_KEY Eich allwedd API. Derbynnir x-api-key: YOUR_API_KEY yn ei lle ar bob pwynt terfyn.
Content-Type application/json Gofynnol. Mae unrhyw werth arall yn dychwelyd 415.
x-request-id Dewisol. Eich id eich hun ar gyfer y cais. Daw yn ôl heb ei newid ar yr ateb.

Penawdau'r ateb

Pennawd Disgrifiad
x-request-id Ar bob ateb, gwallau a ffrydiau yn gynwysedig: y gwerth a anfonwyd gennych, neu 12 nod hecsadegol pan na anfonoch yr un. Dyfynnwch ef pan fyddwch yn adrodd problem.
content-type application/json, neu text/event-stream pan fo stream yn true.

Meysydd y cais

Dim ond messages sy'n ofynnol. Mae'r golofn Yn cael ei gymhwyso gan yn enwi'r modelau lle mae maes yn newid yr ateb. Y modelau pwysau agored a gynhelir yw deuddeg id y rhestr fodelau; teulu Shannon 3 yw shannon-3, shannon-3-pro, shannon-3.1 a shannon-3.1-pro. Modelau a phrisiau

Maes Math Rhagosodiad Disgrifiad Yn cael ei gymhwyso gan
model string shannon-1.6-lite Y model sy'n ateb: id o'r rhestr fodelau. Anfonwch ef gyda phob cais. Nid yw'r paru yn sensitif i briflythrennau. Mae id nad yw wedi'i gyhoeddi yn dychwelyd 400 unknown model. Pob model
messages array Gofynnol. Y sgwrs, y neges hynaf yn gyntaf. Gweler Negeseuon isod. Pob model
stream boolean false Mae true yn anfon yr ateb fel digwyddiadau a anfonir gan y gweinydd wrth iddo gael ei ysgrifennu. Pob model
max_tokens integer 4096 Terfyn uchaf yr ateb, mewn tokenau. Symudir gwerth y tu allan i 1 i 65,536 i mewn i'r ystod honno. Hefyd dyma'r swm a neilltuir o'ch balans tra bydd y cais yn rhedeg. Gweler Hyd yr allbwn isod. Modelau pwysau agored a gynhelir, shannon-1.6-lite, shannon-1.6-pro, shannon-coder-1
max_completion_tokens integer Yr un peth â max_tokens. Pan anfonir y ddau, defnyddir max_tokens. Modelau pwysau agored a gynhelir, shannon-1.6-lite, shannon-1.6-pro, shannon-coder-1
temperature number Tymheredd samplu. Ar y modelau pwysau agored a gynhelir y rhagosodiad yw 1 a chedwir y gwerthoedd rhwng 0 a 2. Modelau pwysau agored a gynhelir, shannon-1.6-lite, shannon-1.6-pro, shannon-coder-1
top_p number 0.95 Samplu cnewyllyn. Cedwir y gwerthoedd rhwng 0 ac 1. Modelau pwysau agored a gynhelir
seed integer Hedyn y samplwr, unrhyw gyfanrif. Hebddo, deilliodd yr hedyn o'r model a'r sgwrs, felly mae'r un cais a anfonir ddwywaith yn defnyddio'r un hedyn. Modelau pwysau agored a gynhelir
stop string | array Llinyn neu arae o linynnau. Defnyddir hyd at 4. Daw'r ateb i ben cyn y cyntaf sy'n ymddangos; ni ddychwelir testun y stop ei hun. Modelau pwysau agored a gynhelir
reasoning_effort string high Faint mae'r model yn rhesymu cyn iddo ateb: off, low, medium neu high. Mae none a minimal yn golygu off, mae default yn golygu medium, mae max yn golygu high. Mae unrhyw werth arall yn dychwelyd 400. Modelau pwysau agored a gynhelir
reasoning object Yr un gosodiad ar ffurf gwrthrych: {"effort": "low"}. Pan anfonir y ddau, defnyddir reasoning_effort. Modelau pwysau agored a gynhelir
tools array Y ffwythiannau y caiff y model eu galw, pob un fel {"type": "function", "function": {"name", "description", "parameters"}}. Daw galwadau'r model yn ôl yn tool_calls; mae eich cod yn eu rhedeg. Pob model
tool_choice string | object auto Mae "auto" yn gadael i'r model benderfynu. Mae "required" yn gwneud iddo alw offeryn. Mae {"type": "function", "function": {"name": "…"}} yn gwneud iddo alw'r offeryn hwnnw. Modelau pwysau agored a gynhelir
response_format object {"type": "json_object"} ar gyfer ateb JSON, neu {"type": "json_schema", "json_schema": {…}} ar gyfer ateb sy'n dilyn eich sgema. Pob haen Shannon; modelau pwysau agored a gynhelir fel y rhestrir fesul id
web_search boolean false Mae true yn gadael i'r model chwilio'r we cyn iddo ateb. shannon-1.6-*, shannon-2-*, teulu Shannon 3

Derbynnir meysydd OpenAI eraill, megis n, user, stream_options, parallel_tool_calls, presence_penalty, frequency_penalty, logit_bias, logprobs, metadata, store a prompt_cache_key, fel bod cod cleient presennol yn rhedeg heb newid. Nid ydynt yn newid yr ateb: mae un dewis bob amser, ac mae ffrwd bob amser yn gorffen gyda'r defnydd.

Mae maes â'r math JSON anghywir, er enghraifft "max_tokens": "100", yn dychwelyd 422. Felly hefyd cais heb messages.

Mae gan offer, allbwn strwythuredig, rhesymu a chwilio'r we eu tudalen eu hunain: Galw swyddogaeth, Allbynnau strwythuredig, Ymdrech rhesymu, Chwilio gwe.

Cais gyda dewisiadau

Mae'r cais hwn yn gosod neges system, y meysydd samplu a'r ymdrech rhesymu. Mae'n defnyddio model pwysau agored a gynhelir, sy'n cymhwyso pob un ohonynt.

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="DeepSeek-V4-Flash-0731-W4A16-AUTOROUND-REAP",
    messages=[
        {"role": "system", "content": "You are a physics teacher. Answer in two sentences."},
        {"role": "user", "content": "Why is the sky blue?"},
    ],
    max_tokens=512,
    temperature=0.3,
    top_p=0.9,
    seed=7,
    stop=["\n\n"],
    reasoning_effort="low",
)

message = response.choices[0].message
print(message.reasoning_content)  # the reasoning
print(message.content)            # the answer
print(response.usage)

Mae gan yr ateb yr un ffurf â'r uchod. Mae ei usage yn ychwanegu dau fanylyn ar y modelau pwysau agored a gynhelir: y tokenau prompt a ddarllenwyd o'r cache a'r tokenau a wariwyd ar resymu.

200 JSON
{
  "usage": {
    "prompt_tokens": 31,
    "completion_tokens": 62,
    "total_tokens": 93,
    "prompt_tokens_details": {
      "cached_tokens": 0
    },
    "completion_tokens_details": {
      "reasoning_tokens": 21
    }
  }
}

Hyd yr allbwn

Mae max_tokens yn gwneud dau beth. Yn gyntaf, dyma nifer y tokenau a neilltuir o'ch balans pan fydd y cais yn dechrau. Pan fydd yr ateb yn gyflawn, caiff y swm hwnnw ei ddisodli gan y tokenau a ddefnyddiodd y cais. Os yw max_tokens yn fwy na'r hyn sydd ar ôl o'ch balans, mae'r cais yn dychwelyd 429 Quota exceeded hyd yn oed pe bai'r ateb ei hun wedi ffitio. Anfonwch max_tokens is i neilltuo llai.

Cyfrifir shannon-coder-1 yn wahanol ar y pwynt terfyn hwn: mae pob cais yn un o alwadau Shannon Coder eich cynllun, ac ni neilltuir tokenau ar ei gyfer. Terfynau a balans

Yn ail, mae'n cyfyngu hyd yr ateb ar y modelau hyn:

Modelau Beth mae max_tokens yn ei wneud
shannon-1.6-lite, shannon-1.6-pro, shannon-coder-1 Mae'r ateb yn stopio pan fydd yn cyrraedd y terfyn. Yna mae ffrwd yn gorffen gyda finish_reason length.
Modelau pwysau agored a gynhelir Mae testun yr ateb yn stopio ar max_tokens. Ni chyfrifir rhesymu yn ei erbyn. Mae gwerthoedd o dan 256 yn gweithredu fel 256.

Heb max_tokens na max_completion_tokens, y gwerth yw 4,096. Ar shannon-coder-1 mae'n 65,536.

Negeseuon

Mae pob neges yn wrthrych gyda role a content. Mae content yn llinyn, neu'n arae o rannau pan fo'r neges yn cario mwy na thestun.

Rôl Disgrifiad Yn cael ei gymhwyso gan
system Cyfarwyddiadau i'r model. Rhowch ef yn gyntaf. Ar haenau Shannon y neges system gyntaf yw'r un a ddefnyddir. Modelau pwysau agored a gynhelir, shannon-1.6-*, shannon-2-*, shannon-coder-1
developer Darllenir fel system. Modelau pwysau agored a gynhelir
user Yr hyn rydych yn ei ofyn. Ar haenau Shannon y neges user olaf yw'r prompt a'r negeseuon o'i blaen yw'r hanes. Pob model
assistant Atebion cynharach y model. Cadwch ei tool_calls pan anfonwch ganlyniad offeryn ar ei ôl. Pob model
tool Canlyniad galwad offeryn: mae tool_call_id yn dal id yr alwad ac mae content yn dal y canlyniad fel llinyn. Pob model

Gydag id o deulu Shannon 3, rhowch gyfarwyddiadau y mae'n rhaid iddynt ddal yn y neges user.

Ar haenau Shannon mae cais heb destun defnyddiwr a heb tools yn dychwelyd 400 No user message provided.

Rhannau cynnwys

Rhan Disgrifiad Ar gael ar
{"type": "text", "text": "…"} Testun plaen. Pob model
{"type": "image_url", "image_url": {"url": "…"}} Delwedd, fel URL data: gyda chynnwys base64 neu fel URL http(s). Teulu Shannon 3, shannon-1.6-lite, shannon-1.6-pro, a'r modelau pwysau agored a gynhelir sy'n rhestru mewnbwn delweddau
{"type": "file", "source": {"type": "base64", "media_type": "application/pdf", "data": "…"}} Dogfen (PDF, Word, PowerPoint neu Excel), fel base64 neu drwy URL. Teulu Shannon 3

Mae gan feintiau, terfynau a'r rhestr lawn o ffurfiau eu tudalen eu hunain. Delweddau a ffeiliau

Gwrthrych yr ateb

Maes Math Disgrifiad
id string chatcmpl- ac yna 32 nod hecsadegol.
object string Bob amser chat.completion.
created integer Amser yr ateb, mewn eiliadau Unix.
model string Id canonaidd y model a atebodd. Gall fod yn wahanol o ran sillafu i'r id a anfonoch.
choices array Bob amser un dewis yn union, gydag index 0.
choices[0].message.role string Bob amser assistant.
choices[0].message.content string | null Testun yr ateb. Gyda tool_calls mae'n null ar haenau Shannon; gall y modelau pwysau agored a gynhelir anfon testun wrth ymyl y galwadau.
choices[0].message.reasoning_content string | null Y rhesymu a ysgrifennodd y model cyn yr ateb, neu null pan nad oes un.
choices[0].message.tool_calls array Yn bresennol dim ond pan fo'r model yn galw offer. Mae gan bob cofnod id, type function, a function gyda'r name a'r arguments fel llinyn JSON.
choices[0].message.annotations array Dim ond ar gais gyda web_search: true y daeth ei chwiliad o hyd i rywbeth. Un url_citation ar gyfer pob ffynhonnell y mae marciwr yn content yn ei henwi, gydag url, title, start_index ac end_index (safle'r marciwr, wedi'i gyfrif mewn nodau, heb gynnwys y diwedd).
choices[0].finish_reason string Pam y daeth yr ateb i ben. Gweler Rhesymau gorffen.
usage object Tokenau'r cais. Gweler Defnydd.
sources array Dim ond ar gais gyda web_search: true y daeth ei chwiliad o hyd i rywbeth: y canlyniadau a roddwyd i'r model, pob un gydag index, title ac url. Mae [1] yn yr ateb yn gofnod gydag index 1.

Rhesymau gorffen

finish_reason Disgrifiad
stop Gorffennodd y model ei ateb, neu ymddangosodd llinyn stop.
tool_calls Mae'r model yn galw un neu fwy o offer. Rhedwch nhw ac anfonwch y canlyniadau mewn negeseuon tool.
length Torrwyd yr ateb ar y terfyn allbwn. Adroddir ar ffrydiau shannon-1.6-lite, shannon-1.6-pro, shannon-coder-1 a theulu Shannon 3.

Mae ateb nad yw wedi'i ffrydio yn adrodd stop neu tool_calls.

Defnydd

Maes Math Disgrifiad Ar gael ar
usage.prompt_tokens integer Tokenau mewnbwn. Pob model
usage.completion_tokens integer Tokenau allbwn: rhesymu, ateb a galwadau offer gyda'i gilydd. Pob model
usage.total_tokens integer prompt_tokens ynghyd â completion_tokens. Pob model
usage.prompt_tokens_details.cached_tokens integer Y rhan o prompt_tokens a ddarllenwyd o'r cache prompt. Modelau pwysau agored a gynhelir
usage.completion_tokens_details.reasoning_tokens integer Y rhan o completion_tokens a wariwyd ar resymu. Modelau pwysau agored a gynhelir

Ar y modelau pwysau agored a gynhelir, prompt_tokens yw eich negeseuon a'ch diffiniadau offer wedi'u cyfrif â thokeneiddiwr y model ei hun, ynghyd â thokenau unrhyw ddelweddau. Mae'r pwyntiau terfyn cyfrif tokenau yn dychwelyd yr un rhif cyn i chi anfon. Cyfrif tokenau

Ar haenau Shannon, mae prompt_tokens yn cyfrif popeth a ddarllenodd y model i ysgrifennu'r ateb, felly mae'n fwy na thestun eich negeseuon yn unig.

Ffrydio

Gyda stream wedi'i osod i true mae'r ateb yn cyrraedd fel digwyddiadau chat.completion.chunk ac yn gorffen gyda data: [DONE]. Mae'r talp olaf o'i flaen yn cario finish_reason a usage; nid oes angen stream_options. Mae gan ffurfiau'r talpiau, llinellau cadw'n fyw a gwallau y tu mewn i ffrwd eu tudalen eu hunain. Ffrydio

Gwallau

Gwrthrych JSON gydag aelod error yw gwall. Mae'r gwiriadau'n rhedeg yn y drefn hon: allwedd API, corff y cais, id y model, yna balans. Mae'r tabl yn rhestru'r hyn y mae'r pwynt terfyn hwn yn ei ddychwelyd amlaf. Mae gan y rhestr lawn, gyda'r hyn i'w ailgeisio, ei thudalen ei hun. Rheoli gwallau

400 JSON
{
  "error": {
    "type": "invalid_request_error",
    "message": "unknown model: no-such-model"
  }
}
Statws Math Neges Pryd
401 authentication_error Missing authentication
Invalid API key
Ni anfonwyd allwedd API, neu mae'r allwedd yn anhysbys neu wedi'i dirymu.
400 invalid_request_error unknown model: <id> Nid yw model yn id cyhoeddedig.
400 invalid_request_error No user message provided Haenau Shannon: nid oes gan y cais destun defnyddiwr na tools.
400 invalid_request_error <id> does not accept image input Anfonwyd rhan delwedd at fodel pwysau agored a gynhelir heb fewnbwn delweddau.
400 invalid_request_error <id> does not accept response_format Anfonwyd response_format at fodel pwysau agored a gynhelir heb allbwn strwythuredig.
400 invalid_request_error unknown reasoning effort '<value>'; expected off, low, medium or high Mae reasoning_effort yn dal gwerth y tu allan i'r rhestr.
422 invalid_request_error Failed to deserialize the JSON body into the target type: … Mae messages ar goll, neu mae gan faes y math JSON anghywir.
429 rate_limit_error Quota exceeded. Upgrade your plan at shannon-ai.com/plan Mae max_tokens yn fwy na'r hyn sydd ar ôl o'ch balans.
429 rate_limit_error Too many requests. Retry in <n>s. Amddiffyniad rhag llifogydd: mwy na 120 o geisiadau mewn un munud ar eich cyfrif.
500 server_error The model backend failed to answer. Please retry. Ni chynhyrchodd y model ateb. Anfonwch y cais eto.
502 api_error The model backend failed to answer. Please retry. Yr un peth, ar deulu Shannon 3 a'r modelau pwysau agored a gynhelir.