រំលងទៅមាតិកា
SDK

SDK

SDK របស់ OpenAI ឬ Anthropic ណាក៏ដំណើរការភ្លាមៗដែរ។

Shannon និយាយទ្រង់ទ្រាយ wire របស់ OpenAI និង Anthropic ដូច្នេះអ្នកប្រើ SDK ផ្លូវការរបស់ទាំងពីរដូចដែលវាជា។ អ្នកផ្លាស់ប្តូរតម្លៃបីក្នុង client៖ base URL, API key និង model 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។
ម៉ូដែល model id ដែលបានបោះពុម្ពផ្សាយ ឧទាហរណ៍ shannon-3។ model id ដែលបានបោះពុម្ពផ្សាយ ឧទាហរណ៍ shannon-1.6-lite។
Endpoint ដែលវាទៅដល់ /v1/chat/completions, /v1/responses, /v1/models /v1/messages, /v1/messages/count_tokens
Environment variable OPENAI_API_KEY និង OPENAI_BASE_URL ដែល Python និង JavaScript SDK អាននៅពេលអ្នកមិនបញ្ជូនតម្លៃ។ ANTHROPIC_API_KEY និង ANTHROPIC_BASE_URL ដែល Python និង TypeScript SDK អាននៅពេលអ្នកមិនបញ្ជូនតម្លៃ។

base URL ទាំងពីរខុសគ្នាត្រង់ /v1៖ OpenAI SDK បន្ថែម /chat/completions ទៅ base URL របស់វា ហើយ Anthropic SDK បន្ថែម /v1/messages។ ឈ្មោះម៉ូដែលដែល Shannon មិនបោះពុម្ពផ្សាយត្រូវបានឆ្លើយដោយ 400 និង unknown model។ ម៉ូដែល និងតម្លៃ

key របស់អ្នកស្ថិតនៅលើទំព័រ Keys & usage។ Keys & usage

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

រាល់ field នៃ endpoint ទាំងពីរត្រូវបានពិពណ៌នានៅលើទំព័រផ្ទាល់ខ្លួនរបស់ពួកវា។ Chat Completions Responses API

Anthropic SDK

Anthropic SDK ផ្លូវការហៅ POST /v1/messages។ ពួកវាតម្រូវ max_tokens លើរាល់ការហៅ ដូច្នេះគំរូប្រើ shannon-1.6-lite ដែលអនុវត្តវា។ គំរូនីមួយៗបោះពុម្ព block អត្ថបទនៃចម្លើយ។

# 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។ ទ្រង់ទ្រាយ Anthropic

អ្វីដែល SDK អាចពឹងផ្អែកបាន

  • field របស់ request ដែល API មិនប្រើត្រូវបានទទួលយក។ field ដែល API ស្គាល់ ដែលផ្ញើដោយប្រភេទខុស ត្រូវបានឆ្លើយដោយ 422។
  • header version និង beta ដែល SDK បន្ថែម (anthropic-version, anthropic-beta, openai-beta) ត្រូវបានទទួលយក។ គ្មានមួយណាចាំបាច់ទេ។
  • model នៃចម្លើយគឺជា id ដែលបានបោះពុម្ពផ្សាយ ដូច្នេះអ្នកអាចផ្ញើវាត្រឡប់ទៅវិញដូចដែលវាជា។
  • លើ /v1/messages ចម្លើយអាចចាប់ផ្តើមដោយ block thinking។ សូមអាន block ប្រភេទ text ជំនួសឱ្យការយក block ដំបូង។
  • Streaming ដំណើរការតាមរយៈ stream helper របស់ SDK ផ្ទាល់។ Usage មកដល់នៅចុងរាល់ stream។
  • រាល់ចម្លើយមាន header x-request-id។ សូមផ្ញើ x-request-id ផ្ទាល់ខ្លួនរបស់អ្នក ហើយតម្លៃដូចគ្នាត្រឡប់មកវិញ។

SDK របស់សហគមន៍

client ដែលសរសេរសម្រាប់ OpenAI API ដោយអ្នកនិពន្ធផ្សេងទៀតដំណើរការតាមរបៀបដូចគ្នា៖ ផ្តល់ឱ្យ client នូវ base URL ជាមួយ /v1 key របស់អ្នក និង Shannon model id។ ទាំងនេះត្រូវបានថែទាំដោយអ្នកនិពន្ធរបស់ពួកវា មិនមែនដោយ Shannon ទេ។

ភាសា ដំឡើង 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

ដោយគ្មាន SDK

អ្នកមិនត្រូវការ SDK ទេ។ HTTP client ណាមួយដែលអាចផ្ញើ JSON ដំណើរការបាន៖

  • POST ជាមួយខ្លឹមសារ JSON និង header Content-Type: application/json។ បើគ្មានវា request ត្រូវបានឆ្លើយដោយ 415។
  • key របស់អ្នកក្នុង Authorization: Bearer <key> ឬក្នុង x-api-key: <key>។ ទាំងពីរដំណើរការលើគ្រប់ endpoint។
  • ខ្លឹមសាររហូតដល់ 32 MiB។
  • ជាមួយ "stream": true ចម្លើយគឺជា stream នៃ server-sent event (text/event-stream)។ សូមអានវាម្តងមួយបន្ទាត់ ហើយកុំ buffer វា។
  • error គឺជាខ្លឹមសារ JSON ដែលមាន error.type និង error.message ក្បែរ 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!"}]
  }'

សម្រាប់ event នៃ stream និងប្រភេទ error សូមមើល៖ ស្ទ្រីម ការគ្រប់គ្រងកំហុស