Ale nan kontni an
Retounen nan Nymbot

Konesans baz Devlopè

Zouti ak SDKs

Tout bagay ki ka pale ak OpenAI oswa Anthropic ka pale ak Nymbot. Nan prèske tout ka li se yon baz URL, yon kle ak yon non modèl.

Tout enstalasyon anba a bezwen yon kle API, te fè nan aplikasyon an Fwa Menu (Li nan Fire kle nan), ak yon modèl id soti nan Modèl lisPou egzanp yo itilize anthropic/claude-sonnet-5 sou balans la pro. nymbot/auto se chwa pi bon mache sou balans la estanda pou chat senp, men li pa ka rele zouti, ki Goose bezwen; pou sa, chwazi yon modèl katalog ak capabilities.tools.

Konfigirasyon pou ajan kodaj tankou Claude Code, Codex, Cline, Kilo Code ak Kontinye se sou paj pwòp li yo: Zouti kodaj.

Jwenn chak zouti kle pwòp li yo

Kreye yon kle separe pou chak zouti, ak yon cap. Agents kodaj fè plizyè model apèl pou yon sèl travay, ak yon cap sou kle a se fason ki pi senp yo konnen ki pi plis yon zouti ka pase. Si yon zouti se mal, revoke kle li yo ak pa gen anyen lòt ki afekte.

OpenAI SDK nan

Bibliyotèk ofisyèl yo Python ak JavaScript ap travay san chanjman. Pwen base_url nan Nymbot ak pase kle ou. Konplètman chat, repons, imaj, odyo ak embeddings tout travay nan yo.

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

Zòn nan pwòp nan Nymbot, tankou plugins pou rechèch sou entènèt, ale nan extra_body nan Python ak dirèkteman nan objè demann nan JavaScript. nymbot Objè pri nan yon repons se reply.model_extra["nymbot"] nan Python ak reply.nymbot nan JavaScript. Bibliyotèk ki li OPENAI_BASE_URL epi OPENAI_API_KEY varyab anviwònman ka montre nan Nymbot ak yo sèlman.

Antropik SDK nan

Bibliyotèk Antropik itilize https://nymbot.ai/api kòm baz la URL, san yo pa /v1Se poutèt sa yo ajoute /v1/messages Tout modèl katalog travay, pa sèlman 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);

Ajoute

Aider ap pale ak nenpòt sèvè konpatib OpenAI. Konfigire URL baz ak kle, epi mete openai/ nan devan id modèl la pou Aider konnen sa ki kalite sèvè se:

Shell

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

Asistan ka avèti ke li pa konnen gwosè a konte oswa pri a nan modèl la. Avèti a se san danje; --no-show-model-warnings Soti nan.

Open nan WebUI

Nan Open WebUI, louvri Panèl AdminLè sa KonfigirasyonLè sa koneksyon, epi ajoute yon koneksyon OpenAI API:

  • URL nan: https://nymbot.ai/api/v1
  • Key: kle API ou

Open WebUI li lis lis la modèl soti nan API a, se konsa ke chak modèl chat ap parèt nan picker li yo. Lè ou kouri li nan Docker, menm jan an ka mete ak varyab anviwònman an OPENAI_API_BASE_URL epi OPENAI_API_KEY.

Open WebUI kenbe konvèsasyon ou sou sèvè pwòp li yo. Nymbot pa sove yo, men Open WebUI fè, kote ou kouri li.

Gòz

kouri goose configureChwazi Konfigirasyon founisèPick nan Openè, epi bay li valè sa yo lè mande. menm jan an ka mete nan anviwònman an:

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 rele zouti nan prèske chak etap, se konsa chwazi yon modèl ak capabilities.tools nan lis modèl; nymbot/auto Refuse zouti yo.

Pwodwi pou https

Pa gen anyen bezwen yon SDK. Chak pwen fen se JSON sou HTTPS, eksepte upload dosye yo, ki se fòm plizyè pati. Nenpòt lang oswa zouti ki ka fè yon demann HTTP ka sèvi ak API a:

  • voye kle a kòm Authorization: Bearer sk-nymbot-….
  • voye kò yo JSON ak Content-Type: application/json.
  • Pou streaming, li repons la kòm evènman sèvè voye; ak cURL, ajoute -N Se konsa, li enprime yo lè yo rive.
  • Li pri a soti nan X-Nymbot-Cost-Sats Header, epi kenbe nan X-Request-Id header si ou ta ka bezwen mande pou yon demann.

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