ឧបករណ៍សរសេរកូដ CLI
ថ្មីប្រើ Shannon ជាម៉ូដែលនៅពីក្រោយ Claude Code, Codex CLI និង agent CLI ផ្សេងទៀត។
ឧបករណ៍សរសេរកូដត្រូវការការកំណត់បីដើម្បីដំណើរការជាមួយ Shannon៖ base URL របស់ API, API key របស់អ្នក និង Shannon model id។ ទំព័រនេះផ្តល់ការកំណត់ពិតប្រាកដសម្រាប់ Claude Code និង Codex CLI ពន្យល់ពីរបៀបដែលម៉ូដែល coding shannon-coder-1 ត្រូវបានរាប់ ហើយរាយកំហុសដែល tool ទាំងនេះជួប។
endpoint ណាដែល tool នីមួយៗប្រើ
| Tool | Endpoint | Base URL ដែលត្រូវកំណត់ | កំណត់ចំណាំ |
|---|---|---|---|
| Claude Code | POST /v1/messagesPOST /v1/messages/count_tokens | https://api.shannon-ai.com | tool បន្ថែម /v1/messages ទៅ base URL ដោយខ្លួនឯង។ |
| Codex CLI | POST /v1/responses | https://api.shannon-ai.com/v1 | tool បន្ថែម /responses ទៅ base URL។ |
| agent tool ផ្សេងទៀតដែលនិយាយទ្រង់ទ្រាយ chat របស់ OpenAI | POST /v1/chat/completions | https://api.shannon-ai.com/v1 | កំណត់ base URL, key និង Shannon model id ក្នុងការកំណត់របស់ tool ផ្ទាល់។ |
endpoint ទាំងបីទទួល API key ដូចគ្នា ជា Authorization: Bearer ឬជា x-api-key។ header anthropic-version, anthropic-beta និង openai-beta ដែល tool ទាំងនេះផ្ញើ ត្រូវបានទទួលយក។
ជ្រើសរើស Shannon model
រាល់ request ត្រូវតែដាក់ឈ្មោះ model id ដែល Shannon ផ្សព្វផ្សាយ។ ឧបករណ៍សរសេរកូដផ្ញើឈ្មោះម៉ូដែលលំនាំដើមរបស់ខ្លួន លុះត្រាតែអ្នកប្រាប់ឱ្យធ្វើផ្សេង ហើយឈ្មោះដែល Shannon មិនផ្សព្វផ្សាយត្រូវបានឆ្លើយដោយ 400 និងសារ unknown model: <name>។ គ្មានឈ្មោះផ្សេងត្រូវបានផ្គូផ្គងទៅម៉ូដែល Shannon ទេ ដូច្នេះសូមកំណត់ម៉ូដែលក្នុង tool មុន request ដំបូង។
GET /v1/models រាយគ្រប់ id ជាមួយ context window របស់វា។ វាមិនត្រូវការ key ទេ។ ម៉ូដែល និងតម្លៃ
| ម៉ូដែល | រាប់ជា | អ្វីដែលវាផ្តល់ |
|---|---|---|
shannon-coder-1 | មួយការហៅក្នុងមួយ request លើ /v1/messages និង /v1/chat/completions។ Token លើ /v1/responses។ | ម៉ូដែលសម្រាប់សរសេរកូដ។ ទទួលអត្ថបទ មានការហៅ tool និងមាន context window ទំហំ 131,072 token។ |
shannon-1.6-liteshannon-1.6-pro | Token ពីសមតុល្យរបស់អ្នក។ | ម៉ូដែលទូទៅដែលមានការហៅ tool។ shannon-1.6-lite សមស្របនឹង request ផ្ទៃខាងក្រោយខ្លីៗដែល tool ធ្វើ។ |
| ម៉ូដែល open-weight ដែលបង្ហោះ | Token ពីសមតុល្យរបស់អ្នក ដោយ input ក្នុង cache គិត 25% នៃតម្លៃ input។ | ការហៅ tool, prompt caching សម្រាប់ session វែង និងការរាប់ត្រឹមត្រូវពី /v1/messages/count_tokens។ |
ឧបករណ៍សរសេរកូដដឹកនាំម៉ូដែលដោយ system prompt វែង។ system prompt ត្រូវបានអនុវត្តដោយ shannon-coder-1, shannon-1.6-lite, shannon-1.6-pro, shannon-2-lite, shannon-2-pro និងម៉ូដែល open-weight ដែលបង្ហោះ ដូច្នេះសូមជ្រើសមួយក្នុងចំណោមទាំងនេះសម្រាប់ឧបករណ៍សរសេរកូដ។
Claude Code
Claude Code អានការតភ្ជាប់របស់វាពី environment variable។ កំណត់ពួកវានៅក្នុង shell ដែលចាប់ផ្តើមវា ឬក្នុង block env នៃ ~/.claude/settings.json ដើម្បីរក្សាទុកសម្រាប់គ្រប់ session។
# Install Claude Code
npm install -g @anthropic-ai/claude-code
# Where to send requests, and your Shannon API key
export ANTHROPIC_BASE_URL=https://api.shannon-ai.com
export ANTHROPIC_AUTH_TOKEN=YOUR_API_KEY
# Shannon model ids: the session model, and the model behind each built-in name
export ANTHROPIC_MODEL=shannon-coder-1
export ANTHROPIC_DEFAULT_OPUS_MODEL=shannon-coder-1
export ANTHROPIC_DEFAULT_SONNET_MODEL=shannon-coder-1
export ANTHROPIC_DEFAULT_HAIKU_MODEL=shannon-1.6-lite
# The context window of the session model
export CLAUDE_CODE_MAX_CONTEXT_TOKENS=131072
claude {
"env": {
"ANTHROPIC_BASE_URL": "https://api.shannon-ai.com",
"ANTHROPIC_AUTH_TOKEN": "YOUR_API_KEY",
"ANTHROPIC_MODEL": "shannon-coder-1",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "shannon-coder-1",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "shannon-coder-1",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "shannon-1.6-lite",
"CLAUDE_CODE_MAX_CONTEXT_TOKENS": "131072"
}
} | Variable | ការពិពណ៌នា |
|---|---|
ANTHROPIC_BASE_URL | កន្លែងដែល Claude Code ផ្ញើ request របស់វា។ ប្រើអាសយដ្ឋានដោយគ្មាន /v1។ |
ANTHROPIC_AUTH_TOKEN | Shannon API key របស់អ្នក ផ្ញើជា Authorization: Bearer។ ANTHROPIC_API_KEY ក៏ដំណើរការដែរ៖ វាផ្ញើ key ជា x-api-key ហើយ Claude Code សួរម្តងដើម្បីអនុម័តវា។ |
ANTHROPIC_MODEL | ម៉ូដែលនៃ session។ claude --model <id> និង /model <id> កំណត់រឿងដូចគ្នា។ |
ANTHROPIC_DEFAULT_HAIKU_MODEL | ម៉ូដែលសម្រាប់ request ផ្ទៃខាងក្រោយ ដូចជាចំណងជើង session និងសម្រាប់អ្វីដែលសុំ haiku។ |
ANTHROPIC_DEFAULT_SONNET_MODEL | ម៉ូដែលដែលប្រើនៅពេល subagent ឬពាក្យបញ្ជាសុំ sonnet។ |
ANTHROPIC_DEFAULT_OPUS_MODEL | ម៉ូដែលដែលប្រើនៅពេល subagent ឬពាក្យបញ្ជាសុំ opus។ |
CLAUDE_CODE_MAX_CONTEXT_TOKENS | context window ដែល Claude Code សន្មត់សម្រាប់ម៉ូដែល។ ប្រើ context_window ដែល GET /v1/models រាយការណ៍សម្រាប់ id ដែលអ្នកបានជ្រើស។ |
- កំណត់ variable
ANTHROPIC_DEFAULT_…_MODELទាំងបី។ Subagent និងពាក្យបញ្ជាមួយចំនួនសុំម៉ូដែលតាមឈ្មោះដែលមានស្រាប់ ហើយឈ្មោះនីមួយៗត្រូវបានបកស្រាយទៅជា Shannon id។ - គំរូនេះចង្អុលបង្ហាញ request ផ្ទៃខាងក្រោយទៅ
shannon-1.6-liteដែលត្រូវបានរាប់ជា token។ ចំណងជើង session និង request ស្រដៀងគ្នាមិនប្រើការហៅ Coder ទេ។ - Claude Code សួរ
POST /v1/messages/count_tokensអំពីទំហំ context។ endpoint រាប់សម្រាប់ម៉ូដែល open-weight ដែលបង្ហោះ។ ជាមួយ Shannon id វាឆ្លើយ400; Claude Code ចាត់ទុកការរាប់ token ជាជម្រើស ហើយប៉ាន់ស្មានទំហំដោយខ្លួនឯង។ ការរាប់ token
ដើម្បីពិនិត្យអាសយដ្ឋាន key និង model id មុនចាប់ផ្តើម tool សូមផ្ញើ request មួយដោយដៃ៖
curl https://api.shannon-ai.com/v1/messages \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "shannon-1.6-lite",
"max_tokens": 16,
"messages": [{"role": "user", "content": "Say OK."}]
}' Codex CLI
Codex CLI និយាយជាមួយ Responses API។ ពិពណ៌នា Shannon ជា model provider ក្នុង ~/.codex/config.toml ជ្រើស Shannon model id នៅទីនោះ ហើយដាក់ API key របស់អ្នកក្នុង environment variable ដែល provider ដាក់ឈ្មោះ។
model = "shannon-coder-1"
model_provider = "shannon"
model_context_window = 131072
[model_providers.shannon]
name = "Shannon"
base_url = "https://api.shannon-ai.com/v1"
env_key = "SHANNON_API_KEY"
wire_api = "responses" # Install Codex CLI
npm install -g @openai/codex
# Your Shannon API key, under the name given as env_key
export SHANNON_API_KEY=YOUR_API_KEY
# Start it; --model selects another Shannon id for one run
codex
codex --model shannon-1.6-pro | Key | ការពិពណ៌នា |
|---|---|
model | Shannon model id។ codex --model <id> កំណត់វាសម្រាប់ការដំណើរការមួយដង។ |
model_provider | ឈ្មោះរបស់ block provider ដែលត្រូវប្រើ នៅទីនេះគឺ shannon។ |
base_url | អាសយដ្ឋាន API ជាមួយ /v1។ |
env_key | ឈ្មោះរបស់ environment variable ដែលមាន Shannon API key របស់អ្នក។ |
wire_api | responses៖ Codex និយាយជាមួយ POST /v1/responses។ |
model_context_window | context window របស់ម៉ូដែល ដើម្បីឱ្យ Codex បង្រួម session វែងទាន់ពេល។ ប្រើ context_window ដែល GET /v1/models រាយការណ៍។ |
/v1/responsesមិនរក្សាការសន្ទនាលើ server ទេ៖ រាល់ request មានការសន្ទនាក្នុងinput។previous_response_idត្រូវបានទទួលយកដើម្បីភាពត្រូវគ្នា។- Function tool (
type: "function") ត្រូវបានផ្តល់ជូនម៉ូដែលលើ/v1/responses។ - លើ
/v1/responsesshannon-coder-1ត្រូវបានរាប់ជា token ពីសមតុល្យរបស់អ្នក មិនមែនជាការហៅ Coder ទេ។
ការពិនិត្យដូចគ្នាសម្រាប់ endpoint Responses៖
curl https://api.shannon-ai.com/v1/responses \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "shannon-1.6-lite",
"input": "Say OK."
}' ម៉ូដែល coding និងរបៀបដែលវាត្រូវបានរាប់
shannon-coder-1 គឺជាម៉ូដែល Shannon សម្រាប់ coding agent។ GET /v1/models រាយការណ៍វាដោយមាន context window 131,072 token, ការហៅ tool, reasoning និង text input។ វាត្រូវបានរាប់តាមវិធីមួយក្នុងចំណោមពីរ អាស្រ័យលើ endpoint ដែល tool ប្រើ។
| Endpoint | Request មួយតម្លៃ | យកពី |
|---|---|---|
/v1/messages | 1 ការហៅក្នុងមួយ request | កូតាការហៅ Coder នៃគម្រោងរបស់អ្នក។ គ្មាន token ត្រូវបានយកពីសមតុល្យរបស់អ្នកទេ។ |
/v1/chat/completions | 1 ការហៅក្នុងមួយ request | កូតាការហៅ Coder នៃគម្រោងរបស់អ្នក។ គ្មាន token ត្រូវបានយកពីសមតុល្យរបស់អ្នកទេ។ |
/v1/responses | Token ក្នុងតម្លៃ $8.00 ក្នុង 1M | សមតុល្យរបស់អ្នក ដូចម៉ូដែលផ្សេងទៀត។ កូតាការហៅមិនត្រូវបានប្រើទេ។ |
ការហៅមួយគឺ request មួយ ទោះទំហំប៉ុនណា។ វាត្រូវបានរាប់នៅពេល request ត្រូវបានទទួលយក មុនម៉ូដែលឆ្លើយ។ session របស់ agent ផ្ញើ request មួយសម្រាប់រាល់ជំហានដែលវាធ្វើ ដូច្នេះការងារវែងប្រើការហៅច្រើន។ កូតាអាស្រ័យលើគម្រោងរបស់អ្នក ហើយចាប់ផ្តើមឡើងវិញរៀងរាល់ 4 ម៉ោង នៅម៉ោង 00:00, 04:00, 08:00, 12:00, 16:00 និង 20:00 UTC។
| គម្រោង | ការហៅក្នុងមួយចន្លោះ 4 ម៉ោង |
|---|---|
| Free | 3 |
| Plus | 20 |
| Standard | 40 |
| Pro | 60 |
ទំព័រគម្រោងបង្ហាញលេខបច្ចុប្បន្ន។ គម្រោង
នៅពេលការហៅក្នុងចន្លោះពេលមួយត្រូវបានប្រើអស់ request ត្រូវបានឆ្លើយដោយ 429។ លើ /v1/messages កំហុសដូចគ្នាមកក្នុងរូបរាង Anthropic។
{
"error": {
"type": "rate_limit_error",
"message": "Shannon Coder call quota reached. Upgrade your plan at shannon-ai.com/plan"
}
} {
"type": "error",
"error": {
"type": "rate_limit_error",
"message": "Shannon Coder call quota reached. Upgrade your plan at shannon-ai.com/plan"
}
} context លើស
នៅពេលការសន្ទនាធំជាង context window របស់ម៉ូដែល /v1/chat/completions និង /v1/messages ឆ្លើយដោយ 400 ប្រភេទ invalid_request_error កូដ context_length_exceeded និងសារដែលចាប់ផ្តើមដោយ prompt is too long។ ឧបករណ៍សរសេរកូដអានកំហុសនេះដើម្បីបង្រួម session ហើយផ្ញើ request ម្តងទៀត។ វាត្រូវបានបង្កើតដោយ shannon-coder-1, shannon-1.6-lite និង shannon-1.6-pro។
{
"error": {
"type": "invalid_request_error",
"code": "context_length_exceeded",
"message": "prompt is too long: 140211 tokens > 131072 maximum",
"param": null
}
} {
"type": "error",
"error": {
"type": "invalid_request_error",
"code": "context_length_exceeded",
"message": "prompt is too long: 140211 tokens > 131072 maximum",
"param": null
}
} សារគឺ prompt is too long: <sent> tokens > <limit> maximum។ នៅពេលមិនស្គាល់លេខទាំងពីរ វាគឺ prompt is too long. Please compact the conversation and try again.
លើ stream ស្ថានភាពគឺ 200 រួចហើយ ដូច្នេះកំហុសមកដល់ជា event ហើយ stream បិទតាមរបៀបធម្មតា៖
data: {"error":{"message":"prompt is too long: 140211 tokens > 131072 maximum","type":"invalid_request_error","code":"context_length_exceeded","param":null}}
data: {"id":"chatcmpl-…","object":"chat.completion.chunk","created":…,"model":"shannon-coder-1","choices":[{"index":0,"delta":{},"finish_reason":"stop"}],"usage":{…}}
data: [DONE] event: error
data: {"type":"error","error":{"type":"invalid_request_error","message":"prompt is too long: 140211 tokens > 131072 maximum"}}
event: message_delta
data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{…}}
event: message_stop
data: {"type":"message_stop"} អ្វីដែល agent loop អាចពឹងផ្អែកបាន
| ប្រធានបទ | ឥរិយាបថ |
|---|---|
| Schema របស់ tool | និយមន័យ tool ត្រូវបានយកតាមដែល tool ផ្ញើ។ លើ shannon-coder-1 និង shannon-1.6-* keyword របស់ JSON Schema ដែលម៉ូដែលមិនប្រើ ដូចជា $schema, $ref, additionalProperties, default និង title ត្រូវបានទុកចោលពីអ្វីដែលម៉ូដែលអាន ហើយ oneOf ត្រូវបានអានជា anyOf។ គ្មាន request ត្រូវបានបដិសេធដោយសារពួកវាទេ។ |
| អាគុយម៉ង់នៃការហៅ tool | ក្នុង stream អាគុយម៉ង់នៃការហៅ tool មកដល់ពេញលេញក្នុង delta តែមួយ៖ tool_calls[].function.arguments, input_json_delta.partial_json ឬ response.function_call_arguments.delta។ |
| ចុងបញ្ចប់នៃវគ្គ tool | finish_reason: "tool_calls" សម្រាប់ Chat Completions និង stop_reason: "tool_use" សម្រាប់ Messages។ |
| Keep-alive | ខណៈម៉ូដែលធ្វើការ /v1/messages ផ្ញើ event: ping ហើយ /v1/chat/completions ផ្ញើបន្ទាត់មតិយោបល់ : ping រៀងរាល់ 15 វិនាទី។ |
| ការបញ្ឈប់ request | ការបិទការតភ្ជាប់បញ្ឈប់ stream។ វគ្គខ្លួនឯងដំណើរការរហូតដល់ចប់ ហើយត្រូវបានរាប់។ |
ការដោះស្រាយបញ្ហា
| រោគសញ្ញា | មូលហេតុ | ដំណោះស្រាយ |
|---|---|---|
400 ជាមួយ unknown model: claude-… ឬ unknown model: gpt-… | tool បានផ្ញើឈ្មោះម៉ូដែលលំនាំដើមរបស់ខ្លួន។ មានតែ Shannon id ដែលបានផ្សព្វផ្សាយប៉ុណ្ណោះដែលត្រូវបានបម្រើ ហើយគ្មានឈ្មោះផ្សេងត្រូវបានផ្គូផ្គងទៅវាទេ។ | ជ្រើស Shannon id៖ ANTHROPIC_MODEL និង variable ANTHROPIC_DEFAULT_…_MODEL ទាំងបីក្នុង Claude Code, model ក្នុងការកំណត់ Codex។ |
400 ជាមួយ unknown model: ហើយគ្មានឈ្មោះ ពី Codex CLI | request មិនបានដាក់ឈ្មោះម៉ូដែលទេ។ /v1/responses ត្រូវការមួយ។ | កំណត់ model ក្នុង ~/.codex/config.toml ឬបញ្ចូល --model។ |
401 ជាមួយ Missing authentication ឬ Invalid API key | key មិនបានដល់ API ឬវាមិនមែនជា key បច្ចុប្បន្នទេ។ Shannon key ចាប់ផ្តើមដោយ sk-។ | ពិនិត្យថា variable ត្រូវបានកំណត់នៅក្នុង shell ដែលចាប់ផ្តើម tool។ ចម្លង key ម្តងទៀតពី Keys & usage។ |
404 លើរាល់ request | base URL មាន /v1 លើស ឬខ្វះមួយ សម្រាប់ tool។ | Claude Code៖ អាសយដ្ឋានដោយគ្មាន /v1។ Codex CLI៖ អាសយដ្ឋានជាមួយ /v1។ |
429 ជាមួយ Shannon Coder call quota reached | ការហៅ Coder នៃចន្លោះពេល 4 ម៉ោងបច្ចុប្បន្នត្រូវបានប្រើអស់។ | រង់ចាំចន្លោះពេលបន្ទាប់ ប្តូរទៅគម្រោងដែលមានការហៅច្រើនជាង ឬជ្រើសម៉ូដែលដែលរាប់ជា token។ |
429 ជាមួយ Quota exceeded | សមតុល្យរបស់អ្នកមិនគ្រប់គ្រាន់សម្រាប់ request ទេ។ | បន្ថែមឥណទាន ឬរង់ចាំកូតាប្រចាំថ្ងៃនៃគម្រោងរបស់អ្នកនៅម៉ោង 00:00 UTC។ |
400 ជាមួយ prompt is too long | ការសន្ទនាធំជាង context window របស់ម៉ូដែល។ | បង្រួម session (/compact ក្នុង tool ទាំងពីរ)។ ប្រាប់ tool អំពី context window របស់ម៉ូដែល ដើម្បីឱ្យវាបង្រួមឱ្យលឿនជាងមុន។ |
| Claude Code បង្ហាញលេខ context ប្រហែល | /v1/messages/count_tokens រាប់សម្រាប់ម៉ូដែល open-weight ដែលបង្ហោះ។ ជាមួយ Shannon id វាឆ្លើយ 400 ហើយ Claude Code ប៉ាន់ស្មានទំហំដោយខ្លួនឯង។ | គ្មានអ្វីត្រូវជួសជុលទេ។ ជ្រើសម៉ូដែល open-weight ដែលបង្ហោះ ប្រសិនបើអ្នកចង់បានការរាប់ត្រឹមត្រូវ។ |
| រូបថតអេក្រង់ដែលបិទភ្ជាប់មិនត្រូវបានគិតបញ្ចូល | shannon-coder-1 ទទួល text input។ | ជ្រើសម៉ូដែលដែលទទួលរូបភាពសម្រាប់ session នោះ។ |
key និងសមតុល្យរបស់អ្នកស្ថិតនៅទំព័រ Keys & usage។ Keys & usage