Ugrás a tartalomhoz
Vissza a Nymbothoz

Tudásbázis Fejlesztők

Eszközök és SDK

Bármi, ami beszélhet az OpenAI-val vagy az Anthropic-szal, beszélhet a Nymbotmal.

Az alábbiakban minden egyes telepítéshez egy API kulcsra van szüksége, amely az alkalmazáson belül készül. tűz Menü (Lásd még Tűz kulcsok) és egy modell azonosítót a A modell listájaA példák használata anthropic/claude-sonnet-5 A Pro egyensúly. nymbot/auto az egyszerű csevegés standard mérlegénél olcsóbb választás, de nem hívhat eszközöket, amelyekre Goose-nak szüksége van; ehhez válasszon egy katalógusmodellt capabilities.tools.

Az olyan kódolási ügynökök beállítása, mint a Claude Code, a Codex, a Cline, a Kilo Code és a Continue a saját oldalán található: Kódoló eszközök.

Adja meg minden eszköz a saját kulcsát

A kódoló ügynökök sok modellhívást végeznek egy feladathoz, és a kulcson lévő kulcs a legegyszerűbb módja annak, hogy megtudja, hogy egy eszköz mennyit tud költeni.

Nyitott SDK

A hivatalos Python és JavaScript könyvtárak változatlanul működnek. base_url Chat befejezések, Válaszok, képek, audio és beágyazások mind működnek rajtuk keresztül.

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

A Nymbot saját mezői, mint például plugins A weboldal kereséséhez lépjen be extra_body Pythonban és közvetlenül a JavaScript-ben a kérés objektumába. nymbot A költség objektum a válaszban reply.model_extra["nymbot"] Python és reply.nymbot JavaScript. könyvtárak, amelyek olvassák a OPENAI_BASE_URL és OPENAI_API_KEY A környezeti változók csak a Nymbotra mutathatók.

Anthropikus SDK

Az antropológiai könyvtárak használata https://nymbot.ai/api mint az alap URL, anélkül, hogy /v1Mert hozzáadják /v1/messages Minden katalógus modell működik, nem csak 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);

segítő

Az asszisztens bármely OpenAI-kompatibilis szerverhez beszél. Állítsa be az alap URL-t és a kulcsot, és helyezze openai/ a modell id előtt, így az Aider tudja, hogy milyen típusú szerver:

Shell

export OPENAI_API_BASE=https://nymbot.ai/api/v1
export OPENAI_API_KEY=sk-nymbot-...
aider --model openai/anthropic/claude-sonnet-5

Az asszisztens figyelmeztethet arra, hogy nem ismeri a modell kontextusméretét vagy árát. --no-show-model-warnings elrejteni azt.

Nyitott weboldal

Nyitott weboldalak, nyílt Admin panelekAztán beállításokAztán Kapcsolatok, és adjon hozzá egy OpenAI API kapcsolatot:

  • Az URL: https://nymbot.ai/api/v1
  • Az Ön API kulcsa

Az Open WebUI elolvassa a modelllistát az API-ból, így minden csevegési modell megjelenik a kiválasztójában. OPENAI_API_BASE_URL és OPENAI_API_KEY.

A Nymbot nem tárolja őket, de az Open WebUI azt teszi, bárhol is futtatod.

Gózsa

futás goose configureVálassza ki Konfiguráló szolgáltatókA Pick megnyitó, és adja meg ezeket az értékeket, ha kérik. Ugyanez állítható be a környezetben:

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 szinte minden lépésnél eszközöket hív, így válasszon egy modellt capabilities.tools a modell listában; nymbot/auto Megtagadja az eszközöket.

Egyszerű HTTP

Semmi sem igényel SDK-t. Minden végpont JSON és HTTPS, kivéve a fájlok feltöltését, amelyek több részből álló űrlapok. Bármely nyelv vagy eszköz, amely HTTP-kérelmet készíthet, használhatja az API-t:

  • Küldje el a kulcsot a Authorization: Bearer sk-nymbot-….
  • Küldjön JSON-szerveket a Content-Type: application/json.
  • A közvetítéshez olvassa el a választ, mint a kiszolgáló által küldött eseményt; a cURL-vel adja hozzá -N Így nyomtatja őket, ahogy megérkeznek.
  • Olvassa el a költségeket a X-Nymbot-Cost-Sats Header, és tartsa a X-Request-Id Header, ha szüksége lehet egy kérésre.

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