ਸਮੱਗਰੀ ਤੇ ਜਾਓ
SDK

SDK

ਕੋਈ ਵੀ OpenAI ਜਾਂ Anthropic SDK ਬਿਨਾਂ ਕਿਸੇ ਬਦਲਾਅ ਦੇ ਕੰਮ ਕਰਦਾ ਹੈ।

Shannon OpenAI ਅਤੇ Anthropic ਦੋਵਾਂ ਦੇ wire formats ਬੋਲਦਾ ਹੈ, ਇਸ ਲਈ ਤੁਸੀਂ ਦੋਵਾਂ ਦੇ ਅਧਿਕਾਰਤ SDK ਜਿਵੇਂ ਹਨ ਉਵੇਂ ਵਰਤਦੇ ਹੋ। ਤੁਸੀਂ ਕਲਾਇੰਟ ਵਿੱਚ ਤਿੰਨ ਮੁੱਲ ਬਦਲਦੇ ਹੋ: base URL, API key ਅਤੇ ਮਾਡਲ id। ਤੁਹਾਡਾ ਬਾਕੀ ਕੋਡ ਉਹੀ ਰਹਿੰਦਾ ਹੈ।

ਕੀ ਸੈੱਟ ਕਰਨਾ ਹੈ

ਸੈਟਿੰਗ OpenAI SDK Anthropic SDK
Base URL https://api.shannon-ai.com/v1 https://api.shannon-ai.com
API key ਤੁਹਾਡੀ Shannon key। SDK ਇਸਨੂੰ Authorization: Bearer ਵਜੋਂ ਭੇਜਦਾ ਹੈ। ਤੁਹਾਡੀ Shannon key। 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 SDK ਪੜ੍ਹਦੇ ਹਨ ਜਦੋਂ ਤੁਸੀਂ ਕੋਈ ਮੁੱਲ ਨਹੀਂ ਦਿੰਦੇ। ANTHROPIC_API_KEY ਅਤੇ ANTHROPIC_BASE_URL, ਜੋ Python ਅਤੇ TypeScript SDK ਪੜ੍ਹਦੇ ਹਨ ਜਦੋਂ ਤੁਸੀਂ ਕੋਈ ਮੁੱਲ ਨਹੀਂ ਦਿੰਦੇ।

ਦੋਵੇਂ base URL /v1 ਨਾਲ ਵੱਖਰੇ ਹਨ: OpenAI SDK ਆਪਣੇ base URL ਵਿੱਚ /chat/completions ਜੋੜਦਾ ਹੈ, Anthropic SDK /v1/messages ਜੋੜਦਾ ਹੈ। ਜਿਸ ਮਾਡਲ ਨਾਮ ਨੂੰ Shannon ਪ੍ਰਕਾਸ਼ਿਤ ਨਹੀਂ ਕਰਦਾ, ਉਸਦਾ ਜਵਾਬ 400 ਅਤੇ unknown model ਨਾਲ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। ਮਾਡਲ ਅਤੇ ਕੀਮਤਾਂ

ਤੁਹਾਡੀ key Keys & usage ਪੰਨੇ ਉੱਤੇ ਹੈ। Keys ਅਤੇ ਵਰਤੋਂ

OpenAI SDK

ਅਧਿਕਾਰਤ OpenAI SDK POST /v1/chat/completions ਅਤੇ POST /v1/responses ਨੂੰ ਕਾਲ ਕਰਦੇ ਹਨ। ਹਰ ਨਮੂਨਾ ਇੱਕ user ਸੰਦੇਸ਼ ਭੇਜਦਾ ਹੈ ਅਤੇ ਜਵਾਬ ਪ੍ਰਿੰਟ ਕਰਦਾ ਹੈ।

# 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 SDK

ਅਧਿਕਾਰਤ Anthropic SDK POST /v1/messages ਨੂੰ ਕਾਲ ਕਰਦੇ ਹਨ। ਉਹ ਹਰ ਕਾਲ ਉੱਤੇ max_tokens ਮੰਗਦੇ ਹਨ, ਇਸ ਲਈ ਨਮੂਨੇ shannon-1.6-lite ਵਰਤਦੇ ਹਨ, ਜੋ ਇਸਨੂੰ ਲਾਗੂ ਕਰਦਾ ਹੈ। ਹਰ ਨਮੂਨਾ ਜਵਾਬ ਦੇ ਟੈਕਸਟ ਬਲਾਕ ਪ੍ਰਿੰਟ ਕਰਦਾ ਹੈ।

# 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 compatibility ਪੰਨੇ ਉੱਤੇ ਹਨ। Anthropic

