انتقل إلى المحتوى
العودة إلى Nymbot

قاعدة المعرفة المطورين

أدوات و SDK

أي شيء يمكن أن يتكلم مع OpenAI أو Anthropic يمكن أن يتكلم مع Nymbot.

كل تثبيت أدناه يحتاج إلى مفتاح API ، الذي تم إنشاؤه داخل التطبيق. النار النسخة (اقرأ) المفتاح الحار) ، و هو نموذج من قائمة النماذجمثالات الاستخدام anthropic/claude-sonnet-5 من أجل التوازن. nymbot/auto هو خيار أقل تكلفة على التوازن القياسي للاتصال العادي، ولكنها لا تستطيع تسمية الأدوات التي تحتاجها Goose؛ لذلك، اختر نموذج الكاتالون مع capabilities.tools.

يتم تثبيت أجهزة الكود مثل Claude Code، Codex، Cline، Kilo Code و Continue على صفحتها الخاصة: أدوات الكود.

إعطاء كل أداة مفتاحها الخاص

إنشاء مفتاح منفصل لكل أداة ، مع كوب.الشركات الكمبيوترية تقوم بتقديم العديد من الدعوات النموذجية لعمل واحد ، وهو كوب على المفتاح هو أسهل طريقة لمعرفة ما يمكن إنفاق أداة.إذا كان أداة يتصرف بشكل خاطئ ، إلغاء مفتاحه ولن تؤثر أي شيء آخر.

OpenAI 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 مع تلك وحدها.

أندرويد 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 إخفاءها

WEB WEB WEB WEB WEB

في Open WebUI ، مفتوح منصة Adminثم الإعداداتثم الاتصال, وإضافة اتصال OpenAI API:

  • URL : https://nymbot.ai/api/v1
  • مفتاح API الخاص بك

يقرأ Open WebUI قائمة النماذج من API ، بحيث يظهر كل نموذج الترجمة في خيارها. OPENAI_API_BASE_URL و OPENAI_API_KEY.

Open WebUI يحافظ على محادثاتك على خادمها الخاص. Nymbot لا تخزينها، ولكن Open WebUI يفعل، في أي مكان كنت تقوم به.

Goose

المشي goose configure- اختيار Configure الموردينPick مفتوحةيمكن إدخال هذه القيمة في البيئة نفسها:

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. كل نقطة انتهاء هي JSON على HTTPS ، باستثناء الملفات التي يتم تحميلها ، والتي هي أشكال متعددة الأجزاء. أي لغة أو أداة يمكنها إجراء طلب 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);