به محتوا بروید
بازگشت به Nymbot

پایگاه دانش توسعه دهندگان

ابزار و SDK

هر چیزی که می تواند با OpenAI یا Anthropic صحبت کند می تواند با Nymbot صحبت کند.

هر نصب زیر نیاز به کلید API دارد که در برنامه انجام می شود. آتش مینو (برای مشاهده) کلید های آتش) و یک مدل ID از لیست مدلاستفاده از مثال ها anthropic/claude-sonnet-5 در رابطه با تعادل nymbot/auto انتخاب ارزان تر در توازن استاندارد برای چت ساده است، اما نمی تواند ابزار را صدا کند، که Goose نیاز دارد؛ برای آن، یک مدل کاتالوگ با capabilities.tools.

تنظیم برای آژانس های رمزنگاری مانند Claude Code، Codex، Cline، Kilo Code و Continue در صفحه خود قرار دارد: ابزار Coding.

هر ابزار کلید خود را بدهید

یک کلید جداگانه برای هر ابزار ایجاد کنید، با یک Cap. عامل های رمزنگاری برای یک وظیفه، بسیاری از تماس های مدل را انجام می دهند، و یک Cap روی کلید ساده ترین راه برای دانستن مقدار زیادی که یک ابزار می تواند صرف کند است.

باز کردن SDK

کتابخانه های رسمی Python و JavaScript بدون تغییر کار می کنند. base_url در Nymbot و کلید خود را انتقال دهید. چت تکمیل، پاسخ ها، تصاویر، صوتی و نصب همه از طریق آنها کار می کنند.

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 کتابخانه هایی که این کتاب را می خوانند OPENAI_BASE_URL و OPENAI_API_KEY تغییرات محیط زیست را می توان در Nymbot با آن ها تنها نشان داد.

Anthropic SDK

استفاده از کتابخانه های انسانی https://nymbot.ai/api به عنوان URL پایه، بدون /v1چون اضافه می کنند /v1/messages هر مدل کاتالوگ کار می کند، نه فقط کلود.

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);

کمک

کمک کننده با هر سرور سازگار با 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

کمک کننده می تواند هشدار دهد که اندازه و یا قیمت مدل را نمی داند. --no-show-model-warnings آن را پنهان کنید.

وب سایت Open

در Open WebUI، باز admin پینلپس از تنظیماتپس از ارتباطاتو یک اتصال API OpenAI اضافه کنید:

  • URL : https://nymbot.ai/api/v1
  • کلید API: کلید API

Open WebUI لیست مدل را از API می خواند، بنابراین هر مدل چت در انتخابگر آن ظاهر می شود. OPENAI_API_BASE_URL و OPENAI_API_KEY.

Nymbot آنها را ذخیره نمی کند، اما Open WebUI آن را انجام می دهد، هر جا که شما آن را اجرا می کنید.

گوساله

راه رفتن goose configureانتخاب کنید سازگاری ارائه دهندهپیت باز کردنو در صورت درخواست این ارزش ها را به آن بدهید.همه چیز را می توان در محیط تنظیم کرد:

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

گوساله ها در تقریبا هر مرحله ابزار را دعوت می کنند، بنابراین یک مدل با capabilities.tools در لیست مدل؛ nymbot/auto وسایل را رد کنید.

HTTP ساده

هیچ چیز نیاز به یک SDK ندارد. هر نقطه پایانی JSON بر روی HTTPS است، به جز اپلیکیشن های فایل، که فرم های چند بخش هستند. هر زبان یا ابزار که می تواند درخواست HTTP را انجام دهد می تواند از API استفاده کند:

  • کلید را به عنوان Authorization: Bearer sk-nymbot-….
  • ارسال بدن های JSON با Content-Type: application/json.
  • برای پخش، پاسخ را به عنوان اتفاقات فرستاده شده از سرور بخوانید؛ با cURL، اضافه کنید -N به همین دلیل است که آنها را هنگامی که وارد می شوند، چاپ می کنند.
  • هزینه ها را از X-Nymbot-Cost-Sats Header و نگهداری آن X-Request-Id Header اگر نیاز دارید از یک درخواست بپرسید

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);