kahua ʻike Nā mea kūkulu polokalamu
Kūkākūkā, Nā Pane a me Nā Memo
ʻElei ʻano e nīnau ai i kekahi mōhele, ma nā ʻano ʻelua e kamaʻilio ai nā mea kūʻai, a pau paha e halihia ʻia e nā mōhele like ʻole a e kālā ʻia paha ma ke ʻano like ʻole.
Ua unuhi ʻia kēia ʻaoʻao no ka maʻalahi. ʻO ka ʻōlelo Pelekane ka mana e pili ana.
Nā Hoʻopukapuka Kamaʻilio
Ka papa kiko OpenAI chat, a ʻo ka mea e kākoʻo ʻia nei e kēlā me kēia mea hana ma mua o ia. Lawe i ka kamaʻilio i kēia manawa a e loaʻa ai ka ʻōlelo aʻe aʻe.
POST https://nymbot.ai/api/v1/chat/completions — pono i ka API key.
Maikaʻi wale nō model a messages he mea pono ʻia. He papa mea pili ʻana ka mea i koho ʻia
ʻaʻole lawe ʻia e ka māhele, e nalo ʻia ia me ka ʻole o kekahi hewa, no laila e hana ai ka mea pono kumu hoʻokahi ma luna o nā māhele. ʻO ka papa inoa māhele ke hāʻawi nei i kēlā me kēia māhele ka supported_parametersʻO ka mea e kūʻokoʻa ʻia ʻia ma mua o ka poho ʻana, ʻo ia kēlā mea āpau i ʻole hiki i ka mōʻaukala ke hana: nā kiʻi no kahi mōʻaukala ʻole hiki ke ʻike, nā mea hana no kahi mōʻaukala ʻole hiki ke koepu iā laila.
| Māhele | ʻOlelo | Pono | Kāʻano |
|---|---|---|---|
model | lele | ʻAe | nymbot/auto (a ʻo auto) no ka hoʻololi ala o Nymbot ma ka pāʻoakuʻu maʻamau, a i ʻole he catalog model id e like me kēia anthropic/claude-sonnet-5 ma ka pūlama Pro. ʻAe pū nō nā inoa pōkole a me nā inoa ʻē aʻe o ka polokalamu. Hiki ke hopena i ka hopena hua. |
messages | papa lālā | ʻAe | Ka kamaʻilio ʻana. Nā kuleana. system, developer (wehewehe ʻia e like me ka ʻōlelo ʻō</h1>) user, assistant a toolʻO ka mea waiwai he huaʻōlelo a i ʻole he papa inoa o text a image_url mau helu; mau kiʻi wale nō i nā memo a ka mea hoʻohana. input_audio a ʻo nā ʻāpana faili i kūʻole ʻia. |
stream | pōʻolea | ʻAʻole | Hoʻouna i ka pane ma o ia mau huaʻōlelo i kākau ʻia. Nānā hoʻololi ʻana mea ʻike ʻoihana. |
stream_options | mea ulu | ʻAʻole | {"include_usage": true} hoʻemi i kahi ʻāpana hope me nā helu token a me ke kumukūlana. |
max_tokensmax_completion_tokens | helu pololei | ʻAʻole | He nui loa nā huaʻōlelo i ka kākau ʻana. Inā he nui loa, e hoʻonui ʻia i ka nui loa o ka ʻano hana. Ke hoʻohana pū ana kēia i ka nui o ka pila, no laila, ʻo ka helu liʻiliʻi ka mea e pono ai i ka kākoʻo kālā ʻoi aku ʻole. |
temperaturetop_p | helu | ʻAʻole | Nā koakoa ʻana loea: temperature mai 0 a hiki i 2, top_p mai 0 a i 1. |
stop | inoa a he papa ʻoiaʻiʻo? | ʻAʻole | Ka huaʻōlelo e hope ai ka pane: he lālā a i ʻole he 4 lālā ʻole, e kikoʻī ana i ka 256 helu ʻole i kēlā me kēia. ʻAʻole hoʻohana ʻia e nymbot/auto. |
seed | helu pololei | ʻAʻole | No ka hāpai ʻana i ka hoʻāʻo ʻana i ka mea e hiki ai ke hoʻi mai, i ka wā e kākoʻo ai ka māhele. |
presence_penaltyfrequency_penalty | helu | ʻAʻole | Nā hoʻokontrola hoʻihoʻi, ʻo ia aʻo ʻea mai i ka -2 a i ka 2. |
response_format | mea ulu | ʻAʻole | {"type": "json_object"} aʻole {"type": "json_schema", "json_schema": {…}}, kahi e kākoʻo ai ka māhele. ʻAʻole e hoʻohana ʻia e nymbot/auto. |
toolstool_choiceparallel_tool_calls | papa, huaʻōlelo, a i ʻole papa hana, ʻoia paha ʻo ʻoia true a ʻoia paha false | ʻAʻole | Ka hana ʻana i ka kāhea ʻana. E nānā mai pana kaʻina hana. A web_search hele ka mea hana ʻimi web. He mau mea hana he 128 loa loa a me nā hoʻōlamalama he 512 KB, i hoʻohui ʻia i loko o nā lālā he 64 loa loa; ʻoi aku ʻo ia he 400. |
reasoning_effortreasoning | huaʻōlelo, mea mea ʻoiaʻiʻo | ʻAʻole | "minimal", "low", "medium" aʻole "high", a {"effort": "high"}. "none" aʻole {"enabled": false} hoʻopau i kēlā. ʻIke ka manaʻo noʻeau. |
plugins | papa lālā | ʻAʻole | [{"id": "web", "max_results": 5}] he uluhelele pono i ka pūnaewele mua loa. Hiki i nā hopuna ʻumu ʻe 10. |
n | helu pololei | ʻAʻole | He ʻole wale nō ʻo 1. He mea ʻē aʻe nō ka mea a pau ʻē aʻe e hoʻi mai nei 400. |
logit_biasusermetadata | mea, huaʻōlelo, mea | ʻAʻole | Ua loaʻa a ʻaʻole i hoʻouna ʻia ʻana. logit_bias hoʻokau i nā token ids he nui loa ʻole i ka 300 i nā helu mai -100 a hiki i 100; user ʻo ia ka nui loa ʻo 256 nā huaʻōlelo; metadata e loaʻa ana i ka nui loa ʻo 16 nā lula huaʻōlelo, nā lālā hiki i ka hōʻike ʻana i ka 64 mau helu a me nā lālā hiki i ka 512. |
He pane ia he mea maʻamau chat.completion, me ke kumukūʻai i usage.cost
(i nā dola) a ma ke nymbot mea mea model he ʻo ka ʻike ʻāpana o ka mea i hoʻoholo ʻia,
no laila, e kipa mai ana ka inoa pōkole ma ke ʻano he inoa piha. Inā lohe ʻia ka manaʻo mua i ka pane ʻana, ʻo kona
manaʻo nei i loko o message.reasoning_content, kaʻawale mai ka pane.
A'ohe mea pane
{
"id": "chatcmpl-5f1c0a9e27d84b3c",
"object": "chat.completion",
"created": 1790726400,
"model": "anthropic/claude-sonnet-5",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "A Lightning invoice is a one-time payment request..."
},
"logprobs": null,
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 1240,
"completion_tokens": 380,
"total_tokens": 1620,
"prompt_tokens_details": { "cached_tokens": 0 },
"completion_tokens_details": { "reasoning_tokens": 0 },
"cost": 0.01895
},
"nymbot": {
"balance": "pro",
"charged_credits": 0.162,
"charged_sats": 16.2,
"balance_credits": 412.425,
"balance_sats": 41242.5
}
}
finish_reason ua hana ʻia mai mai ka mea i huli mai, no ka mea ʻoi loa ka ʻole o ka hōʻike ʻana a nā mea kūʻai: tool_calls i ka manawa i nīnau ai ka pūnaewae i nā mea hana, length i ka manawa
i hoʻohana ʻia ai nā huna ʻōlelo a pau i koʻikoʻi ʻia (a i ʻole ua hoʻohana ʻia a pau e ka mahele ʻana a ʻaʻole i kākau ʻia he
pane), content_filter i ka wā i kūʻē ai ka mea kūʻai, a me stop
inā ʻole. usage.completion_tokens_details.reasoning_tokens he 0 mau loa: huna
ua nui ʻia nā ʻōlelo hoʻohāpai manaʻo, a ʻaʻahu ʻia, i completion_tokens.
| Kālele | ʻAeʻe? |
|---|---|
400 | ʻAʻole model aʻole messages (missing_required_parameter); he ʻāpana ʻauʻau a i ʻole failu, a i ʻole nā kiʻi no kekahi moʻielelo ʻaʻole hiki iā ia ke ʻike iā lākou (unsupported_content); ʻoi aku ma mua o nā kiʻi ʻumu kūmālua (too_many_images); he papa kumu kipaʻi o ka ʻano hewa a i waho o ke kau (invalid_value); he loulou kiʻi ʻaʻole ia ʻike ʻia e ka lehuleʻu (invalid_image_url); mau mea hana ma luna o kahi kumu i hiki ʻole iā ia ke koho iā ia (unsupported_tool); n akau ʻole i ka 1; a :thinking helu i hope o kahi kumu i ʻole i hiki ke nānā pono i ka manaʻo (model_not_found); a i ʻole ua loaʻa ka ʻole ʻia o ka noi ʻia ʻia e ka mea ʻoaʻo (upstream_rejected). |
402 | ʻAʻole hiki i ka pūlua e hoʻohana ʻia e ka mōʻaukala ke kūkulu i ka hoʻomau ʻana. |
403 | ʻAʻole kūpono ka mea paha loa i ka pākaukau o ka pā ʻīmekalima (key_limit_reached). Haʻawale ake max_tokens e hoʻonui i ka nui ʻole. |
404 | ʻAʻole he moʻielele kēlā inoa (model_not_found). |
429 | Ke nui o ka pūnaewae o ka pūnaewae waiwai, a i ʻole ka mea kūʻai (upstream_rate_limited). |
502, 503 | Ua hāʻule ka mea kūʻai ʻia (upstream_error) a i ʻole ua piha loa (upstream_overloaded, me Retry-After). ʻAʻole e lawe i kālā i kekahi mea inā ʻaʻole ka mea kūʻai i kālā i ka hoʻāʻo ʻana. |
Ke loko ʻia nei nā helu waiwai (status codes) i loaʻa i kēlā me kēia pahuna ma loko o he hewa.
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": "system", "content": "Answer in one short paragraph."},
{"role": "user", "content": "What is a Lightning invoice?"}
],
"max_tokens": 400
}'
Python
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": "system", "content": "Answer in one short paragraph."},
{"role": "user", "content": "What is a Lightning invoice?"},
],
max_tokens=400,
)
print(reply.choices[0].message.content)
print(reply.usage.cost)
JavaScript
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: "system", content: "Answer in one short paragraph." },
{ role: "user", content: "What is a Lightning invoice?" },
],
max_tokens: 400,
});
console.log(reply.choices[0].message.content);
console.log(reply.usage.cost);
Hoʻowalele ʻana ʻana loauna
Me "stream": true ua loaʻa ka pane ma o nā hana ʻia mai ka mea hana (server-sent events) i ka wā e kākau ai ka kumu kōkua. ʻO kēlāmeia ʻe ʻeia kahi... chat.completion.chunk ma kahi data: lua, a ka
hoʻopau ʻana o ka wai o ka mea data: [DONE]. ʻO ka noʻonoʻo e hiki mai nei i
delta.reasoning_content, ka pane ma delta.content.
E kīkē i kēlā apu ʻole i ʻoi aku ma mua o nā sekoke 100, e like me ka pane lōʻihi, ka mea nui loa
max_tokens a he kumu noho manaʻo. ʻO ka noi ʻaʻole i hoʻouna ʻia ma ke ʻano he stream, ʻaʻole e hoʻouna i kekahi mea hiki i ka hopena ʻana o ka pane, a hiki i ka lala i ka hopena ʻana o ka pilina ma waena o ʻoe a me Nymbot ma hope o nā sekole 100; e koho mau ka kumu manaʻo a e pili ka uku i ka mea i kākau ʻia, akā e poina ka pane. ʻO ka stream, e hoʻouna ia i nā ʻōlelo kōkua, no laila e mau ana ka pilina no ka manawa a hiki i ka kumu manaʻo i kākau ai.
Ka ʻauhau
data: {"id":"chatcmpl-5f1c0a9e27d84b3c","object":"chat.completion.chunk","created":1790726400,"model":"anthropic/claude-sonnet-5","choices":[{"index":0,"delta":{"role":"assistant","content":""},"finish_reason":null}]}
data: {"id":"chatcmpl-5f1c0a9e27d84b3c","object":"chat.completion.chunk","created":1790726400,"model":"anthropic/claude-sonnet-5","choices":[{"index":0,"delta":{"content":"A Lightning invoice"},"finish_reason":null}]}
: keep-alive
data: {"id":"chatcmpl-5f1c0a9e27d84b3c","object":"chat.completion.chunk","created":1790726400,"model":"anthropic/claude-sonnet-5","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]}
data: {"id":"chatcmpl-5f1c0a9e27d84b3c","object":"chat.completion.chunk","created":1790726400,"model":"anthropic/claude-sonnet-5","choices":[],"usage":{"prompt_tokens":1240,"completion_tokens":380,"total_tokens":1620,"cost":0.01895},"nymbot":{"balance":"pro","charged_credits":0.162,"charged_sats":16.2,"balance_credits":412.425,"balance_sats":41242.5}}
data: [DONE]
- Nā lina e hoʻomaka ana me
:He mau manaʻo hoʻomau ʻia, e hoʻouna ʻia i kēlā me kēia 15 sekane i ka wā e noʻonoʻo nei ka mākena. Nānā ʻole ʻia e nā mea loaʻa SSE. - Nā pāheaʻi i hiki ke nānā ʻia
"stream_options": {"include_usage": true}no ka mea e loaʻa ai ka ʻāpana hope ma luna, me ka ʻole o he mea fulumālumāchoices, nā helu token, ke kumuwaiwai a me kanymbotmea mea - E hoʻonohonoho ʻia ka uku i loko o ka hopena ʻana o ka loli ʻana o ka ʻike. Inā hāʻawi ʻoe i ka hoʻopoki ʻana i ka wā i mua o ka hopena, ʻaʻole hoʻopau ʻia ka mōʻaukala: e heluhelu ana ʻaʻo Nymbot i ka hope loa o ka loli ʻana o ka mea loaʻa, no ka hiki ʻana i ka 25 sekole, no ka loaʻa ʻana o kāna nui kumu, a e uku ʻoe i ka mea i hōʻike ʻia e ka mea loaʻa. ʻEmia ʻole kēlā nui, e nānā ʻia ka uku ma o kāu mea i hāʻawi ʻia me ka mea i kākau ʻia, me ka hoʻemi ʻia i ka nui o ka ʻāpana ʻāpana no kahi mōʻaukala e nānā pono ana.
- He hemea ma mua o ka ʻana mua loa, e like me
401aʻole402, e hoʻi mai ana ma ke ʻano he JSON maʻamau me kona kumu helu waiwai, ʻaʻole ma ke ʻano he stream. He he ma hope o ka hoʻomaka ʻana o ka stream e hiki mai ana ma ke ʻano he hope loadata: {"error": {…}}ka hana, a pau ka pānaia me ka ʻole o[DONE]. - ʻO nā ulu ʻia me nā mea hana, a me nā mōlekele ma luna o ka hoʻouna ʻana i nā pane o OpenAI, ʻaʻole hoʻouna ʻia ma ke ʻano he ʻōlelo mokuʻāuluhi mai ka mea hoʻolako. Eia naʻe, e pane lākou me kahi mokuʻāuluhi kūpono, i hoʻouna ʻia i ka pau ʻana o ka pane.
cURL
curl -N https://nymbot.ai/api/v1/chat/completions \
-H "Authorization: Bearer $NYMBOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "nymbot/auto",
"stream": true,
"stream_options": {"include_usage": true},
"messages": [{"role": "user", "content": "Write a haiku about sats."}]
}'
Python
import os
from openai import OpenAI
client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])
stream = client.chat.completions.create(
model="nymbot/auto",
stream=True,
stream_options={"include_usage": True},
messages=[{"role": "user", "content": "Write a haiku about sats."}],
)
for chunk in stream:
if chunk.choices:
print(chunk.choices[0].delta.content or "", end="", flush=True)
elif chunk.usage:
print("\ncost:", chunk.usage.cost)
JavaScript
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });
const stream = await client.chat.completions.create({
model: "nymbot/auto",
stream: true,
stream_options: { include_usage: true },
messages: [{ role: "user", content: "Write a haiku about sats." }],
});
for await (const chunk of stream) {
if (chunk.choices.length) process.stdout.write(chunk.choices[0].delta.content || "");
else if (chunk.usage) console.log("\ncost:", chunk.usage.cost);
}
Mau ʻana mea hana
Hoʻomākāka i nā hana i tools a hiki i ka mōʻikele ke noi i kekahi mea e wehe ʻia ai ma mua o ka pane ʻana. E neʻe ʻia e ʻoe ka ʻoihana, e hoʻāpana i kona hopena ma ke ʻano he tool ka memo me ka like ʻana
tool_call_id, a hoʻouna i ka kamaʻilio hou. ʻAʻole Nymbot e neʻe i nā hana o ka mea e ʻōlelo nei;
e hoʻihoʻi ia i ke noi o ka mōʻaukala i mua o ʻoe.
tool_choice loaʻa "auto", "none",
"required" aʻole {"type": "function", "function": {"name": "…"}}.
Ke lālā o nā māhele e hōʻike ana i nā māhele e hiki ai ke hui me nā mea hana (capabilities.tools). He mau mea hana nā
ʻole ʻia me 400 unsupported_tool luna nymbot/auto a me
ka i ʻole nā kumu papa inoa i neʻe nei ma luna o ka hoʻouna ʻana a OpenAI, ʻaʻole hiki iā Nymbot ke hoʻouna i nā mea hana
Me "stream": true, he noiʻi me nā mea hana e halalu ana i kahi ʻāpana hoʻokahi a e hoʻouna ʻia pēlā ma hope i loko o kahi loulou kapi kānaka: ka lele, kahi kapi e hōʻike ana i kēlā me kēia kāhea mea hana me kona helu, id, inoa a me nā ʻōlelo hoʻohana, a me ka kapi hope. Nā mea heluhelu i nā kāhea mea hana i hoʻouna ʻia ma ke ʻano he streaming e kākoʻo ana iā ia e like me ka mea maʻamau.
Ka pane, i kēia ʻāpana
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": null,
"tool_calls": [
{
"id": "call_7d2e",
"type": "function",
"function": { "name": "get_invoice_status", "arguments": "{\"invoice_id\":\"a41f\"}" }
}
]
},
"finish_reason": "tool_calls"
}
]
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": "Has invoice a41f been paid?"}],
"tools": [{
"type": "function",
"function": {
"name": "get_invoice_status",
"description": "Look up whether an invoice is paid.",
"parameters": {
"type": "object",
"properties": {"invoice_id": {"type": "string"}},
"required": ["invoice_id"]
}
}
}]
}'
Python
import json, os
from openai import OpenAI
client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])
tools = [{
"type": "function",
"function": {
"name": "get_invoice_status",
"description": "Look up whether an invoice is paid.",
"parameters": {
"type": "object",
"properties": {"invoice_id": {"type": "string"}},
"required": ["invoice_id"],
},
},
}]
messages = [{"role": "user", "content": "Has invoice a41f been paid?"}]
reply = client.chat.completions.create(model="anthropic/claude-sonnet-5", messages=messages, tools=tools)
call = reply.choices[0].message.tool_calls[0]
args = json.loads(call.function.arguments)
messages.append(reply.choices[0].message)
messages.append({"role": "tool", "tool_call_id": call.id, "content": json.dumps({"paid": True})})
final = client.chat.completions.create(model="anthropic/claude-sonnet-5", messages=messages, tools=tools)
print(final.choices[0].message.content)
JavaScript
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });
const tools = [{
type: "function",
function: {
name: "get_invoice_status",
description: "Look up whether an invoice is paid.",
parameters: {
type: "object",
properties: { invoice_id: { type: "string" } },
required: ["invoice_id"],
},
},
}];
const messages = [{ role: "user", content: "Has invoice a41f been paid?" }];
const reply = await client.chat.completions.create({ model: "anthropic/claude-sonnet-5", messages, tools });
const call = reply.choices[0].message.tool_calls[0];
const args = JSON.parse(call.function.arguments);
messages.push(reply.choices[0].message);
messages.push({ role: "tool", tool_call_id: call.id, content: JSON.stringify({ paid: true }) });
const final = await client.chat.completions.create({ model: "anthropic/claude-sonnet-5", messages, tools });
console.log(final.choices[0].message.content);
Nā kiʻi i loko o kahi noi
Nā kumu me capabilities.vision hiki ke heluhelu i nā kiʻi. Hoʻemi i he uila... image_url
mokupuni o ka ʻōlelo o ka mea hoʻohana, me ka ʻole he mea hāʻawi ia i ka lehulehu https:// pūnaewae a i ʻole a
data:image/…;base64, URL. Hiki i nā kiʻi he 20 no kēlā me kēia ʻimi ʻana.
ʻAʻole loaʻa nā kiʻi SVG, a ʻaʻole loaʻa pū kekahi lālā ʻoi aku ma mua o nā helu 4,096 a i ʻole kekahi lālā i loaʻa ai kahi inoa papahana a i ʻole mea huna
(400 invalid_image_url). He mea koho detail he
auto, low aʻole high.
Me nymbot/auto, he noiʻi me kahi kiʻi ma loko i hoʻouna ʻia i kahi māhele kikoʻī e hiki ai ke ʻike. He māhele puke ʻōlelo ʻole capabilities.vision ʻaʻole e ʻae i nā kiʻi me
400 unsupported_content. ʻO nā kiʻi wale nō e hiki ai i loko o nā memo a ka mea hoʻohana. Pono e kau ʻia ka lālā i kahi hale kūnoho uila lehulehu; ke hoʻouna nei ʻo Nymbot i ka kiʻi i ka mea hoʻolako i ka moka a ʻaʻole e mālama i ia.
He kiʻi ka mea e uku ʻia ai e like me nā pūʻelo i hāʻawi ʻia i ka mea kūʻai, e like me ka nui o ka makemake.
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": [
{"type": "text", "text": "What is in this picture?"},
{"type": "image_url", "image_url": {"url": "https://example.com/receipt.jpg"}}
]
}]
}'
Python
import base64, os
from openai import OpenAI
client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])
with open("receipt.jpg", "rb") as f:
data_url = "data:image/jpeg;base64," + base64.b64encode(f.read()).decode()
reply = client.chat.completions.create(
model="anthropic/claude-sonnet-5",
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "What is in this picture?"},
{"type": "image_url", "image_url": {"url": data_url}},
],
}],
)
print(reply.choices[0].message.content)
JavaScript
import { readFile } from "node:fs/promises";
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });
const dataUrl = "data:image/jpeg;base64," + (await readFile("receipt.jpg")).toString("base64");
const reply = await client.chat.completions.create({
model: "anthropic/claude-sonnet-5",
messages: [{
role: "user",
content: [
{ type: "text", text: "What is in this picture?" },
{ type: "image_url", image_url: { url: dataUrl } },
],
}],
});
console.log(reply.choices[0].message.content);
Manaʻo ʻana
Nā kumu me capabilities.reasoning hiki ke noʻonoʻo ma mua o ka pane ʻana. E nānā i ka nui a i ʻole ka ʻole me reasoning_effort ("minimal", "low",
"medium" aʻole "high") a i ʻole "reasoning": {"effort": "high"}, a
hoʻemi :thinking i ka inoa o ka mōlekele, ʻo ia ka manaʻo he hana nui. Ma luna o kahi mōlekele ʻole
i ka noʻonoʻo ʻana, ʻaʻole e nānā ʻia ka hoʻonohonoho. Me nymbot/auto, :thinking hoʻouna i ka
lele i ke ala hana no ka noʻonoʻo maʻamau.
Ma nā moʻielelo Anthropic, e lilo ana ka hoʻāʻo i he nui no ka noʻonoʻo e like me nā 1,000, 2,000, 8,000 a i ʻole nā 16,000 i ʻole nā token, ʻaʻole i ka nui aʻe max_tokens a'ole hiki. ʻO ka noʻonoʻo ka mea i waiho ʻia i waho i ka wā e...
tool_choice hoʻokaʻawale i kekahi mea hana, a i ka wā e hahai ana ka noiʻi i kahi hālāwai mea hana (ʻo kona ʻōlelo hope kekahi hopena mea hana), no ka mea pono Anthropic i ka noʻonoʻo i hōʻike ʻia i mua no ka hoʻomau ʻana iā ia.
He mau kuleana pēlā nō ma nā hopuna Responses a me Messages.
He hele mai nei ka manaʻoʻioʻio message.reasoning_content, a
delta.reasoning_content i ka holo ʻana o ka māhele ʻana ʻana, ʻaʻole paha i hoʻoponopono ʻia i loko o ka pane. ʻO ka nānā ʻana i ka mea i hana ʻia ka mea ʻōlelo a ʻo ia ke kumu o ka uku, ma lalo o kēlā, ma loko completion_tokensʻAʻole kekahi mau mea kūpaʻa e hoʻihoʻi mai ana i ka ʻōlelo ʻano kumu ʻole loa, a e loaʻa nō i kēlā pū kekahi uku.
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",
"reasoning_effort": "high",
"messages": [{"role": "user", "content": "Is 2^61 - 1 prime? Show why."}]
}'
Python
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",
reasoning_effort="high",
messages=[{"role": "user", "content": "Is 2^61 - 1 prime? Show why."}],
)
message = reply.choices[0].message
print(getattr(message, "reasoning_content", None))
print(message.content)
JavaScript
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",
reasoning_effort: "high",
messages: [{ role: "user", content: "Is 2^61 - 1 prime? Show why." }],
});
console.log(reply.choices[0].message.reasoning_content);
console.log(reply.choices[0].message.content);
Nā hopu hope o ka māhele
He ʻāpunā ma luna o ka inoa o ke kumu alakaʻi e loli ai ka hana ʻana i ka noi, me ka ʻole o kekahi laina hou.
Hana pū lākou ma nā id kūpono a me nā inoa pōkole pū kekahi, e like me anthropic/claude-sonnet-5:online.
| Hoʻopili ʻōlelo | Loea |
|---|---|
:online | E ʻimi mua i ka pūnaewele, e like me plugins: [{"id": "web"}]. ʻIke ʻimi web. |
:thinking | ʻO ka hana loea nui; on nymbot/auto, ke ala o ka manaʻo ʻana. Ma luna o kahi māhele i hiki ʻole ke manaʻo, 400 model_not_found me “ʻaʻole i loaʻa nā hopena”. |
:nitro, :floor, :exacto, :extended | Ua ʻae ʻia a ʻaʻole i manaʻo ʻia pū. ʻO ke ala ʻamua o kēlā ʻameia katalog, no laila ʻaʻole he ala wikiwiki, haʻahaʻa, a i ʻole lōʻihi aʻe e koho ai; ua ʻae ʻia nā hopu i hope i hiki ai ke hana mau nā inoa ʻameia i hoʻopaina mai nā lawelawe ʻē aʻe. |
ʻAʻohe suffix ʻē aʻe e loaʻa ʻia. Hoʻāʻo ʻia ka inoa holoʻokoʻa ma mua loa, no laila e hana mau ana ka mea kahu i ka mea i loaʻa nā ʻikepili i loko o kona id i ka pūnaewele; inā ʻole, e wehe ʻia nā suffix mai ka hope ma o ka hana ʻana i kēlā me kēia manawa hiki ʻole i ka mea kahu e loaʻa ai. Hiki i ka inoa o ka mea kahu ke loaʻa i ka nui ʻana i nā helu 200 me ka ʻaneʻane he 4 nā suffix; ʻo ka mea lōʻihi aʻe nō, e kūʻē ʻia ʻia me 400 invalid_value.
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:thinking",
"messages": [{"role": "user", "content": "Plan a three-day trip to Lisbon."}]
}'
Python
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:thinking",
messages=[{"role": "user", "content": "Plan a three-day trip to Lisbon."}],
)
print(reply.choices[0].message.content)
JavaScript
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:thinking",
messages: [{ role: "user", content: "Plan a three-day trip to Lisbon." }],
});
console.log(reply.choices[0].message.content);
ʻOlea web
Hiki i kēlā me kēia ʻano kamaʻilio ke pane mai ma luna o ka pūnaewele i luna nei. ʻImi nei ʻo Nymbot i ka ʻōlelo hope loa o ka mea hoʻohana (ka 2,000 ka helu mua o kēlā ʻōlelo), heluhelu i nā ʻaoʻao maikaʻi loa a hāʻawi iā ia i ka ʻano kamaʻilio me ka nīnau, i mākena ʻia me he mea ʻē mai ka ʻike e ʻole pono e loaa nā ʻōlelo aʻo mai. He ʻelua nā ʻano:
- Nāmea i ka ʻimi mau loa:
"plugins": [{"id": "web", "max_results": 5}], a i ʻole a:onlineka pōmaikaʻi ma luna o ke kumu. - ʻImi i ka manawa e kōkua ai:
"tools": [{"type": "web_search", "parameters": {"max_results": 5}}], me kēia ʻae ʻia ma ke ʻano heweb_search_previewaʻoleopenrouter:web_search. Nymbot e ʻimi wale ana i ka wā e hāʻawi ana ka nīnau i ka manaʻo e pono ai i ka ʻike hou, ka loina pēlā e hoʻohana ai ka polokalamu.
max_results ʻO 5 ka mea maʻamau a ʻaʻole hiki i ka 10 i mea nui loa. Hele mai nā kumu i mea ʻoiaʻiʻo
nymbot.web_search.sources, aʻo pau me he... title, snippet a
url, a me url_citation nā hōʻike ʻana ma luna o ka memo.
ʻO kēlā ʻana ʻana i ka ʻimi a pau e hana ana, ʻo ia ʻo $0.008 ka luna, i hoʻololi ʻia i nā sats, ma luna o nā token, a he ʻāpana ia o ka mālama ʻana. ʻO nā ʻaoʻao i heluhelia ʻia pū nā token i hoʻohana ʻia, no laila, ʻo ka pane mai mai ka pūnaewele ka nui o ka kumuwaiwai ma mua o ka nīnau ʻana i kēlā ʻana pūpū ʻole, he nui kekahi manawa ma mua o ka mea i kū, he nui kekahi manawa i luna o ka mea i kū.
Ka pane, i kēia ʻāpana
"nymbot": {
"balance": "pro",
"charged_credits": 0.431,
"charged_sats": 43.1,
"balance_credits": 411.994,
"balance_sats": 41199.4,
"web_search": {
"sources": [
{ "title": "Lightning Network - Wikipedia", "snippet": "The Lightning Network is a payment protocol...", "url": "https://en.wikipedia.org/wiki/Lightning_Network" }
]
}
}
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",
"plugins": [{"id": "web", "max_results": 5}],
"messages": [{"role": "user", "content": "What changed in the latest Bitcoin Core release?"}]
}'
Python
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": "What changed in the latest Bitcoin Core release?"}],
extra_body={"plugins": [{"id": "web", "max_results": 5}]},
)
print(reply.choices[0].message.content)
for source in reply.model_extra["nymbot"]["web_search"]["sources"]:
print(source["url"])
JavaScript
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",
plugins: [{ id: "web", max_results: 5 }],
messages: [{ role: "user", content: "What changed in the latest Bitcoin Core release?" }],
});
console.log(reply.choices[0].message.content);
for (const source of reply.nymbot.web_search.sources) console.log(source.url);
Pāʻea API
Ka papa kumu hou a OpenAI, e hoʻohana ʻia e ka OpenAI Agents SDK a me Codex. E neʻe ana ia ma luna o nā pūnaewele pūnaewele, ka uku ʻana, a me nā mea kōkua e like me ka Chat Completions.
POST https://nymbot.ai/api/v1/responses — pono i ka API key.
| Māhele | ʻOlelo | Pono | Kāʻano |
|---|---|---|---|
model | lele | ʻAe | No Nā Hoʻopukapuka Kamaʻilio, me nā hopuna pū ʻia. |
input | inoa a he papa ʻoiaʻiʻo? | ʻAe | He lālā, a he papa mea: nā leka (hauna user, assistant, system, developer) me input_text, input_image a output_text mau kīwī, a me function_call a function_call_output nā mea no nā mea hana. input_image uke i kekahi image_url pili a i ʻole URL ʻikepili, ʻaʻole he ʻālena faila. reasoning a web_search_call ua nalo nā mea; item_reference ʻaʻole i loaʻa. |
instructions | lele | ʻAʻole | Nā ʻano hoʻopunipuni o ka ʻōlelo ʻōpala. |
max_output_tokens | helu pololei | ʻAʻole | Nā hua ʻōlelo nui loa e kākau ai. |
temperaturetop_p | helu | ʻAʻole | Nā hoʻohālikelike kānāwai, tempat e ʻae ʻia ai e ka ʻano. |
toolstool_choiceparallel_tool_calls | papa, huaʻōlelo, a i ʻole papa hana, ʻoia paha ʻo ʻoia true a ʻoia paha false | ʻAʻole | Nā mea hana hana, ma loko o ka mau ʻano ʻāpana ({"type": "function", "name": …, "parameters": …}). A web_search aʻole web_search_preview hele ka mea hana ʻimi web inā kōkua ia. He mau mea hana kūloko ʻē aʻe i kūʻē ʻia. |
reasoning | mea ulu | ʻAʻole | {"effort": "minimal" | "low" | "medium" | "high"}. xhigh a max manaʻo high; none ʻO ia ka mea e huli ai i ka hiki ʻole. |
text.formatresponse_format | mea ulu | ʻAʻole | Hoʻonohono ʻia ka huakaʻi, e like me kahi JSON schema a json_object. |
metadata | mea ulu | ʻAʻole | Hoʻi mai i ka mevwāhewa ʻole i ka pane ʻana. Ka nui loa ʻo 16 nā lālani hua, nā pūnaewele hiki i ka 64 mau helu a me nā waiwai hiki i ka 512. |
stream | pōʻolea | ʻAʻole | E hoʻouna i nā hana e wehewehe ʻia nei aʻe. |
store | pōʻolea | ʻAʻole | ʻAʻole i manaʻo ʻia. ʻAʻole i hoʻopunipuni ʻia kekahi mea, a ʻo ka pane mau loa ʻo "store": false. |
previous_response_idconversationbackground | inoa, mea mea, ʻoiaʻiʻo ʻole | ʻAʻole | ʻAʻole kākoʻo ʻia: 400 unsupported_parameter. ʻAʻole mālama ʻia nā pane, no laila e hoʻouna i ka hui pū ʻana holoʻokoʻa i loko input i kēlā me kēia manawa. |
A'ohe mea pane
{
"id": "resp_8c1e4b0f9a2d4e61",
"object": "response",
"created_at": 1790726400,
"status": "completed",
"model": "anthropic/claude-sonnet-5",
"output": [
{
"type": "message",
"id": "msg_2b7f",
"role": "assistant",
"status": "completed",
"content": [{ "type": "output_text", "text": "A Lightning invoice is...", "annotations": [] }]
}
],
"output_text": "A Lightning invoice is...",
"usage": {
"input_tokens": 1240,
"input_tokens_details": { "cached_tokens": 0 },
"output_tokens": 380,
"output_tokens_details": { "reasoning_tokens": 0 },
"total_tokens": 1620
},
"incomplete_details": null,
"error": null,
"instructions": null,
"store": false,
"previous_response_id": null,
"metadata": {},
"nymbot": { "balance": "pro", "charged_credits": 0.162, "charged_sats": 16.2, "balance_credits": 412.425, "balance_sats": 41242.5 }
}
Lilo aku ka unuhi mea hana i nā... output ma ke ʻano he function_call mea me ka
call_id, name a arguments; hoʻouna i ka hopena e like me kahi a
function_call_output mea me kēia ʻole call_id. Ka manaʻo ʻana, i ka wā e
hoʻi mai ai ka
mālama ʻana, he reasoning mea me ka reasoning_text ka mea waiwai,
luna mua. status he incomplete I ka manawa e pā mai ai ka pane
max_output_tokens a i ʻole ka mea hoʻolako i ʻae, me
incomplete_details.reason hoʻonohono ʻia i max_output_tokens aʻole
content_filter. Ke hōʻike pū ana ka pane i nā hoʻonohonoho o ka noiʻi (hāmelihamela,
me nā mea hana, ke koho ʻana i ka mea hana a me nā mea ʻē aʻe) e like me OpenAI, a i ka mea i hōʻea ai nymbot kumuhana
mea kānaka.
He unu ʻia, ʻo kēlāmeia kēlā mea hana he... event: pae me e data: lua me ka a
sequence_number, ma kēia loaʻa: response.created,
response.in_progress, response.output_item.added,
response.content_part.added, he nui i kēlā me kēia response.output_text.delta,
response.output_text.done, response.content_part.done,
response.output_item.done, a i ka hope loa response.completed me ka
ka ʻana noho a me ke kumuwaiwai. ʻO ka pane i kapa ʻia pōkole he hopena ʻia me response.incomplete ma mua o ia, a he
hapai ʻole ma hope o ka hoʻomaka ʻana o ka pāʻa me response.failed. He mea kikoʻī pono ia
me ka ʻike ʻana response.reasoning_text.delta a .done. Nānā i nā ʻano hana
hele mai ma hope o ka ʻōlelo, ʻo ia aʻoʻao ʻia me nā mea me ka response.function_call_arguments.delta
a .done.
| Kālele | ʻAeʻe? |
|---|---|
400 | ʻAʻole model aʻole input; previous_response_id, conversation, background a ʻo ia item_reference (unsupported_parameter); he mea hana a i ʻole he ʻano mea kūpono ʻole. |
402, 403, 404, 429, 502, 503 | No nā Chat Completions. |
cURL
curl https://nymbot.ai/api/v1/responses \
-H "Authorization: Bearer $NYMBOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic/claude-sonnet-5",
"instructions": "Answer in one short paragraph.",
"input": "What is a Lightning invoice?"
}'
Python
import os
from openai import OpenAI
client = OpenAI(base_url="https://nymbot.ai/api/v1", api_key=os.environ["NYMBOT_API_KEY"])
response = client.responses.create(
model="anthropic/claude-sonnet-5",
instructions="Answer in one short paragraph.",
input="What is a Lightning invoice?",
)
print(response.output_text)
JavaScript
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://nymbot.ai/api/v1", apiKey: process.env.NYMBOT_API_KEY });
const response = await client.responses.create({
model: "anthropic/claude-sonnet-5",
instructions: "Answer in one short paragraph.",
input: "What is a Lightning invoice?",
});
console.log(response.output_text);
Nā ʻōlelo Anthropic
Ka papa Luna o Anthropic, no nā Anthropic SDKs a me Claude Code. Hana ʻo ia me kēlā me kēia ʻano kumu ma loko o ka papa inoa, ʻaʻole wale nō ʻo Claude: hoʻohua ʻia ka noiʻi, hele ʻia ma o ka pipeline pēnei paha, a hoʻohua hou ʻia i ka huna ʻia.
POST https://nymbot.ai/api/v1/messages — pono i kahi API key, no ka mea x-api-key aʻole Authorization: Bearer.
Ka anthropic-version a anthropic-beta kaulana ʻia ʻia nā loea a
olelo ʻole ʻia. Hoʻoponopono ʻia nā inoaahana Anthropic i ka puke inoa, no laila e hana ana ʻa Claude Code a me nā SDK me
kauna i ulu nei:
- He inoa i ʻike ai ka katalogu, e like me
claude-sonnet-5aʻoleanthropic/claude-opus-5, hoʻohana ʻia pēlā wale nō. - Aʻole ʻole he lā (
-20260514),-latest, he ʻano mānoa e like me-v1, he ʻōlelo i loko o ka pāpā e like me[1m]me kekahianthropic/aʻoleanthropic.ua wehe ʻia nā prefix, a ua kōkua ʻia nā pōkole a me nā lalo i ka mālama ʻana i ka ʻano (claude-haiku-4-5noi mea loaʻaclaude-haiku-4.5). - Inā ʻole lā ʻia kekahi mea, e hoʻohana ʻia ana ka ʻohana (Opus, Sonnet a i ʻole Haiku), inā wale nō like pū a i ʻole hou aʻe ka mālama o ka puke inoa ma mua o ka mea i noi ʻia.
- He inoa ʻole i mea e like ai e hoʻi mai ana
404not_found_error.
| Māhele | ʻOlelo | Pono | Kāʻano |
|---|---|---|---|
model | lele | ʻAe | He ʻano katalog id, a he inoa ʻano Anthropic. |
max_tokens | helu pololei | ʻAe | Nā hua ʻōlelo nui loa e kākau ai. |
messages | papa lālā | ʻAe | user a assistant mea huli, me text, image (base64 a ʻole ka puna URL), tool_use a tool_result mau pā luna. thinking A ʻae ʻia a ʻole ʻole nō nā ʻaoʻao mai nā loli mua. |
system | inoa a he papa ʻoiaʻiʻo? | ʻAʻole | Kumu ʻōlelo o ka polokalamu, ma ke ʻano he huaʻōlelo a i ʻole mau pākuʻe ʻōlelo. |
temperaturetop_p | helu | ʻAʻole | Nā hoʻohālikelike kānāwai, tempat e ʻae ʻia ai e ka ʻano. top_k ua loaʻa a ua hoʻolele ʻia. |
stop_sequences | papa hua huaʻōlelo | ʻAʻole | Heluhelu e hope ai i ka pane. He mau hua ʻupena ʻeiahi ʻole i ka 4, ʻo ia apau he 256 mau hua ʻupena ʻeiahi ʻole. |
toolstool_choice | papa, mea | ʻAʻole | Maupau me nā mea hana name, description a input_schema. A web_search kele ka mea hana server ʻimi web; ʻO nā mea hana ʻia i loko ʻa Anthropic ʻehui ʻē aʻe (bash, text editor, computer use) ua kūʻole ʻia me unsupported_tool. tool_choice loaʻa auto, any, tool aʻole none, a me disable_parallel_tool_use. |
thinking | mea ulu | ʻAʻole | {"type": "enabled", "budget_tokens": 8192}, {"type": "adaptive"} aʻole {"type": "disabled"}Ke koho ka kālā i ka haʻawina: i lalo o 2,048 ʻo ia ka ʻoihana ʻole, mai 2,048 ka ʻoihana ʻo ia ʻo ia ʻole, mai 8,192 ka ʻoihana maumau, mai 16,384 ka ʻoihana nui. ʻO ka Hoʻololi ʻana e hoʻohana nei output_config.effort, a lalo. |
stream | pōʻolea | ʻAʻole | Hoʻokuʻu ma ka faʻano hana ʻana o Anthropic. |
metadata | mea ulu | ʻAʻole | A ʻae ʻia a ʻole i mālama ʻia. |
A'ohe mea pane
{
"id": "msg_01c7a2f93e5b4d08",
"type": "message",
"role": "assistant",
"model": "anthropic/claude-sonnet-5",
"content": [{ "type": "text", "text": "A Lightning invoice is..." }],
"stop_reason": "end_turn",
"stop_sequence": null,
"usage": {
"input_tokens": 1240,
"output_tokens": 380,
"cache_read_input_tokens": 0,
"cache_creation_input_tokens": 0
},
"nymbot": { "balance": "pro", "charged_credits": 0.162, "charged_sats": 16.2, "balance_credits": 412.425, "balance_sats": 41242.5 }
}
content hiki pū ke kūʻai tool_use nā pūlama a me a thinking
kūpaʻa, ʻo wai nā mea signature he ʻole. stop_reason he
end_turn, max_tokens, tool_use aʻole refusal,
hālāwai pēlā i ka hana ʻana i like ke ʻano me finish_reason luna
Nā Hoʻopukapuka Kamaʻilio; stop_sequence he mau loa
null, ʻoiai i ka hopena ʻana o ka pane ma o ka hopena ʻōlelo. input_tokens nā helu
ʻo ka mea hou wale nō; ʻo ka mea i loaʻa mua ʻia i loko o nā pahu kahu ʻelua. ʻO ke kumuwaiwai i loko o ka
nymbot ka mea a me ka X-Nymbot-Cost-Sats kokuaʻulu.
I ka hiki ʻana o ka lele ʻana, ʻo nā hana kēia ʻo Anthropic: message_start,
content_block_start, ping, content_block_delta
(text_delta, input_json_delta aʻole thinking_delta),
content_block_stop, message_delta me ka kumu i hope i hele, ka hoʻohana ʻana me
ka nymbot mea uku, a me message_stop. A ping e hoʻouna pū ʻia pū ʻia i kēlā me kēia 15 sekondu i ka wā e hana nei ka mālama ʻana i ka ʻano. ʻAe ʻia nā hōʻea pilikia ma hope o ka ʻōlelo, ʻo ia aʻo kekahi he
tool_use pāpā me kona pihi holoʻokoʻa i ka mea ʻekahi input_json_delta.
He hepono ma kēia endpoint e hoʻohana ana i ka papa ʻano o Anthropic:
{"type": "error", "error": {"type": "not_found_error", "message": "…"}}. He
loaʻa pōkole ʻo 402 billing_error, he mea hoʻolele ulu ʻia nā mea hana
503 overloaded_errorʻO ka hapahele ma hope o ka hoʻomaka ʻana o ka pāpā ʻana e hoʻouna ʻia
ma ke ʻano he error ka hana.
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": "What is a Lightning invoice?"}]
}'
Python
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": "What is a Lightning invoice?"}],
)
print(message.content[0].text)
JavaScript
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: "What is a Lightning invoice?" }],
});
console.log(message.content[0].text);
Nāu ʻana i nā token
He kānāwai e kaʻana ai i ka nui o nā inu puka (input tokens) e hoʻohana ʻia ana e ke ulu ʻōlelo Messages, i hiki ai i ka mea hoʻohana ke nānā ʻana ma mua o ka hoʻouna ʻana. ʻO ia he kūʻokoʻa, akā pono nō i kekahi pūnaewele (key).
POST https://nymbot.ai/api/v1/messages/count_tokens — pono i kekahi API key. Kā ʻole ka uku.
ʻOiʻole ka kino me ka... no... Nā Memo, ʻole max_tokens;
the model name has to resolve. The count is an estimate: the characters of the system prompt,
messages, tool calls and tool definitions divided by four, plus 1,600 for each picture. It is
not the provider's own tokenizer, so the real count can differ. A key that has reached its cap
can still use it.
A'ohe mea pane
{ "input_tokens": 318 }
cURL
curl https://nymbot.ai/api/v1/messages/count_tokens \
-H "x-api-key: $NYMBOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-5",
"messages": [{"role": "user", "content": "What is a Lightning invoice?"}]
}'
Python
import os
import anthropic
client = anthropic.Anthropic(base_url="https://nymbot.ai/api", api_key=os.environ["NYMBOT_API_KEY"])
count = client.messages.count_tokens(
model="claude-sonnet-5",
messages=[{"role": "user", "content": "What is a Lightning invoice?"}],
)
print(count.input_tokens)
JavaScript
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({ baseURL: "https://nymbot.ai/api", apiKey: process.env.NYMBOT_API_KEY });
const count = await client.messages.countTokens({
model: "claude-sonnet-5",
messages: [{ role: "user", content: "What is a Lightning invoice?" }],
});
console.log(count.input_tokens);
Ke wehe ʻana i nā kaila
Nā model a me nā generator a pau a ʻae ʻia e ka API, me kā lākou kumuwaiwai. Heluhelia ʻia ka papa inoa mai ka puke inoa ola pēlā pū me ka mea koho o ka polokalamu, no laila, he mea mau ia i ka mea e hana ai ka server.
GET https://nymbot.ai/api/v1/models — ʻaʻole pono he pohaku. Paʻa no nā minuke ʻelima.
GET /api/v1/models/{id} Hōʻike ʻia ka mea ʻekahi.
| Māhele | ʻOlelo | Pono | Kāʻano |
|---|---|---|---|
type | lālā (nānā) | ʻAʻole | chat (ka mea kumu), image, video, audio, embedding aʻole all. Hiki ke hāʻawi ʻia nā hewai, e like me image,video. |
ʻO nā uku ka mea ʻoe e uku ai, me ka uku a me ke kūʻai nui i loko wale ʻia, ma nā dola a me nā satoshi ma ka uku Bitcoin o kēia manawa. balance e haʻi ana i ka loaʻa e hoʻohana ana ka ʻano.
nymbot_key Aia ka inoa pōkole o ka ʻano i loko o ka polokalamu. created he mau loa
0, no ka mea ʻaʻole i hoʻihoʻi ʻia e ka katalogu i ka manawa i hoʻokou ʻia ai kekahi māpele. He māpele me ka ʻole o nā uku token i hōʻike ʻia ʻia he nui ʻia ia per_request ma kahi.
nymbot/auto he mua mau loa, ke kūwaiwa ʻia ʻia ʻia ʻo ia ʻo variable, me he
routes Papa e hōʻike ana i nā uku o kēlā me kēia ala kūponopono. E papa inoa ana ia i ka ʻike a me ka manaʻo, akā
ʻaʻole nā mea hana.
GET /api/v1/models/{id} ua loaʻa i nā inoa a me nā inoa ʻē aʻe e like me kahi ʻike ʻimi, a hoʻihoʻi mai
i ka hoʻokentry no ka māhele i kūpono ai lākou.
A'ohe mea pane
{
"object": "list",
"data": [
{
"id": "anthropic/claude-sonnet-5",
"object": "model",
"type": "chat",
"owned_by": "anthropic",
"name": "Claude Sonnet 5",
"created": 0,
"context_length": 1000000,
"max_output_tokens": 64000,
"architecture": { "input_modalities": ["text", "image"], "output_modalities": ["text"] },
"supported_parameters": ["max_tokens", "temperature", "tools", "tool_choice", "reasoning", "response_format", "stop"],
"capabilities": { "vision": true, "video": false, "tools": true, "reasoning": true, "web_search": true },
"balance": "pro",
"pricing": {
"type": "per_token",
"currency": "USD",
"input_per_1M_tokens": 4.725,
"output_per_1M_tokens": 23.625,
"cache_read_per_1M_tokens": 0.4725,
"sats_input_per_1M_tokens": 4038,
"sats_output_per_1M_tokens": 20192
},
"description": "...",
"nymbot_key": "claude-sonnet"
}
]
}
Nā ʻano ʻēmi:
- Kiʻi a ʻole nā hoʻokomo i loaʻa
capabilities(accepts_image_url,requires_image_url,edit) a me kahi kuaiper_generation. - Wikihoʻihoʻike 🎥 a ʻole nā hoʻokomo i loaʻa
max_duration_secondsaresolutions, a me ke kumukūʻanaper_secondno kēlā me kēia hoʻohālikelike. - Leo a ʻole nā hoʻokomo i loaʻa
audio_typespeechaʻoletranscription, ke kumukūliaper_1k_charsaʻoleper_minute. - Hoʻohāpai ʻana a ʻole nā hoʻokomo i loaʻa
dimensions,context_length,max_inputsme ke kumukū o nā inoa ʻōlelo ʻumi kūmālima i ka pākaukau.
Ua hoʻoikaika ʻia nā uku "estimated": true He anomi nō ke anomi aʻe o ka polokalamu no kahi mea hana mea hiko ʻaʻole i hōʻike ʻia kona kumukūʻai. He mea ʻike ʻole ʻia. type hoʻihoʻi ʻia 400.
cURL
curl "https://nymbot.ai/api/v1/models?type=chat"
Python
import requests
models = requests.get("https://nymbot.ai/api/v1/models", params={"type": "chat"}).json()["data"]
for m in models:
print(m["id"], m["balance"], m["pricing"].get("input_per_1M_tokens"))
JavaScript
const res = await fetch("https://nymbot.ai/api/v1/models?type=chat");
const { data } = await res.json();
for (const m of data) console.log(m.id, m.balance, m.pricing.input_per_1M_tokens);