Tsallake zuwa abun ciki
SDKs

SDKs

Kowane OpenAI ko Anthropic SDK yana aiki kai tsaye.

Shannon yana magana da tsarin wire na OpenAI da na Anthropic, don haka kuna amfani da SDKs na hukuma na duka biyun yadda suke. Kuna canza ƙima uku a cikin client: base URL, API key da id na model. Sauran code ɗinku yana nan yadda yake.

Abin da za a saita

Saiti OpenAI SDKs Anthropic SDKs
Base URL https://api.shannon-ai.com/v1 https://api.shannon-ai.com
API key Maɓallinku na Shannon. SDK yana aika shi a matsayin Authorization: Bearer. Maɓallinku na Shannon. SDK yana aika shi a matsayin x-api-key.
Model Id na model da aka wallafa, misali shannon-3. Id na model da aka wallafa, misali shannon-1.6-lite.
Endpoints da yake kaiwa /v1/chat/completions, /v1/responses, /v1/models /v1/messages, /v1/messages/count_tokens
Environment variables OPENAI_API_KEY da OPENAI_BASE_URL, Python da JavaScript SDKs ne ke karanta su idan ba ku ba da ƙima ba. ANTHROPIC_API_KEY da ANTHROPIC_BASE_URL, Python da TypeScript SDKs ne ke karanta su idan ba ku ba da ƙima ba.

Base URLs biyun suna bambanta da /v1: OpenAI SDK yana ƙara /chat/completions a base URL ɗinsa, Anthropic SDK yana ƙara /v1/messages. Sunan model da Shannon bai wallafa ba ana amsa shi da 400 da unknown model. Models & farashi

Maɓallinku yana shafin Keys & usage. Maɓallai & amfani

OpenAI SDKs

OpenAI SDKs na hukuma suna kiran POST /v1/chat/completions da POST /v1/responses. Kowane samfurin yana aika saƙon mai amfani ɗaya kuma yana buga amsar.

# 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)
Harshe Shigarwa Zaɓin Base URL Tushe
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

Kowane field na endpoints biyun an bayyana shi a shafukansu na kansu. Chat Completions Responses API

Anthropic SDKs

Anthropic SDKs na hukuma suna kiran POST /v1/messages. Suna buƙatar max_tokens a kowane kira, don haka samfuran suna amfani da shannon-1.6-lite, wanda ke aiwatar da shi. Kowane samfurin yana buga text blocks na amsar.

# 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)
Harshe Shigarwa Zaɓin Base URL Tushe
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

Tsarin Messages da bambance-bambancensa suna shafin daidaito da Anthropic. Tsarin Anthropic

Abin da SDKs za su iya dogara da shi

  • Ana karɓar field na request da API ba ya amfani da shi. Field da API ya sani, idan aka aika shi da nau'in da bai dace ba, ana amsa shi da 422.
  • Ana karɓar headers na version da beta da SDKs ke ƙarawa (anthropic-version, anthropic-beta, openai-beta). Babu ɗayansu da ake buƙata.
  • model na amsa shi ne id da aka wallafa, don haka kuna iya mayar da shi yadda yake.
  • A /v1/messages amsa na iya farawa da block na thinking. Ku karanta blocks na nau'in text maimakon ɗaukar block na farko.
  • Streaming yana aiki ta stream helpers na SDK da kansa. Usage yana zuwa a ƙarshen kowane stream.
  • Kowace amsa tana ɗauke da header na x-request-id. Ku aika x-request-id ɗinku kuma ƙima ɗaya za ta dawo.

SDKs na al'umma

Clients da wasu marubuta suka rubuta don OpenAI API suna aiki iri ɗaya: ku ba client ɗin base URL mai /v1, maɓallinku da id na model na Shannon. Marubutansu ne ke kula da su, ba Shannon ba.

Harshe Shigarwa 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

Ba tare da SDK ba

Ba kwa buƙatar SDK. Duk HTTP client da zai iya aika JSON yana aiki:

  • POST da body na JSON da header Content-Type: application/json. Idan babu shi, ana amsa request da 415.
  • Maɓallinku a cikin Authorization: Bearer <key> ko a cikin x-api-key: <key>. Duka biyun suna aiki a kowane endpoint.
  • Body har zuwa 32 MiB.
  • Da "stream": true amsar stream ce ta server-sent events (text/event-stream). Ku karanta ta layi-layi kuma kada ku yi buffering ɗinta.
  • Kuskure body ne na JSON mai error.type da error.message, kusa da 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!"}]
  }'

Don events na stream da nau'in kurakurai, duba: Yawo Kuskuren Gudanarwa