Kennisbasis Ontwikkelaar
Tools en SDK's
Alles wat met OpenAI of Anthropic kan praat, kan met Nymbot praat.In byna elke geval is dit 'n basiese URL, 'n sleutel en 'n modelnaam.
Hierdie bladsy is gerieflikheidshalwe masjienvertaal. Die Engelse oorspronklike is die weergawe wat van toepassing is.
Elke opstel hieronder benodig 'n API sleutel, gemaak in die app se vuur Die menu (sien
vuur sleutels), en 'n model id van
Die modellijstDie voorbeelde gebruik
anthropic/claude-sonnet-5 Op die pro balans. nymbot/auto is die goedkoper keuse op die standaardbalans vir gewone chat, maar dit kan nie gereedskap noem nie, wat Goose nodig het; hiervoor kies 'n katalogusmodel met capabilities.tools.
Die opstel vir kodeeragente soos Claude Code, Codex, Cline, Kilo Code en Continue is op sy eie bladsy: Kodeer gereedskap.
Coding agente maak baie model oproepe vir een taak, en 'n cap op die sleutel is die eenvoudigste manier om te weet wat die meeste 'n instrument kan spandeer.
Open die SDK
Die amptelike Python en JavaScript biblioteke werk onveranderd. base_url Chat voltooiings, antwoorde, beelde, klank en embeddings alles werk deur hulle.
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 se eie velde, soos plugins vir die web soek, gaan in extra_body
in Python en reguit in die versoek voorwerp in JavaScript. nymbot Die koste voorwerp in 'n reaksie is reply.model_extra["nymbot"] In Python en
reply.nymbot in JavaScript. biblioteke wat die OPENAI_BASE_URL
en OPENAI_API_KEY omgewingsvariabele kan op Nymbot met hulle alleen aangedui word.
Antropiese SDK
Antropiese biblioteke gebruik https://nymbot.ai/api as die basis URL, sonder
/v1Omdat hulle toevoeg /v1/messages Alle kataloogmodel werk, nie net Claude nie.
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);
Hulp
Aider praat met enige OpenAI-kompatibele bediener. stel die basiese URL en sleutel, en stel
openai/ in die voorkant van die model id sodat Aider weet watter soort bediener dit is:
Shell
export OPENAI_API_BASE=https://nymbot.ai/api/v1
export OPENAI_API_KEY=sk-nymbot-...
aider --model openai/anthropic/claude-sonnet-5
Die helper kan waarsku dat hy nie die konteksgrootte of prys van die model ken nie.
--no-show-model-warnings verberg dit.
Open webtuiste
In Open WebUI, oop Admin die paneelEn dan Die instellingsEn dan verbindings, en voeg 'n OpenAI API-verbinding by:
- Die URL:
https://nymbot.ai/api/v1 - Kliek: jou API sleutel
Open WebUI lees die model lys van die API, sodat elke chatmodel in sy picker verskyn.
OPENAI_API_BASE_URL en OPENAI_API_KEY.
Open WebUI hou jou gesprekke op sy eie bediener. Nymbot stoor hulle nie, maar Open WebUI doen dit, waar jy dit hardloop.
Gooi
loop goose configureKies die Konfigureer verskaffersPick die
openbaar, en gee dit hierdie waardes wanneer gevra word. dieselfde kan in die omgewing ingestel word:
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 roep gereedskap op byna elke stap, so kies 'n model met capabilities.tools in die modellijst; nymbot/auto Verwerp gereedskap
Net die HTTP
Niks benodig 'n SDK nie. Elke eindpunt is JSON oor HTTPS, behalwe die lêeroplaad, wat meerdelike vorms is. Enige taal of instrument wat 'n HTTP-verzoek kan maak, kan die API gebruik:
- Stuur die sleutel as
Authorization: Bearer sk-nymbot-…. - Stuur JSON organe met
Content-Type: application/json. - Vir streaming, lees die antwoord as server-gestuurde gebeure; met cURL, voeg
-NDit druk hulle op as hulle kom. - Lees die koste van die
X-Nymbot-Cost-Satsheader, en hou dieX-Request-Idheader as jy dalk 'n versoek moet vra.
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);