გადასვლა შინაარსზე
CLI ინსტრუმენტები კოდირებისთვის

CLI ინსტრუმენტები კოდირებისთვის

ახალი

გამოიყენეთ Shannon როგორც მოდელი Claude Code-ში, Codex CLI-ში და სხვა აგენტურ CLI-ებში.

კოდირების ინსტრუმენტს Shannon-თან სამუშაოდ სამი პარამეტრი სჭირდება: API-ს base URL, თქვენი API გასაღები და Shannon-ის მოდელის id. ეს გვერდი Claude Code-სა და Codex CLI-სთვის ზუსტ პარამეტრებს გვაძლევს, განმარტავს, როგორ ითვლება კოდირების მოდელი shannon-coder-1, და ჩამოთვლის შეცდომებს, რომლებსაც ეს ინსტრუმენტები აწყდებიან.

რომელ endpoint-ს იყენებს თითოეული ინსტრუმენტი

ინსტრუმენტი Endpoint დასაყენებელი base URL შენიშვნა
Claude Code POST /v1/messages
POST /v1/messages/count_tokens
https://api.shannon-ai.com ინსტრუმენტი /v1/messages-ს base URL-ს თავად ამატებს.
Codex CLI POST /v1/responses https://api.shannon-ai.com/v1 ინსტრუმენტი base URL-ს /responses-ს ამატებს.
სხვა აგენტური ინსტრუმენტები, რომლებიც OpenAI-ის ჩატის ფორმატს იყენებენ POST /v1/chat/completions https://api.shannon-ai.com/v1 დააყენეთ base URL, გასაღები და Shannon-ის მოდელის id ინსტრუმენტის საკუთარ პარამეტრებში.

სამივე endpoint ერთსა და იმავე API გასაღებს იღებს, როგორც Authorization: Bearer ან როგორც x-api-key. Header-ები anthropic-version, anthropic-beta და openai-beta, რომლებსაც ეს ინსტრუმენტები აგზავნიან, მიიღება.

აირჩიეთ Shannon-ის მოდელი

ყოველმა მოთხოვნამ უნდა დაასახელოს მოდელის id, რომელსაც Shannon აქვეყნებს. კოდირების ინსტრუმენტი საკუთარი ნაგულისხმევი მოდელის სახელს აგზავნის, თუ სხვაგვარად არ უთხარით, და სახელს, რომელსაც Shannon არ აქვეყნებს, პასუხობს 400 და შეტყობინება unknown model: <name>. სხვა სახელი Shannon-ის მოდელზე არ გადაიყვანება, ამიტომ მოდელი ინსტრუმენტში პირველ მოთხოვნამდე დააყენეთ.

GET /v1/models ყველა id-ს კონტექსტის ფანჯრით ჩამოთვლის. გასაღები არ სჭირდება. მოდელები და ფასები

მოდელი ითვლება როგორც რას იძლევა
shannon-coder-1 ერთი გამოძახება მოთხოვნაზე /v1/messages-სა და /v1/chat/completions-ზე. ტოკენები /v1/responses-ზე. კოდირების მოდელი. ტექსტის შეტანა, ინსტრუმენტების გამოძახებები, 131,072-ტოკენიანი კონტექსტის ფანჯარა.
shannon-1.6-lite
shannon-1.6-pro
ტოკენები თქვენი ბალანსიდან. საერთო დანიშნულების მოდელები ინსტრუმენტების გამოძახებებით. shannon-1.6-lite ერგება მოკლე ფონურ მოთხოვნებს, რომლებსაც ინსტრუმენტი აგზავნის.
Hosted open-weight მოდელები ტოკენები თქვენი ბალანსიდან, ქეშირებული შემავალი შემავალი ტოკენების ფასის 25%-ად. ინსტრუმენტების გამოძახებები, პრომპტის ქეშირება გრძელი სესიებისთვის და ზუსტი დათვლა /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 და hosted open-weight მოდელები, ამიტომ კოდირების ინსტრუმენტისთვის ერთ-ერთი მათგანი აირჩიეთ.

Claude Code

Claude Code კავშირს გარემოს ცვლადებიდან კითხულობს. დააყენეთ ისინი shell-ში, რომელიც მას უშვებს, ან ~/.claude/settings.json-ის env ბლოკში, რომ ყველა სესიისთვის შენარჩუნდეს.

