Wëssensbasis Entwéckler
Tools an SDKs
Alles, wat mat OpenAI oder Anthropic sprechen kann, kann mat Nymbot sprechen.
Dës Säit ass Maschinn iwwersat fir Kamoudheet. Déi englesch Original ass d'Versioun déi gëlt.
All Installatioun ënner braucht eng API-Schlüssel, déi an der App gemaach gëtt. Feuer gëtt Menü (Säit
Feuer Schlëssel) an e Modell Id vun
Modell LëschtDéi Beispiele benotzt
anthropic/claude-sonnet-5 Et ass pro Balance. nymbot/auto ass déi billegere Choix op der Standard Balance fir einfachen Chat, awer et kann net Tools nennen, déi Goose braucht; fir dat, wählen Iech e Katalogmodell mat capabilities.tools.
De Setup fir Coding Agenten wéi Claude Code, Codex, Cline, Kilo Code an Continue ass op der eegener Säit: Tools ze codéieren.
Coding Agenten maachen vill Modellanrufe fir eng Aufgab, an eng Kap op der Schlëssel ass de einfachste Wee fir de meeschte ze wëssen, wat e Tool kann spannen.
Déi éischt SDK
D'offiziell Python a JavaScript Bibliothéiken funktionnéieren unverändert. base_url op Nymbot a passéiert Äre Schlëssel. Chat Komplementer, Antworten, Bildern, Audio an Embeddings all funktionnéieren duerch se.
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's eege Felder, wéi zum Beispill plugins Fir d'Websäit ze fannen, gaangen an extra_body
an Python an direkt an den Request Object an JavaScript. nymbot D'Cost Object an enger Reaktioun ass reply.model_extra["nymbot"] Et ass Python an
reply.nymbot an JavaScript. Bibliothéiken déi de OPENAI_BASE_URL
an OPENAI_API_KEY D'Umweltvariabelen kënnen op Nymbot mat deem eenzegaarteg ze weisen.
D'Anthropologie vum SDK
D'anthropesch Bibliothéiken benotzt https://nymbot.ai/api als Basis URL, ouni
/v1Et ass dat, datt se /v1/messages All Katalog Modell funktionnéiert, net nëmmen 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);
Ënnerstëtzung
Den Aider féiert op all OpenAI-kompatibel Server. Setze d'Basis-URL an de Schlëssel, an setze
openai/ op der Front vum Modell id so Aider weiß wat fir e Typ vu Server et ass:
Shell
export OPENAI_API_BASE=https://nymbot.ai/api/v1
export OPENAI_API_KEY=sk-nymbot-...
aider --model openai/anthropic/claude-sonnet-5
Den Aider kann warnen, datt et d'Kontextgréisst oder de Präis vum Modell net kennt.
--no-show-model-warnings Vläicht verstoppt dat.
Open Websäit
An der Open WebUI, Open De Panel assDann KonfiguratiounDann Verbindungen, an eng OpenAI API-Verbindung ergänzen:
- Déi éischt URL:
https://nymbot.ai/api/v1 - Et gëtt eng API Schlüssel.
Open WebUI liest d'Modellliste vun der API, sou datt all Chat-Modell an sengem Picker erscheet.
OPENAI_API_BASE_URL an OPENAI_API_KEY.
Open WebUI behält Är Konversatiounen op sengem eegene Server. Nymbot späichert se net, awer Open WebUI tut, egal wou Dir et lafen.
Gäscht
Rennen goose configureWählen Konfiguratioun ProviderWéi Pick
OpzedeelenEt kann och an der Ëmwelt festgeléist ginn:
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 rufft Tools op fast all Schrëtt, also wählt e Modell mat capabilities.tools an der Modellliste; nymbot/auto Et gëtt Instrumenter.
Déi éischt HTTP
Et braucht keng SDK. All Endpoint ass JSON iwwer HTTPS, ausser de Datei Uploads, déi Multipart Forms sinn.
- Schreift de Schlëssel als
Authorization: Bearer sk-nymbot-…. - Dir kënnt d'JSON Organisatiounen mat
Content-Type: application/json. - Fir Streaming, liest d'Reaktioun als Server-Send Ereignisse; mat cURL,
-NDéi éischt Kéier, wann se kommen. - Liest de Präis vun der
X-Nymbot-Cost-SatsHeader, an et gëttX-Request-IdHeader, wann Dir braucht fir eng Recherche ze fragen.
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);