بنکەی زانیاری گەشەپێدەران
ئامرازەکان و SDKیەکان
هەر شتێک بتوانێت قسە لەگەڵ OpenAI یان Anthropic بکات، دەتوانێت قسە لەگەڵ Nymbot بکات. لە نزیکەی هەموو حاڵەتێکدا بریتییە لە URLێکی بنەڕەتی، کلیلێک و ناوی مۆدێلێک.
ئەم لاپەڕەیە بە ئامێری وەرگێڕدراوە بۆ ئاسانکاری. ئەسڵی ئینگلیزی ئەو وەشانەیە کە کاری پێدەکرێت.
هەموو ڕێکخستنەکانی خوارەوە پێویستیان بە کلیلێکی API هەیە، کە لە ناو ئەپەکەدا دروست کراوە API مێنۆ (بینە
کلیلەکانی API), و ئایدیی مۆدێلێک لە
لیستی مۆدێلەکان. نموونەکان بەکاردێنن
anthropic/claude-sonnet-5 لە هاوسەنگی Pro. nymbot/auto هەڵبژاردنێکی هەرزانترە لە هاوسەنگی ستاندارددا بۆ چاتی سادە، بەڵام ناتوانێت ئامرازەکان بانگ بکات، کە Goose پێویستی پێیە؛ بۆ ئەوە، مۆدێلێکی کاتالۆگ هەڵبژێرە کە... capabilities.tools.
ڕێکخستن بۆ ئاژەنەکانی کۆدکردن وەک Claude Code, Codex, Cline, Kilo Code و Continue لە لاپەڕەیەکی تایبەتەوەیە: ئامرازەکانی کۆدکردن.
بۆ هەر ئامرازێک کلیلییەکی جیاواز دروست بکە، لەگەڵ سنوورێکی دیاریکراو. ئەژانتەکانی کۆدنووس کردن چەندین بانگکردنی مۆدێل بۆ یەک کار ئەنجام دەدەن، و دانانی سنوورێک لەسەر کلیلەکە سادەترین ڕێگەیە بۆ ئەوەی بزانیت زۆرترین ئەو بڕەیە کە ئامرازەکە دەتوانێت خەرجی بکات. ئەگەر ئامرازێک بە هەڵە کار کرد، کلیلی بۆ هەڵوەشێنەوە و هیچ شتێکی تر زیان نایە达到.
OpenAI SDK
Libary-ên فەرمی Python و JavaScript بە بێگۆڕان کار دەکەن. Point base_url لە
Nymbot و کلیلی خۆت بدە. Chat Completions، وەڵامەکان، وێنەکان، دەنگ و embeddings هەموویان
لە ڕێگەی ئەوانەوە کار دەکەن.
cURL
curl https://nymbot.ai/api/v1/chat/completions \
-H "Authorization: Bearer $NYMBOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "anthropic/claude-sonnet-5", "messages": [{"role": "user", "content": "Hello"}]}'
Python
# pip install openai
import os
from openai import OpenAI
client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])
reply = client.chat.completions.create(
model="anthropic/claude-sonnet-5",
messages=[{"role": "user", "content": "Hello"}],
)
print(reply.choices[0].message.content)
JavaScript
// npm install openai
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });
const reply = await client.chat.completions.create({
model: "anthropic/claude-sonnet-5",
messages: [{ role: "user", content: "Hello" }],
});
console.log(reply.choices[0].message.content);
بوارەکانی خۆی لە Nymbot، وەک plugins بۆ گەڕان لە وێب، بچۆ ژوورەوە extra_body
لە پایتۆن و ڕاستەوخۆ بۆ ناو ئۆبجێکتەکانی داواکاری لە جەڤاسکریپت. ئەو nymbot تێچوو
ئەو ئۆبجێکتەی لە وەڵامدا هەیە بریتییە لە reply.model_extra["nymbot"] لە پایتۆن و
reply.nymbot لە JavaScriptدا. کتێبخانەکان کە دەخوێننەوە OPENAI_BASE_URL
و OPENAI_API_KEY گۆڕاوەکانی ژینگە دەکرێت تەنها بەو ڕێگەیەی کە ئاماژەیان پێدەکرێت ئاڕاستەی Nymbot بکرێن.
Anthropic SDK
کتێبخانەکانی Anthropic بەکاردێنن https://nymbot.ai/api وەک ناونیشانی سەرەتا (base URL)، بەبێ
/v1، چونکە ئەوان زیاد دەکەن /v1/messages خۆیان. هەر مۆدێلێکی کتێبخانە کار دەکات، نەک تەنها Claude.
cURL
curl https://nymbot.ai/api/v1/messages \
-H "x-api-key: $NYMBOT_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{"model": "claude-sonnet-5", "max_tokens": 1024, "messages": [{"role": "user", "content": "Hello"}]}'
Python
# pip install anthropic
import os
import anthropic
client = anthropic.Anthropic(base_url="https://nymbot.ai/api", api_key=os.environ["NYMBOT_API_KEY"])
message = client.messages.create(
model="claude-sonnet-5",
max_tokens=1024,
messages=[{"role": "user", "content": "Hello"}],
)
print(message.content[0].text)
JavaScript
// npm install @anthropic-ai/sdk
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({ baseURL: "https://nymbot.ai/api", apiKey: process.env.NYMBOT_API_KEY });
const message = await client.messages.create({
model: "claude-sonnet-5",
max_tokens: 1024,
messages: [{ role: "user", content: "Hello" }],
});
console.log(message.content[0].text);
یارمەتیدان
Aider قسە لەگەڵ هەر سێرڤەرێکی هاوشێوەی OpenAI دەکات. ناونیشانی سەرەکی (base URL) و کلی (key) ڕێکبخە، و دایبنێ
openai/ لەبەردەم ناسنامەی مۆدێلەکە (model id) بۆ ئەوەی Aider بزانێت چ جۆرە سێرڤەرێکە:
Shell
export OPENAI_API_BASE=https://nymbot.ai/api/v1
export OPENAI_API_KEY=sk-nymbot-...
aider --model openai/anthropic/claude-sonnet-5
Aider ڕەنگە ئاگادار بکاتەوە کە قەبارەی چوارچێوەی مۆدێلەکە (context size) یان نرخەکەی نازانێت. ئاگادارییەکە زیانی نییە؛
--no-show-model-warnings دەیشاردەوە.
Open WebUI
لە Open WebUI، بکەرەوە پەناڵی ئەدمین، پاشان ڕێکخستنەکان، پاشان پەیوەندییەکان، و پەیوەندییەکی OpenAI API زیاد بکە:
- URL:
https://nymbot.ai/api/v1 - کلیل: کلیلەکەی API تۆ
Open WebUI لیستی مۆدێلەکان لە APIـەوە دەخوێنێتەوە، بۆیە هەموو مۆدێلێکی چات لە هەڵبژاردنەکەییدا دەردەکەوێت. کاتێک لە Docker بەڕێوە دەبرێت، هەمان شت دەکرێت بە بەکارهێنانی گۆڕاوەکانی ژینگە (environment variables) ڕێکبخڕێت
OPENAI_API_BASE_URL و OPENAI_API_KEY.
Open WebUI گفتوگۆکانت لەسەر سێرڤەرەکەی خۆی دەپارێزێت. Nymbot ئەوان هەڵناگرێت، بەڵام Open WebUI هەڵیانگرێتەوە، لە هەر شوێنێک کە کار پێ بکەیت.
گەش
ڕاکە goose configure, هەڵبژێرە ڕێکخستنی دابینکەران، هەڵبژێرە
OpenAI، و کاتێک داواکرا، ئەم بەهایانەی پێ بدە. هەمان شت دەکرێت لە
ژینگەدا (environment) ڕێکبخڕێت:
Shell
export GOOSE_PROVIDER=openai
export OPENAI_HOST=https://nymbot.ai/api
export OPENAI_BASE_PATH=v1/chat/completions
export OPENAI_API_KEY=sk-nymbot-...
export GOOSE_MODEL=anthropic/claude-sonnet-5
goose session
Goose لە نزیکەی هەموو هەنگاوێکدا ئامرازەکان بەکاردێنێت، بۆیە مۆدێلێک هەڵبژێرە کە... capabilities.tools لە
لیستی مۆدێلەکاندا؛ nymbot/auto ئامرازەکان ڕەت دەکاتەوە.
HTTPی سادە
هیچ شتێک پێویستی بە SDK نییە. هەموو خاڵە کۆتاییەکان (endpoints) JSON و لە ڕێگەی HTTPSـەوەن، جگە لە بەرزکردنەوەی فایلەکان کە بە شێوازی multipart formsـن. هەر زمانێک یان ئامرازێک کە بتوانێت داواکارییەکی HTTP بنێرێت دەتوانێت ئەم APIـیە بەکاربهێنێت:
- کلیلەکە بنێرە وەک
Authorization: Bearer sk-nymbot-…. - جەیسۆن (JSON) بۆ بنێرە لەگەڵ
Content-Type: application/json. - بۆ ستریمینگ، وەڵامەکە وەک ڕووداوەکانی ناردراو لەلایەن سێرڤەرەوە بخوێنەوە؛ بە cURL، زیاد بکە
-Nبەواتای ئەوەی کاتێک دەگەن چاپیان دەکات. - تێچووەکە لەوە بخوێنەوە
X-Nymbot-Cost-Satsسەرەتا، و پاراستنیX-Request-Idسەرەوە ئەگەر پێویستت بەوە بوو پرسیار بکەیت دەربارەی داواکارییەک.
cURL
curl -i https://nymbot.ai/api/v1/chat/completions \
-H "Authorization: Bearer $NYMBOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "nymbot/auto", "messages": [{"role": "user", "content": "Hello"}]}'
Python
import os
import requests
res = requests.post(
"https://nymbot.ai/api/v1/chat/completions",
headers={"Authorization": "Bearer " + os.environ["NYMBOT_API_KEY"]},
json={"model": "nymbot/auto", "messages": [{"role": "user", "content": "Hello"}]},
)
print(res.headers["X-Nymbot-Cost-Sats"], res.headers["X-Request-Id"])
print(res.json()["choices"][0]["message"]["content"])
JavaScript
const res = await fetch("https://nymbot.ai/api/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer " + process.env.NYMBOT_API_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({ model: "nymbot/auto", messages: [{ role: "user", content: "Hello" }] }),
});
console.log(res.headers.get("X-Nymbot-Cost-Sats"), res.headers.get("X-Request-Id"));
console.log((await res.json()).choices[0].message.content);