Pāriet uz saturu
SDK

SDK

Jebkurš OpenAI vai Anthropic SDK darbojas uzreiz.

Shannon runā gan OpenAI, gan Anthropic pārraides formātos, tāpēc abu oficiālos SDK varat lietot tādus, kādi tie ir. Klientā mainiet trīs vērtības: bāzes URL, API atslēgu un modeļa id. Pārējais jūsu kods paliek tāds pats.

Ko iestatīt

Iestatījums OpenAI SDK Anthropic SDK
Bāzes URL https://api.shannon-ai.com/v1 https://api.shannon-ai.com
API atslēga Jūsu Shannon atslēga. SDK to sūta kā Authorization: Bearer. Jūsu Shannon atslēga. SDK to sūta kā x-api-key.
Modelis Publicēts modeļa id, piemēram, shannon-3. Publicēts modeļa id, piemēram, shannon-1.6-lite.
Galapunkti, ko tas sasniedz /v1/chat/completions, /v1/responses, /v1/models /v1/messages, /v1/messages/count_tokens
Vides mainīgie OPENAI_API_KEY un OPENAI_BASE_URL, ko Python un JavaScript SDK nolasa, ja nenododat vērtību. ANTHROPIC_API_KEY un ANTHROPIC_BASE_URL, ko Python un TypeScript SDK nolasa, ja nenododat vērtību.

Abi bāzes URL atšķiras ar /v1: OpenAI SDK savam bāzes URL pievieno /chat/completions, Anthropic SDK pievieno /v1/messages. Uz modeļa nosaukumu, ko Shannon nepublicē, atbild ar 400 un unknown model. Modeļi un cenas

Jūsu atslēga ir lapā Atslēgas un izmantošana. Atslēgas un izmantošana

OpenAI SDK

Oficiālie OpenAI SDK izsauc POST /v1/chat/completions un POST /v1/responses. Katrs piemērs nosūta vienu lietotāja ziņojumu un izdrukā atbildi.

# 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)
Valoda Instalēšana Bāzes URL opcija Avots
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

Abu galapunktu katrs lauks ir aprakstīts to lapās. Chat Completions Responses API

Anthropic SDK

Oficiālie Anthropic SDK izsauc POST /v1/messages. Tie katrā izsaukumā pieprasa max_tokens, tāpēc piemēros izmantots shannon-1.6-lite, kas to piemēro. Katrs piemērs izdrukā atbildes teksta blokus.

# 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)
Valoda Instalēšana Bāzes URL opcija Avots
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 formāts un tā atšķirības ir lapā Anthropic savietojamība. Anthropic

Uz ko SDK var paļauties

  • Pieprasījuma lauks, ko API neizmanto, tiek pieņemts. Uz lauku, ko API pazīst, nosūtītu ar nepareizu tipu, atbild ar 422.
  • Versiju un beta galvenes, ko SDK pievieno (anthropic-version, anthropic-beta, openai-beta), tiek pieņemtas. Neviena no tām nav obligāta.
  • Atbildes model ir publicētais id, tāpēc to varat sūtīt atpakaļ tādu, kāds tas ir.
  • Galapunktā /v1/messages atbilde var sākties ar bloku thinking. Lasiet blokus ar tipu text, nevis ņemiet pirmo bloku.
  • Straumēšana darbojas ar paša SDK straumes palīgiem. Izmantošanas dati ierodas katras straumes beigās.
  • Katra atbilde nes galveni x-request-id. Nosūtiet savu x-request-id, un tā pati vērtība atgriežas.

Kopienas SDK

Citu autoru rakstīti klienti OpenAI API darbojas tāpat: dodiet klientam bāzes URL ar /v1, savu atslēgu un Shannon modeļa id. Tos uztur to autori, nevis Shannon.

Valoda Instalēšana Klients
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

Bez SDK

SDK nav vajadzīgs. Der jebkurš HTTP klients, kas var sūtīt JSON:

  • POST ar JSON pamattekstu un galveni Content-Type: application/json. Bez tās uz pieprasījumu atbild ar 415.
  • Jūsu atslēga laukā Authorization: Bearer <key> vai x-api-key: <key>. Abi darbojas katrā galapunktā.
  • Pamatteksts līdz 32 MiB.
  • Ar "stream": true atbilde ir servera sūtīto notikumu straume (text/event-stream). Lasiet to pa rindām un nebuferējiet.
  • Kļūda ir JSON pamatteksts ar error.type un error.message, blakus HTTP statusam.
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!"}]
  }'

Straumes notikumus un kļūdu tipus skatiet šeit: Straumēšana Kļūdu apstrāde