Pāriet uz saturu
Atpakaļ uz Nymbot

Zināšanu bāze Izstrādātāji

Instrumenti un SDK

Viss, kas var runāt ar OpenAI vai Anthropic, var runāt ar Nymbot. gandrīz visos gadījumos tas ir bāzes URL, atslēga un modeļa vārds.

Katrai zemāk minētajai instalācijai ir nepieciešama API atslēga, kas izveidota lietojumprogrammas Ugunsgrēks Ēdienkarte (skatīt Uguns atslēgas), un modeļa ID no Modeļu sarakstsPiemēri izmantošanai anthropic/claude-sonnet-5 Par labu līdzsvaram. nymbot/auto ir lētāka izvēle par standarta bilanci par vienkāršu tērzēšanu, bet tā nevar izsaukt rīkus, kas Goose ir vajadzīgi; lai to izdarītu, izvēlieties kataloga modeli ar capabilities.tools.

Konfigurācija kodēšanas aģentiem, piemēram, Claude Code, Codex, Cline, Kilo Code un Continue ir savā lapā: Kodēšanas rīki.

Dodiet katram instrumentam savu atslēgu

Izveidojiet atsevišķu atslēgu katram rīkam ar vāku.Kodēšanas aģenti veic daudzus modeļa izsaukumus vienam uzdevumam, un vāks uz atslēgas ir vienkāršākais veids, kā uzzināt, cik daudz rīks var tērēt.Ja rīks uzvedas nepareizi, atcelt tā atslēgu un nekas cits netiek ietekmēts.

Atvērt SDK

Oficiālās Python un JavaScript bibliotēkas darbojas nemainīgi. base_url Tērzēšanas pabeigumi, Atbildes, attēli, audio un iebūvējumi visi strādā caur tiem.

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 pašu lauki, piemēram, plugins Lai meklētu tīmekļa vietni, dodieties extra_body Python un tieši pieprasījuma objektā JavaScript. nymbot izmaksu objekts atbilde ir reply.model_extra["nymbot"] Python un reply.nymbot JavaScript. bibliotēkas, kas lasa OPENAI_BASE_URL un OPENAI_API_KEY Apkārtējās vides mainīgos var norādīt uz Nymbot tikai ar tiem.

Antropiskā SDK

Antropiskās bibliotēkas izmanto https://nymbot.ai/api kā pamata URL, bez /v1Tāpēc, ka viņi pievieno /v1/messages Katrs kataloga modelis darbojas, ne tikai 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);

Palīdzība

Palīgs runā ar jebkuru OpenAI saderīgu serveri. iestatīt pamata URL un atslēgu un ievietot openai/ pirms modeļa id, lai Aider zinātu, kāda veida serveris tas ir:

Shell

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

Palīgs var brīdināt, ka viņš nezina modeļa konteksta izmēru vai cenu. --no-show-model-warnings Paslēp to

WEB atvērts

Atvērtā tīmekļa vietnē, atvērtā Admin panelisPēc tam iestatījumiPēc tam savienojumi, un pievienojiet OpenAI API savienojumu:

  • URL adreses: https://nymbot.ai/api/v1
  • Atslēga: jūsu API atslēga

Atvērtā WebUI lasa modeļu sarakstu no API, tāpēc katrs tērzēšanas modelis parādās tā izvēlē. OPENAI_API_BASE_URL un OPENAI_API_KEY.

Open WebUI saglabā jūsu sarunas savā serverī. Nymbot tos neuzglabā, bet Open WebUI to dara, neatkarīgi no tā, kur jūs to palaidāt.

Gūžas

Runāt goose configureIzvēlies Konfigurēt piegādātājusPīķa Atvērts, un pēc pieprasījuma piešķiriet šādas vērtības. To pašu var iestatīt vidē:

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 izsauc rīkus gandrīz katrā solī, tāpēc izvēlieties modeli ar capabilities.tools Sarakstā iekļauts modelis; nymbot/auto Atteikties no instrumentiem

Vienkāršs HTTP

Neko nevajag SDK. Katrs gala punkts ir JSON pār HTTPS, izņemot failu augšupielādes, kas ir vairāku daļu veidlapas.Jebkura valoda vai rīks, kas var veikt HTTP pieprasījumu, var izmantot API:

  • Nosūtiet atslēgu kā Authorization: Bearer sk-nymbot-….
  • Sūtīt JSON struktūras ar Content-Type: application/json.
  • Straumēšanai izlasiet atbildi kā servera nosūtītu notikumu; ar cURL, pievienojiet -N Tāpēc viņi tos izdrukā, kad viņi ierodas.
  • Izlasiet izmaksas no X-Nymbot-Cost-Sats Header, un saglabāt to X-Request-Id Header, ja jums var būt nepieciešams lūgt par pieprasījumu.

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