منځپانګې ته ټوپ ووهئ
SDKs

SDKs

هر OpenAI یا Anthropic SDK سمدستي کار کوي.

Shannon د OpenAI او Anthropic د تار بڼې خبرې کوي، نو تاسو د دواړو رسمي SDKs هماغسې کاروئ لکه چې دي. تاسو په کلاینټ کې درې ارزښتونه بدلوئ: base URL، API کیلي او د ماډل id. ستاسو د کوډ پاتې برخه یو شان پاتې کیږي.

څه وټاکو

تنظیم OpenAI SDKs Anthropic SDKs
Base URL https://api.shannon-ai.com/v1 https://api.shannon-ai.com
API کیلي ستاسو د Shannon کیلي. SDK یې د Authorization: Bearer په توګه لیږي. ستاسو د Shannon کیلي. SDK یې د x-api-key په توګه لیږي.
ماډل خپور شوی د ماډل id، د مثال په توګه shannon-3. خپور شوی د ماډل id، د مثال په توګه shannon-1.6-lite.
Endpoints چې ورته رسیږي /v1/chat/completions، /v1/responses، /v1/models /v1/messages، /v1/messages/count_tokens
Environment variables OPENAI_API_KEY او OPENAI_BASE_URL، چې د Python او JavaScript SDKs یې لولي کله چې هیڅ ارزښت نه ورکوئ. ANTHROPIC_API_KEY او ANTHROPIC_BASE_URL، چې د Python او TypeScript SDKs یې لولي کله چې هیڅ ارزښت نه ورکوئ.

دوه base URLs په /v1 توپیر لري: OpenAI SDK خپل base URL ته /chat/completions زیاتوي، Anthropic SDK /v1/messages زیاتوي. د ماډل نوم چې Shannon یې نه خپروي په 400 او unknown model ځواب کیږي. ماډلونه او بیې

ستاسو کیلي د Keys & usage په پاڼه کې ده. کیلي او کارونه

OpenAI SDKs

رسمي OpenAI SDKs POST /v1/chat/completions او POST /v1/responses غواړي. هره نمونه یو user message لیږي او ځواب چاپوي.

# 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)
ژبه نصب د base URL اختیار سرچینه
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

د دواړو endpoints هره ساحه په خپلو جلا پاڼو کې بیان شوې. Chat Completions Responses API

Anthropic SDKs

رسمي Anthropic SDKs POST /v1/messages غواړي. دوی په هر call کې max_tokens غواړي، نو نمونې shannon-1.6-lite کاروي، چې دا پلي کوي. هره نمونه د ځواب د متن blocks چاپوي.

# 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)
ژبه نصب د base URL اختیار سرچینه
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 بڼه او د هغې توپیرونه د Anthropic د مطابقت په پاڼه کې دي. انتروپيک بڼه

هغه څه چې SDKs پرې تکیه کولی شي

  • د غوښتنې ساحه چې API یې نه کاروي منل کیږي. هغه ساحه چې API یې پېژني، د غلط ډول سره لیږل شوې، په 422 ځواب کیږي.
  • د نسخې او beta headers چې SDKs یې زیاتوي (anthropic-version، anthropic-beta، openai-beta) منل کیږي. هیڅ یو یې اړین نه دی.
  • د ځواب model خپور شوی id دی، نو تاسو کولی شئ هماغسې یې بیرته ولیږئ.
  • په /v1/messages کې ځواب کولی شي په thinking block پیل شي. د لومړي block پر ځای د ډول text blocks ولولئ.
  • Streaming د SDK د خپلو stream helpers له لارې کار کوي. Usage د هر stream په پای کې رارسیږي.
  • هر ځواب x-request-id header لري. خپل x-request-id ولیږئ او همدا ارزښت بیرته راځي.

د ټولنې SDKs

هغه کلاینټونه چې د OpenAI API لپاره د نورو لیکوالو لخوا لیکل شوي په همدې ډول کار کوي: کلاینټ ته base URL د /v1 سره، ستاسو کیلي او د Shannon ماډل id ورکړئ. دا د خپلو لیکوالو لخوا ساتل کیږي، نه د Shannon لخوا.

ژبه نصب کلاینټ
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

پرته له SDK

تاسو SDK ته اړتیا نه لرئ. هر HTTP کلاینټ چې JSON لیږلی شي کار کوي:

  • POST د JSON بدنې او header Content-Type: application/json سره. پرته له هغه غوښتنه په 415 ځواب کیږي.
  • ستاسو کیلي په Authorization: Bearer <key> یا په x-api-key: <key> کې. دواړه په هر endpoint کار کوي.
  • بدنه تر 32 MiB پورې.
  • د "stream": true سره ځواب د server-sent event stream (text/event-stream) دی. کرښه په کرښه یې ولولئ او بفر یې نه کړئ.
  • تېروتنه د JSON بدنه ده چې error.type او error.message لري، د 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!"}]
  }'

د stream رخدادونو او د تېروتنو ډولونو لپاره، وګورئ: جریان د تېروتنې اداره کول