بڕۆ بۆ ناوەڕۆکەکە
گەڕانەوە بۆ Nymbot

بنکەی زانیاری گەشەپێدەران

ئامرازەکان و 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);