Aqbeż għall-kontenut
SDKs

SDKs

Kull SDK ta' OpenAI jew Anthropic jaħdem minnufih.

Shannon titkellem il-formats tal-wire ta' OpenAI u ta' Anthropic, għalhekk tuża l-SDKs uffiċjali taż-żewġ naħat kif inhuma. Tbiddel tliet valuri fil-klijent: il-base URL, iċ-ċavetta tal-API u l-id tal-mudell. Il-bqija tal-kodiċi tiegħek jibqa' l-istess.

X'għandek issettja

Setting SDKs ta' OpenAI SDKs ta' Anthropic
Base URL https://api.shannon-ai.com/v1 https://api.shannon-ai.com
Ċavetta tal-API Iċ-ċavetta Shannon tiegħek. L-SDK jibgħatha bħala Authorization: Bearer. Iċ-ċavetta Shannon tiegħek. L-SDK jibgħatha bħala x-api-key.
Mudell Id ta' mudell ippubblikat, pereżempju shannon-3. Id ta' mudell ippubblikat, pereżempju shannon-1.6-lite.
Endpoints li jilħaq /v1/chat/completions, /v1/responses, /v1/models /v1/messages, /v1/messages/count_tokens
Varjabbli tal-ambjent OPENAI_API_KEY u OPENAI_BASE_URL, moqrija mill-SDKs ta' Python u JavaScript meta ma tgħaddi l-ebda valur. ANTHROPIC_API_KEY u ANTHROPIC_BASE_URL, moqrija mill-SDKs ta' Python u TypeScript meta ma tgħaddi l-ebda valur.

Iż-żewġ base URLs jiddifferixxu b'/v1: SDK ta' OpenAI iżid /chat/completions mal-base URL tiegħu, SDK ta' Anthropic iżid /v1/messages. Isem ta' mudell li Shannon ma tippubblikax jitwieġeb b'400 u unknown model. Mudelli u prezzijiet

Iċ-ċavetta tiegħek tinsab fil-paġna Keys & usage. Ċwievet u użu

SDKs ta' OpenAI

L-SDKs uffiċjali ta' OpenAI isejħu POST /v1/chat/completions u POST /v1/responses. Kull eżempju jibgħat messaġġ wieħed tal-utent u jistampa t-tweġiba.

# pip install openai
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)
Lingwa Installazzjoni Għażla tal-base URL Sors
Python pip install openai base_url openai/openai-python
JavaScript / TypeScript npm install openai baseURL openai/openai-node
Go go get github.com/openai/openai-go/v3 option.WithBaseURL openai/openai-go
Java com.openai:openai-java baseUrl openai/openai-java
.NET dotnet add package OpenAI OpenAIClientOptions.Endpoint openai/openai-dotnet

Kull qasam taż-żewġ endpoints huwa deskritt fil-paġni tagħhom. Chat Completions Responses API

SDKs ta' Anthropic

L-SDKs uffiċjali ta' Anthropic isejħu POST /v1/messages. Jeħtieġu max_tokens f'kull sejħa, għalhekk l-eżempji jużaw shannon-1.6-lite, li japplikah. Kull eżempju jistampa l-blokki tat-test tat-tweġiba.

# pip install anthropic
import anthropic

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

message = client.messages.create(
    model="shannon-1.6-lite",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello, Shannon!"}],
)
for block in message.content:
    if block.type == "text":
        print(block.text)
Lingwa Installazzjoni Għażla tal-base URL Sors
Python pip install anthropic base_url anthropics/anthropic-sdk-python
TypeScript npm install @anthropic-ai/sdk baseURL anthropics/anthropic-sdk-typescript
Go go get github.com/anthropics/anthropic-sdk-go option.WithBaseURL anthropics/anthropic-sdk-go
Java com.anthropic:anthropic-java baseUrl anthropics/anthropic-sdk-java

Il-format Messages u d-differenzi tiegħu jinsabu fil-paġna tal-kompatibbiltà ma' Anthropic. Format Anthropic

Fuq xiex jistgħu jistrieħu l-SDKs

  • Qasam tat-talba li l-API ma tużax jiġi aċċettat. Qasam li l-API tafu, mibgħut bit-tip ħażin, jitwieġeb b'422.
  • Il-headers tal-verżjoni u tal-beta li jżidu l-SDKs (anthropic-version, anthropic-beta, openai-beta) jiġu aċċettati. L-ebda wieħed minnhom mhu meħtieġ.
  • Il-model ta' tweġiba huwa l-id ippubblikat, għalhekk tista' tibgħatu lura kif inhu.
  • Fuq /v1/messages tweġiba tista' tibda b'blokk thinking. Aqra l-blokki tat-tip text minflok ma tieħu l-ewwel blokk.
  • L-istreaming jaħdem permezz tal-helpers tal-istream tal-SDK stess. L-usage jasal fl-aħħar ta' kull stream.
  • Kull tweġiba iġġorr header x-request-id. Ibgħat x-request-id tiegħek u l-istess valur jiġi lura.

SDKs tal-komunità

Klijenti miktuba għall-API ta' OpenAI minn awturi oħra jaħdmu bl-istess mod: agħti lill-klijent il-base URL b'/v1, iċ-ċavetta tiegħek u id ta' mudell Shannon. Dawn jinżammu mill-awturi tagħhom, mhux minn Shannon.

Lingwa Installazzjoni Klijent
Go go get github.com/sashabaranov/go-openai sashabaranov/go-openai
Ruby gem install ruby-openai alexrudall/ruby-openai
PHP composer require openai-php/client openai-php/client
Rust cargo add async-openai 64bit/async-openai

Mingħajr SDK

Ma teħtieġx SDK. Kull klijent HTTP li jista' jibgħat JSON jaħdem:

  • POST b'body JSON u l-header Content-Type: application/json. Mingħajru t-talba titwieġeb b'415.
  • Iċ-ċavetta tiegħek f'Authorization: Bearer <key> jew f'x-api-key: <key>. It-tnejn jaħdmu fuq kull endpoint.
  • Body sa 32 MiB.
  • B'"stream": true it-tweġiba hija stream ta' server-sent events (text/event-stream). Aqraha linja linja u tbufferjahiex.
  • Żball huwa body JSON b'error.type u error.message, maġenb l-istatus HTTP.
curl https://api.shannon-ai.com/v1/chat/completions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "shannon-3",
    "messages": [{"role": "user", "content": "Hello, Shannon!"}]
  }'

Għall-avvenimenti ta' stream u t-tipi ta' żbalji, ara: Streaming Ġestjoni tal-iżbalji