# 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
ცვლადი აღწერა
ANTHROPIC_BASE_URL სად აგზავნის Claude Code თავის მოთხოვნებს. გამოიყენეთ მისამართი /v1-ის გარეშე.
ANTHROPIC_AUTH_TOKEN თქვენი Shannon API გასაღები, გაგზავნილი როგორც Authorization: Bearer. ANTHROPIC_API_KEY-ც მუშაობს: ის გასაღებს x-api-key-ის სახით აგზავნის და Claude Code ერთხელ ითხოვს მის დამტკიცებას.
ANTHROPIC_MODEL სესიის მოდელი. claude --model <id> და /model <id> იგივეს ადგენენ.
ANTHROPIC_DEFAULT_HAIKU_MODEL მოდელი ფონური მოთხოვნებისთვის, როგორიცაა სესიის სათაურები, და ყველაფრისთვის, რაც haiku-ს ითხოვს.
ANTHROPIC_DEFAULT_SONNET_MODEL მოდელი, რომელიც გამოიყენება, როცა subagent ან ბრძანება sonnet-ს ითხოვს.
ANTHROPIC_DEFAULT_OPUS_MODEL მოდელი, რომელიც გამოიყენება, როცა subagent ან ბრძანება opus-ს ითხოვს.
CLAUDE_CODE_MAX_CONTEXT_TOKENS კონტექსტის ფანჯარა, რომელსაც Claude Code მოდელისთვის ვარაუდობს. გამოიყენეთ context_window, რომელსაც GET /v1/models თქვენ მიერ არჩეული id-ისთვის აჩვენებს.
  • დააყენეთ სამივე ცვლადი ANTHROPIC_DEFAULT_…_MODEL. Subagent-ები და ზოგი ბრძანება მოდელს ჩაშენებული სახელით ითხოვს და თითოეული სახელი Shannon-ის id-ზე უნდა გადაიყვანებოდეს.
  • ნიმუში ფონურ მოთხოვნებს shannon-1.6-lite-ზე მიმართავს, რომელიც ტოკენებში ითვლება. სესიის სათაურები და მსგავსი მოთხოვნები მაშინ Coder-ის გამოძახებებს არ იყენებენ.
  • Claude Code კონტექსტის ზომას POST /v1/messages/count_tokens-ს ეკითხება. endpoint hosted open-weight მოდელებისთვის ითვლის. Shannon-ის id-ზე ის პასუხობს 400-ით; Claude Code ტოკენების დათვლას არასავალდებულოდ თვლის და ზომას თავად აფასებს. ტოკენების დათვლა

მისამართის, გასაღებისა და მოდელის id-ის შესამოწმებლად ინსტრუმენტის გაშვებამდე ხელით გააგზავნეთ ერთი მოთხოვნა:

cURL
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 როგორც მოდელის provider ~/.codex/config.toml-ში, იქვე აირჩიეთ Shannon-ის მოდელის id და ჩადეთ თქვენი API გასაღები გარემოს ცვლადში, რომელსაც provider ასახელებს.

~/.codex/config.toml
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"
Shell
# 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
გასაღები აღწერა
model Shannon-ის მოდელის id. codex --model <id> მას ერთი გაშვებისთვის ადგენს.
model_provider გამოსაყენებელი provider ბლოკის სახელი, აქ shannon.
base_url API მისამართი /v1-ით.
env_key გარემოს ცვლადის სახელი, რომელიც თქვენს Shannon API გასაღებს შეიცავს.
wire_api responses: Codex POST /v1/responses-თან მუშაობს.
model_context_window მოდელის კონტექსტის ფანჯარა, რათა Codex-მა გრძელი სესია დროულად შეკუმშოს. გამოიყენეთ context_window, რომელსაც GET /v1/models აჩვენებს.
  • /v1/responses სერვერზე საუბარს არ ინახავს: ყოველი მოთხოვნა საუბარს input-ში ატარებს. previous_response_id მიიღება თავსებადობისთვის.
  • ფუნქციის ინსტრუმენტები (type: "function") მოდელს /v1/responses-ზე ეძლევა.
  • /v1/responses-ზე shannon-coder-1 ითვლება თქვენი ბალანსის ტოკენებში და არა Coder-ის გამოძახებებში.

იგივე შემოწმება Responses endpoint-ისთვის:

