Ба мундариҷа гузаред
Баргаштан ба Nymbot

Пойгоҳи дониш Таҳиягарон

Асбобҳо ва SDKҳо

Ҳар чизе, ки метавонад бо OpenAI ё Anthropic муошират кунад, метавонад бо Nymbot ҳам муошират кунад. Дар қариб ҳама ҳолатҳо ин суроғаи асосӣ (base URL), калид ва номи модел аст.

Ҳар як танзимоти зерин ба калиди API ниёз дорад, ки дар замима сохта шудааст API меню (бинед Калидҳои API), ва идентификатори модел аз рӯйхати моделҳоМисолҳо истифода мебаранд anthropic/claude-sonnet-5 дар тавозуни Pro. nymbot/auto ...ин интихоби арзонтар дар тавозуни стандартӣ барои чати оддӣ мебошад, аммо он наметавонад асбобҳоро истифода барад, ки Goose ба он ниёз дорад; барои ин, модели каталогӣ бо... capabilities.tools.

Танзимоти агентҳои кодинг, мисли Claude Code, Codex, Cline, Kilo Code ва Continue дар саҳифаи худаш аст: асбобҳои барномасозӣ.

Ба ҳар як асбоб калиди худро диҳед

Барои ҳар як асбоб калиди алоҳида созед, ки маҳдудияти истифода (cap) дорад. Агентҳои барномасозӣ барои як вазифа бисёр дақиқаҳои моделро иҷро мекунанд ва маҳдудияти калид соддатарин роҳ аст, то донист, ки асбоб метавонад бештар аз чӣ сарф кунад. Агар асбоб нодуруст кор кунад, калиди онро бекор кунед ва ҳеҷ чиз дигар таъсир намепазирад.

OpenAI SDK

Библиотеяҳои расмии Python ва JavaScript бетағйир кор мекунанд. Point base_url дар Nymbot ва калиди худро гузаронед. Chat Completions, Responses, images, audio ва 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 дар Python ва мустақиман ба объекти дархост дар JavaScript. Ин nymbot арзиш объект дар ҷавоб аст reply.model_extra["nymbot"] дар Python ва reply.nymbot дар JavaScript. Китобхонаҳое, ки мехонанд OPENAI_BASE_URL ва OPENAI_API_KEY тағйирёбандаҳои муҳити зистро метавон танҳо бо ё помощи ҳаминҳо ба Nymbot равона кард.

SDK-и Anthropic

Библиотекаҳои Anthropic истифода мебаранд https://nymbot.ai/api ҳамчун 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 сӯҳбат мекунад. URL-и асосиро ва калидро танзим кунед ва гузоред openai/ Дар пеши 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 метавонад огоҳ кунад, ки он андозаи контексти модел ё нархи онро намедонад. Ин огоҳӣ зарарнок нест; --no-show-model-warnings пинҳон мекунад.

Open WebUI

Дар Open WebUI, кушое Панели Админ, пас Танзимот, пас Пайвастҳо, ва пайваст намоени пайвастшавӣ ба OpenAI API:

  • URL: https://nymbot.ai/api/v1
  • Kalid: kalidi API-и шумо

Open WebUI рӯйхати моделҳоро аз API мехонад, бинобар ин ҳар як модели чат дар интихобгар пайдо мешавад. Ҳангоми кораш дар Docker, ҳамин таврро тавассути тағйирёбандаҳои муҳити зист (environment variables) танзим кардан мумкин аст OPENAI_API_BASE_URL ва OPENAI_API_KEY.

Open WebUI сӯҳбатҳои шуморо дар сервери худаш нигоҳ медорад. Nymbot онҳоро захира намекунад, аммо Open WebUI, дар ҳар куҷое ки онро иҷро кунед, онҳоро захира мекунад.

Ғоз

Ҷавонӣ goose configure, интихоб кунед Танзими провайдерҳо, интихоб кун OpenAI, ва вақте ки талаб карда мешавад, ин қиматҳоро диҳед. Ҳамин тавр, инро дар муҳит низ танзим кардан мумкин аст:

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 лозим нест. Ҳар як нуқтаи парванда (endpoint) JSON тавассути HTTPS аст, ба ғайр аз боргузории файлҳо, ки шаклҳои multipart form мебошанд. Ҳар гуна забон ё асбобе, ки метавонад дархости HTTP иҷро кунад, метавонад аз API истифода барад:

  • Калидро ҳамчун фиристо ☺️ Authorization: Bearer sk-nymbot-….
  • Баданҳои JSON-ро бо фиристед Content-Type: application/json.
  • Барои стриминг, ҷавобро ҳамчун воқеаҳои аз сервер фиристодашуда (server-sent events) бихонед; бо cURL илова кунед -N таskins он онҳоро ҳангоми расидан чоп мекунад.
  • Арзишро аз... хонед 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);