SDK ਕਿਸ ਉੱਤੇ ਭਰੋਸਾ ਕਰ ਸਕਦੇ ਹਨ

  • ਜਿਹੜਾ ਰਿਕੁਐਸਟ ਫੀਲਡ API ਵਰਤਦਾ ਨਹੀਂ, ਉਹ ਸਵੀਕਾਰ ਕਰ ਲਿਆ ਜਾਂਦਾ ਹੈ। ਜਿਹੜਾ ਫੀਲਡ API ਜਾਣਦਾ ਹੈ ਪਰ ਗਲਤ ਕਿਸਮ ਨਾਲ ਭੇਜਿਆ ਜਾਵੇ, ਉਸਦਾ ਜਵਾਬ 422 ਨਾਲ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ।
  • SDK ਜੋ version ਅਤੇ beta headers ਜੋੜਦੇ ਹਨ (anthropic-version, anthropic-beta, openai-beta) ਉਹ ਸਵੀਕਾਰ ਕੀਤੇ ਜਾਂਦੇ ਹਨ। ਇਨ੍ਹਾਂ ਵਿੱਚੋਂ ਕੋਈ ਵੀ ਲਾਜ਼ਮੀ ਨਹੀਂ ਹੈ।
  • ਜਵਾਬ ਦਾ model ਪ੍ਰਕਾਸ਼ਿਤ id ਹੁੰਦਾ ਹੈ, ਇਸ ਲਈ ਤੁਸੀਂ ਇਸਨੂੰ ਜਿਵੇਂ ਹੈ ਉਵੇਂ ਵਾਪਸ ਭੇਜ ਸਕਦੇ ਹੋ।
  • /v1/messages ਉੱਤੇ ਜਵਾਬ thinking ਬਲਾਕ ਨਾਲ ਸ਼ੁਰੂ ਹੋ ਸਕਦਾ ਹੈ। ਪਹਿਲਾ ਬਲਾਕ ਲੈਣ ਦੀ ਥਾਂ text ਕਿਸਮ ਦੇ ਬਲਾਕ ਪੜ੍ਹੋ।
  • ਸਟ੍ਰੀਮਿੰਗ SDK ਦੇ ਆਪਣੇ stream helpers ਰਾਹੀਂ ਕੰਮ ਕਰਦੀ ਹੈ। ਵਰਤੋਂ ਦੀ ਜਾਣਕਾਰੀ ਹਰ ਸਟ੍ਰੀਮ ਦੇ ਅੰਤ ਵਿੱਚ ਆਉਂਦੀ ਹੈ।
  • ਹਰ ਜਵਾਬ ਵਿੱਚ x-request-id header ਹੁੰਦਾ ਹੈ। ਆਪਣਾ x-request-id ਭੇਜੋ ਅਤੇ ਉਹੀ ਮੁੱਲ ਵਾਪਸ ਆਉਂਦਾ ਹੈ।

ਕਮਿਊਨਿਟੀ SDK

ਹੋਰ ਲੇਖਕਾਂ ਵੱਲੋਂ OpenAI API ਲਈ ਲਿਖੇ ਕਲਾਇੰਟ ਉਸੇ ਤਰ੍ਹਾਂ ਕੰਮ ਕਰਦੇ ਹਨ: ਕਲਾਇੰਟ ਨੂੰ /v1 ਸਮੇਤ base URL, ਆਪਣੀ key ਅਤੇ ਇੱਕ 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 ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ। JSON ਭੇਜ ਸਕਣ ਵਾਲਾ ਕੋਈ ਵੀ HTTP ਕਲਾਇੰਟ ਕੰਮ ਕਰਦਾ ਹੈ:

  • JSON ਬਾਡੀ ਅਤੇ header Content-Type: application/json ਨਾਲ POST। ਇਸ ਤੋਂ ਬਿਨਾਂ ਰਿਕੁਐਸਟ ਦਾ ਜਵਾਬ 415 ਨਾਲ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ।
  • ਤੁਹਾਡੀ key Authorization: Bearer <key> ਵਿੱਚ ਜਾਂ x-api-key: <key> ਵਿੱਚ। ਦੋਵੇਂ ਹਰ endpoint ਉੱਤੇ ਕੰਮ ਕਰਦੇ ਹਨ।
  • 32 MiB ਤੱਕ ਦੀ ਬਾਡੀ।
  • "stream": true ਨਾਲ ਜਵਾਬ server-sent event ਸਟ੍ਰੀਮ (text/event-stream) ਹੁੰਦਾ ਹੈ। ਇਸਨੂੰ ਲਾਈਨ-ਦਰ-ਲਾਈਨ ਪੜ੍ਹੋ ਅਤੇ buffer ਨਾ ਕਰੋ।
  • ਗਲਤੀ HTTP ਸਟੇਟਸ ਦੇ ਨਾਲ error.type ਅਤੇ error.message ਵਾਲੀ JSON ਬਾਡੀ ਹੁੰਦੀ ਹੈ।
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!"}]
  }'

ਸਟ੍ਰੀਮ ਦੇ ਇਵੈਂਟਾਂ ਅਤੇ ਗਲਤੀ ਦੀਆਂ ਕਿਸਮਾਂ ਲਈ ਵੇਖੋ: ਸਟ੍ਰੀਮਿੰਗ ਗਲਤੀਆਂ