cURL
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."
  }'

კოდირების მოდელი და როგორ ითვლება ის

shannon-coder-1 არის Shannon-ის მოდელი კოდირების აგენტებისთვის. GET /v1/models მას აჩვენებს 131,072-ტოკენიანი კონტექსტის ფანჯრით, ინსტრუმენტების გამოძახებით, მსჯელობითა და ტექსტის შეტანით. ის ორი გზით ითვლება, იმის მიხედვით, რომელ endpoint-ს იყენებს ინსტრუმენტი.

Endpoint მოთხოვნის ღირებულება იკლება
/v1/messages 1 გამოძახება მოთხოვნაზე თქვენი გეგმის Coder-ის გამოძახებების ლიმიტი. თქვენი ბალანსიდან ტოკენები არ იკლება.
/v1/chat/completions 1 გამოძახება მოთხოვნაზე თქვენი გეგმის Coder-ის გამოძახებების ლიმიტი. თქვენი ბალანსიდან ტოკენები არ იკლება.
/v1/responses ტოკენები, $8.00 1M-ზე თქვენი ბალანსი, ისევე როგორც ნებისმიერი სხვა მოდელი. გამოძახებების ლიმიტი არ გამოიყენება.

გამოძახება არის ერთი მოთხოვნა, ზომის მიუხედავად. ის ითვლება მოთხოვნის მიღებისას, მოდელის პასუხამდე. აგენტის სესია ყოველი ბიჯისთვის ერთ მოთხოვნას აგზავნის, ამიტომ გრძელი ამოცანა ბევრ გამოძახებას იყენებს. ლიმიტი გეგმაზეა დამოკიდებული და ყოველ 4 საათში თავიდან იწყება, UTC-ით 00:00, 04:00, 08:00, 12:00, 16:00 და 20:00-ზე.

გეგმა გამოძახებები 4-საათიან ფანჯარაში
Free 3
Plus 20
Standard 40
Pro 60

გეგმის გვერდზე მიმდინარე რიცხვებია ნაჩვენები. გეგმები

როცა ფანჯრის გამოძახებები ამოიწურება, მოთხოვნას პასუხობს 429. /v1/messages-ზე იგივე შეცდომა Anthropic-ის ფორმით მოდის.

429 /v1/chat/completions
{
  "error": {
    "type": "rate_limit_error",
    "message": "Shannon Coder call quota reached. Upgrade your plan at shannon-ai.com/plan"
  }
}
429 /v1/messages
{
  "type": "error",
  "error": {
    "type": "rate_limit_error",
    "message": "Shannon Coder call quota reached. Upgrade your plan at shannon-ai.com/plan"
  }
}

კონტექსტის გადავსება

როცა საუბარი მოდელის კონტექსტის ფანჯარაზე დიდია, /v1/chat/completions და /v1/messages პასუხობენ 400-ით, ტიპით invalid_request_error, კოდით context_length_exceeded და შეტყობინებით, რომელიც prompt is too long-ით იწყება. კოდირების ინსტრუმენტები ამ შეცდომას კითხულობენ, რათა სესია შეკუმშონ და მოთხოვნა ხელახლა გააგზავნონ. მას აწარმოებენ shannon-coder-1, shannon-1.6-lite და shannon-1.6-pro.

400 /v1/chat/completions
{
  "error": {
    "type": "invalid_request_error",
    "code": "context_length_exceeded",
    "message": "prompt is too long: 140211 tokens > 131072 maximum",
    "param": null
  }
}
400 /v1/messages
{
  "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.

სტრიმზე სტატუსი უკვე 200-ია, ამიტომ შეცდომა მოვლენის სახით მოდის და სტრიმი შემდეგ ჩვეულებრივად იხურება:

/v1/chat/completions, სტრიმი
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]
/v1/messages, სტრიმი
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"}

რაზე შეიძლება დაეყრდნოს აგენტის ციკლი

