Gafee gaa n'ọdịnaya
SDKs

SDKs

SDK OpenAI ma ọ bụ Anthropic ọ bụla na-arụ ọrụ ozugbo.

Shannon na-asụ OpenAI na Anthropic wire formats, ya mere ị na-eji SDKs gọọmentị nke abụọ dị ka ha dị. Ị na-agbanwe uru atọ na client: base URL, API key na model id. Koodu gị fọdụrụnụ na-anọgide otu.

Ihe ị ga-atọ

Setting OpenAI SDKs Anthropic SDKs
Base URL https://api.shannon-ai.com/v1 https://api.shannon-ai.com
API key Shannon key gị. SDK na-ezipu ya dị ka Authorization: Bearer. Shannon key gị. SDK na-ezipu ya dị ka x-api-key.
Model Model id e bipụtara, dịka shannon-3. Model id e bipụtara, dịka shannon-1.6-lite.
Endpoints ọ na-eru /v1/chat/completions, /v1/responses, /v1/models /v1/messages, /v1/messages/count_tokens
Environment variables OPENAI_API_KEY na OPENAI_BASE_URL, nke Python na JavaScript SDKs na-agụ mgbe ị nyeghị uru. ANTHROPIC_API_KEY na ANTHROPIC_BASE_URL, nke Python na TypeScript SDKs na-agụ mgbe ị nyeghị uru.

Base URLs abụọ ahụ dị iche site na /v1: OpenAI SDK na-agbakwunye /chat/completions na base URL ya, Anthropic SDK na-agbakwunye /v1/messages. A na-aza aha model Shannon na-ebipụtaghị na 400 na unknown model. Models & ọnụahịa

Key gị dị na peeji Keys & usage. Keys & usage

OpenAI SDKs

OpenAI SDKs gọọmentị na-akpọ POST /v1/chat/completions na POST /v1/responses. Sample ọ bụla na-ezipu otu user message ma bipụta azịza.

# 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)
Asụsụ Wụnye Base URL option Isi mmalite
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

A kọwara field ọ bụla nke endpoints abụọ ahụ na peeji nke ha. Chat Completions Responses API

Anthropic SDKs

Anthropic SDKs gọọmentị na-akpọ POST /v1/messages. Ha chọrọ max_tokens na call ọ bụla, ya mere samples na-eji shannon-1.6-lite, nke na-etinye ya. Sample ọ bụla na-ebipụta text blocks nke azịza.

# 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)
Asụsụ Wụnye Base URL option Isi mmalite
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

Messages format na ndịiche ya dị na peeji Anthropic compatibility. Anthropic

Ihe SDKs nwere ike ịtụkwasị obi na ya

  • A na-anabata request field API anaghị eji. Field API maara, e zipụrụ na type na-ezighi ezi, na-enweta azịza 422.
  • A na-anabata version na beta headers SDKs na-agbakwunye (anthropic-version, anthropic-beta, openai-beta). Enweghị nke ọ bụla achọrọ.
  • model nke azịza bụ id e bipụtara, ya mere ị nwere ike izighachi ya dị ka ọ dị.
  • Na /v1/messages azịza nwere ike ịmalite na thinking block. Gụọ blocks nke ụdị text kama ịnara block mbụ.
  • Streaming na-arụ ọrụ site na stream helpers nke SDK n'onwe ya. Usage na-abịa na njedebe nke stream ọ bụla.
  • Azịza ọ bụla na-ebu header x-request-id. Zipụ x-request-id nke gị, otu uru ahụ na-alọghachi.

Community SDKs

Clients e dere maka OpenAI API site n'aka ndị ode ndị ọzọ na-arụ ọrụ n'otu ụzọ: nye client base URL nwere /v1, key gị na Shannon model id. Ndị ode ha na-elekọta ha, ọ bụghị Shannon.

Asụsụ Wụnye 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

Na-enweghị SDK

Ịchọghị SDK. HTTP client ọ bụla nwere ike izipu JSON na-arụ ọrụ:

  • POST nwere JSON body na header Content-Type: application/json. Na-enweghị ya a na-aza request na 415.
  • Key gị na Authorization: Bearer <key> ma ọ bụ na x-api-key: <key>. Ha abụọ na-arụ ọrụ na endpoint ọ bụla.
  • Body ruo 32 MiB.
  • Site na "stream": true azịza bụ server-sent event stream (text/event-stream). Gụọ ya ahịrị site na ahịrị ma ejila buffer ya.
  • Njehie bụ JSON body nwere error.type na error.message, n'akụkụ HTTP status.
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!"}]
  }'

Maka events nke stream na error types, lee: Nzipu ozugbo Njikwa njehie