Eqa uye okuqukethwe
Ama-SDK

Ama-SDK

Noma iyiphi i-SDK ye-OpenAI noma ye-Anthropic isebenza ngokushesha.

I-Shannon ikhuluma izimo ze-OpenAI ne-Anthropic, ngakho usebenzisa ama-SDK asemthethweni ayo womabili injengoba injalo. Ushintsha amanani amathathu ku-client: i-base URL, i-API key ne-id ye-model. Yonke enye ikhodi yakho ihlala injalo.

Okufanele ukusethe

Isilungiselelo Ama-SDK e-OpenAI Ama-SDK e-Anthropic
I-base URL https://api.shannon-ai.com/v1 https://api.shannon-ai.com
I-API key I-Shannon key yakho. I-SDK iyithumela njenge-Authorization: Bearer. I-Shannon key yakho. I-SDK iyithumela njenge-x-api-key.
I-model I-id ye-model eshicilelwe, isibonelo shannon-3. I-id ye-model eshicilelwe, isibonelo shannon-1.6-lite.
Ama-endpoint ewafinyelelayo /v1/chat/completions, /v1/responses, /v1/models /v1/messages, /v1/messages/count_tokens
Ama-environment variable OPENAI_API_KEY ne-OPENAI_BASE_URL, kufundwa ama-SDK e-Python ne-JavaScript uma ungadluliseli nani. ANTHROPIC_API_KEY ne-ANTHROPIC_BASE_URL, kufundwa ama-SDK e-Python ne-TypeScript uma ungadluliseli nani.

Ama-base URL amabili ahlukene nge-/v1: i-SDK ye-OpenAI yengeza i-/chat/completions ku-base URL yayo, i-SDK ye-Anthropic yengeza i-/v1/messages. Igama le-model i-Shannon ayishicileli liphendulwa nge-400 ne-unknown model. Ama-model namanani

I-key yakho isekhasini le-Keys & usage. Ama-key nokusetshenziswa

Ama-SDK e-OpenAI

Ama-SDK asemthethweni e-OpenAI abiza i-POST /v1/chat/completions ne-POST /v1/responses. Isibonelo ngasinye sithumela umlayezo owodwa womsebenzisi bese siphrinta impendulo.

# 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)
Ulimi Ukufaka Inketho ye-base URL Umthombo
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

Wonke ama-field ala ma-endpoint amabili achazwe emakhasini awo. Chat Completions I-Responses API

Ama-SDK e-Anthropic

Ama-SDK asemthethweni e-Anthropic abiza i-POST /v1/messages. Adinga i-max_tokens esicelweni ngasinye, ngakho izibonelo zisebenzisa i-shannon-1.6-lite, ewusebenzisayo. Isibonelo ngasinye siphrinta amabhlokhi ombhalo wempendulo.

# 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)
Ulimi Ukufaka Inketho ye-base URL Umthombo
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

Isimo se-Messages nokuhluka kwaso kusekhasini le-Anthropic compatibility. Anthropic

Lokho ama-SDK angakwethemba

  • I-field yesicelo i-API engayisebenzisi iyamukelwa. I-field i-API eyaziyo, ethunyelwe ngohlobo olungalungile, iphendulwa nge-422.
  • Ama-header enguqulo ne-beta ama-SDK awengeza (anthropic-version, anthropic-beta, openai-beta) ayamukelwa. Akukho okudingekayo.
  • I-model yempendulo iyi-id eshicilelwe, ngakho ungayithumela ibuye injengoba injalo.
  • Ku-/v1/messages impendulo ingaqala ngebhlokhi ye-thinking. Funda amabhlokhi ohlobo text kunokuthatha ibhlokhi yokuqala.
  • I-streaming isebenza ngama-stream helper e-SDK uqobo. I-usage ifika ekugcineni kwazo zonke ama-stream.
  • Yonke impendulo iphethe i-header ethi x-request-id. Thumela i-x-request-id yakho futhi inani elifanayo liyabuya.

Ama-SDK omphakathi

Ama-client abhalelwe i-API ye-OpenAI ngabanye ababhali asebenza ngendlela efanayo: nikeza i-client i-base URL ene-/v1, i-key yakho ne-id ye-model ye-Shannon. Agcinwa ababhali bawo, hhayi yi-Shannon.

Ulimi Ukufaka I-client
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

Ngaphandle kwe-SDK

Akudingi i-SDK. Noma iyiphi i-HTTP client engathumela i-JSON iyasebenza:

  • POST ene-JSON body ne-header ethi Content-Type: application/json. Ngaphandle kwayo isicelo siphendulwa nge-415.
  • I-key yakho ku-Authorization: Bearer <key> noma ku-x-api-key: <key>. Zombili zisebenza kuwo wonke ama-endpoint.
  • Umzimba ofika ku-32 MiB.
  • Nge-"stream": true impendulo iyi-stream ye-server-sent event (text/event-stream). Yifunde umugqa ngomugqa futhi ungayigcini ku-buffer.
  • Iphutha ngumzimba we-JSON one-error.type ne-error.message, eduze kwesimo se-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!"}]
  }'

Ngemicimbi ye-stream nezinhlobo zamaphutha, bheka: Ukusakaza Ukuphathwa kwamaphutha