თემა ქცევა
ინსტრუმენტების სქემები ინსტრუმენტების აღწერები მიიღება ისე, როგორც ინსტრუმენტი აგზავნის. shannon-coder-1-ზე და shannon-1.6-*-ზე JSON Schema-ს საკვანძო სიტყვები, რომლებსაც მოდელი არ იყენებს, როგორიცაა $schema, $ref, additionalProperties, default და title, მოდელის წასაკითხიდან ამოღებულია, oneOf კი anyOf-ად იკითხება. არც ერთი მოთხოვნა მათი გამო არ უარყოფა.
ინსტრუმენტის გამოძახების არგუმენტები სტრიმში ინსტრუმენტის გამოძახების არგუმენტები სრულად ერთ delta-ში მოდის: tool_calls[].function.arguments, input_json_delta.partial_json ან response.function_call_arguments.delta.
ინსტრუმენტის ბიჯის დასასრული Chat Completions-ზე მიზეზია finish_reason: "tool_calls", Messages-ზე კი stop_reason: "tool_use".
Keep-alive სანამ მოდელი მუშაობს, /v1/messages აგზავნის event: ping-ს, ხოლო /v1/chat/completions — კომენტარის ხაზს : ping ყოველ 15 წამში.
მოთხოვნის გაჩერება კავშირის დახურვა სტრიმს აჩერებს. თავად ბიჯი ბოლომდე სრულდება და ითვლება.

პრობლემების გადაჭრა

სიმპტომი მიზეზი გამოსწორება
400 შეტყობინებით unknown model: claude-… ან unknown model: gpt-… ინსტრუმენტმა თავისი ნაგულისხმევი მოდელის სახელი გააგზავნა. მხოლოდ გამოქვეყნებული Shannon-ის id-ები მუშავდება და სხვა სახელი არცერთზე არ გადაიყვანება. აირჩიეთ Shannon-ის id: ANTHROPIC_MODEL და სამი ANTHROPIC_DEFAULT_…_MODEL ცვლადი Claude Code-ში, model Codex-ის კონფიგურაციაში.
400 შეტყობინებით unknown model: სახელის გარეშე, Codex CLI-დან მოთხოვნაში მოდელი დასახელებული არ იყო. /v1/responses-ს ის სჭირდება. დააყენეთ model ფაილში ~/.codex/config.toml ან გადაეცით --model.
401 შეტყობინებით Missing authentication ან Invalid API key გასაღები API-მდე ვერ მივიდა, ან ის მიმდინარე გასაღები არ არის. Shannon-ის გასაღები sk--ით იწყება. შეამოწმეთ, რომ ცვლადი დაყენებულია shell-ში, რომელიც ინსტრუმენტს უშვებს. გასაღები ხელახლა დააკოპირეთ გვერდიდან Keys & usage.
404 ყველა მოთხოვნაზე base URL-ს ინსტრუმენტისთვის ერთი /v1 მეტი ან ნაკლები აქვს. Claude Code: მისამართი /v1-ის გარეშე. Codex CLI: მისამართი /v1-ით.
429 შეტყობინებით Shannon Coder call quota reached მიმდინარე 4-საათიანი ფანჯრის Coder-ის გამოძახებები ამოიწურა. დაელოდეთ შემდეგ ფანჯარას, გადადით გეგმაზე მეტი გამოძახებით, ან აირჩიეთ მოდელი, რომელიც ტოკენებში ითვლება.
429 შეტყობინებით Quota exceeded თქვენი ბალანსი მოთხოვნას არ ფარავს. შეავსეთ კრედიტი ან დაელოდეთ თქვენი გეგმის დღიურ ლიმიტს 00:00 UTC-ზე.
400 შეტყობინებით prompt is too long საუბარი მოდელის კონტექსტის ფანჯარაზე დიდია. შეკუმშეთ სესია (/compact ორივე ინსტრუმენტში). უთხარით ინსტრუმენტს მოდელის კონტექსტის ფანჯარა, რათა უფრო ადრე შეკუმშოს.
Claude Code კონტექსტის სავარაუდო რიცხვებს აჩვენებს /v1/messages/count_tokens hosted open-weight მოდელებისთვის ითვლის. Shannon-ის id-ზე ის პასუხობს 400-ით და Claude Code ზომას თავად აფასებს. გასასწორებელი არაფერია. ზუსტი დათვლისთვის აირჩიეთ hosted open-weight მოდელი.
ჩასმული ეკრანის სურათი არ გაითვალისწინება shannon-coder-1 იღებს ტექსტის შეტანას. ამ სესიისთვის აირჩიეთ მოდელი, რომელიც სურათებს იღებს.

თქვენი გასაღები და ბალანსი გვერდზე Keys & usage არის. გასაღებები და გამოყენება