ናብ ትሕዝቶ ዘልል
ናብ Nymbot ተመለስኩ

መሰረት ፍልጠት ደቨሎፐራዊት (ኣልጋእ ስራሕ)

chat፣ ምላሾችን ከምሳዕላታት ጋር

ሰለስተ ኣገባብ ንሞዴል ነገር ክትሓትቱ፡ ኣብቲ ዓማልቲ ድሮ ዝዛረቡሉ ሰለስተ ቅርጺ፡ ኩሎም ኣብቲ ሓደ ሞዴል ዝሰርሑን ብተመሳሳሊ ኣገባብ ዝኸፍሉን።

መፍጻማታት መደብ (Chat Completions)

እቲ OpenAI ናይ ቻት ኣቀራርባ፣ ከምኡ እውን መሳርሒታት መብዛሕትኡ ግዜ ዘጠቐሙሉ ኣሰራርሓ። ክሳብ ሕጂ ዝተገብረ ርክብ ኣስተላልፉ ከምኡ እውን ነቲ ዝመጽእ መልእኽቲ ተቐበሉ።

POST https://nymbot.ai/api/v1/chat/completions — API key የኻበ perlu ኣሎ።

ብንጹህ model እና messages ተፈላጊ እዮም። ዝተመረፀ Modell ዘይወስዶ ናይ ናሙና ፓৰამეተር ብዘይ ምንም ጌጋ ይወለን inevitably፣ ስለዚ ሓደ ናይ መደብ (request body) ኣቀራርባ ኣብ ኩሎም ሞዴል ይቕጽል እዩ። እታ ዝርዝር ሞዴል ነፍሲ ወከፍ ሞዴልን... supported_parametersብምልአት እንይይ እንተኾነ፡ እቲ ሞዴል ብፍጹም ክትገብሮ ዘይኽእል ዝኾነ ነገር እዩ፡ ንኣብነት፡ ዘይምርኣይ ንዘይርእይ ሞዴል፡ ወይ ድማ ንዘይጥቀመሉ ሞዴል መሳርሒታት።

መስክጽሕፋትዝተሓለወመግለጺ
modelመመዝገቢ ክልልእወnymbot/auto (ወ] auto) ን Nymbot መስመር ኣውታር ኣብቲ መደበኛ ሚዛን፣ ወይ ድማ ከምቲ ናይ ካታሎግ ሞዴል መታወቂያ (id) ከም... anthropic/claude-sonnet-5 ኣብቲ Pro balance። ሓፈሻዊ ስምታትን መዓልታዊ ስምታትን እቲ ኣፕ እውን ይቕበል እዩ። ብa ክ završኑ ይኽእሉ እዮም መ finish (መ finish).
messagesኣሬይ (array)እወእቲ ንግግር። ኣደራታት system, developer (ከሲስተም ተቆጥሩ) user, assistant እና toolመተሓዊት (Content) ስትሪንግ ወይስ ዝርዝር እዩ። text እና image_url ክፋትታት; ምስሊ ጥራይ ኣብ መልእኽቲ ተጠቃሚ። input_audio ወይቲ ኣካላት ፋይል ድማ ተመርዲኦም ኣለዉ።
streamቡሊያንኣይፋልንመልሲ ከትብዮ ተጻይፉ ከመኣትዎ ስደቶ። ርአዮ ስትሪሚንግ.
stream_optionsኣካልኣይፋልን{"include_usage": true} ብቑጽሪ tokenታትን ዋጋን ዘጠቓለለ መወዳእታ ክፋል ይውስኽ።
max_tokens
max_completion_tokens
መሓዋሪ ቁጽሪኣይፋልንዝያዳ ዝተሓዘቡ ቶክንታት ንጽሓፍ። ካብቲ ናይ ሞዴሉ ዓብዪ መጠን ይበልጥ እንተኾይኑ፣ ናብቲ ዓብዪ መጠን ዝወርድ ይቕየር። እዚ ካብ ሚዛንካ (balance) ክትሕዝ ዝግበር መጠን እውን ይውስን፣ ስለዚ ንኣሽቶ ቁጽሪ ክትመረጽ እንተኾይኑ ንምጅማር ውዱኡ ክሬዲት የከታብል።
temperature
top_p
ቁጽሪኣይፋልንናሙና መቆጻጸርታት፦ temperature ካብ 0 ክሳብ 2፣ top_p ካብ 0 ክሳብ 1።
stopስትሪንግ ወይ ሓሳብ (array)ኣይፋልንመልሲ ዝዛዝም ጽሑፍ፡ ሓደ setString ወይ ብብዝሒ 4 strings፣ እትፍለጥ እትኸውን ግን 256 characters ዝኾኑ። ብዘይተረባ ተወሳሲ ኣይኮነን ብ... nymbot/auto.
seedመሓዋሪ ቁጽሪኣይፋልንእቲ ሞዴል ዘፍቅዶ ምስ ዝኸውን፣ ንተደጋጋሚ ምልዓኽ።
presence_penalty
frequency_penalty
ቁጽሪኣይፋልንመደጋገሚ ምቁጽራታት፣ እት እትም ካብ -2 ክሳብ 2።
response_formatኣካልኣይፋልን{"type": "json_object"} ወይ {"type": "json_schema", "json_schema": {…}}፣ እቲ ሞዴል ዝሰኻኸሉበት ቦታ። ብ... ኣይጥቀመሉን nymbot/auto.
tools
tool_choice
parallel_tool_calls
array፣ string ወይ ጽሑፍ ወይ object፣ booleanኣይፋልንተግባር ምግባር። ርአ። መሳርሒታት ትሕዝቶታት (tool calls). ኤ web_search መሳርሒ ይጅምላ ኣብ ኢንተርኔት ምድላይዓብዪ 128 መሳርሒታት ከምኡውን 512 KB ትርጉማት፣ ብ64 ንብርብር ዝተሰሪሑ፤ ዝያዳ እንተኾይኑ... 400.
reasoning_effort
reasoning
ስትሪንግ፣ ኦብጀክትኣይፋልን"minimal", "low", "medium" ወይ "high"፣ ወይ</h3> {"effort": "high"}. "none" ወይ {"enabled": false} ኣብለዓዮ። ርአ ምክንያታዊነት.
pluginsኣሬይ (array)ኣይፋልን[{"id": "web", "max_results": 5}] መዓልሚ ኩሉ መጀመሪያ ኢንተርኔት ይSearches። ክሳብ 10 resulted።
nመሓዋሪ ቁጽሪኣይፋልንብ conversely 1 ጥራይ። ካልሲዮ ከዎሶ ዓቐንተ ይመለሱ። 400.
logit_bias
user
metadata
ኣፍቲ፣ ስትሪንግ፣ ኣፍቲኣይፋልንተቀቢሉ እኳን ተትላሲ ኣይተላኽአን። logit_bias ብChat GPT ኣብ ጽንሰታቱ ንውሑዱ 300 token ids ካብ -100 ክሳብ 100 ናብ ቁጽሪታት ይቕይር፤ user ከ256 ቅጥታታት ኣይበዓዝን እዩ፤ metadata ከመብዛያ 16 ናይ ስትሪንግ ዋጋታት፣ ቁልፊታት ክሳብ 64 ቃላት ከምኡውን ዋጋታት ክሳብ 512 ይሕዝ።

መልሲ ተራ እዩ chat.completion፣ ብዓረፍተ ነገር እቲ ዋጋ ኣብ usage.cost (ብዶላ) ከኡውን ደኣ እውን nymbot ነገር። model እቲ ዝተፈታተነ ሞዴል ኣበይነት (id) እዩ፣ ብሓጺር ስም ዝመጸ ድማ ምሉእ ስም ኮይኑ ይበርከብ። እቲ ሞዴል ቅድሚ ምላሽ ምሃቡ እንተሓሰበ፣ ሓሳቡ ኣብ ውሽጢ ኣሎ message.reasoning_contentካቲ፣ ካብ መልሲ ዝለይ።

መልሲ

{
  "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 ካብ ዝመጸ ተወሳሲቡ እዩ፣ ምኽንያቱ ኣቕራቢታት ብተፈላለይ ኣቐራርቦ ስለ ዝቐርጾ፦ tool_calls እቲ ሞዴል መሳዓታት (tools) ምስሓተ, length ኣብ ግዜ፡ መልሲ ዝተፈቀደሉ ኩሎምቶም tokenታት ተጠቂሙ (ወይ ድማ ሞዴሉ ነቶም ኩሎምቶም ብምግማት ዘለዎም ዘናጸቖምን መልሲ ከይጽሓፍ ከም ዝተረፈ)፣ content_filter እቲ መቕረብቲ (provider) ክሰርሓሉ ክኸፍል ከሎ፣ ከምኡ እውን stop ኣበይ ጥራይ እንተኾይኑ። usage.completion_tokens_details.reasoning_tokens ልባዊ 0 እዩ፦ ተሸፊቱ መሰረታዊ መሳቐታዊ መተላለፊታት (reasoning tokens) ይቆጸሩ፣ ከኡ ንላዕሊ ድማ ይኽፈሉ፣ ኣብ completion_tokens.

መገላጭታመዓስ
400ኣይፋልን model ወይ messages (missing_required_parameter); ድምጺ ወይ ፋይል፣ ወይ ድማ ንዘይርእዩ ሞዴል ዝኸውን ምስሊታት (unsupported_content); ካብ 20 ንላዕሊ ምስሊታት (too_many_images); ናይ ምጥቃሚ መለክቲ ብዝተሳሳተ ዓይነት ወይ ካብቲ ዝተወሰነ ወሰን ወጻኢ (invalid_value); ሕዝባዊ ዘይኮነ ምስሊ ዝገልጽ ሊንክ (invalid_image_url); ኣብ ሞዴል ዝተሰናደዱ፡ ግን ክጥቀመሎም ዘይኽእል (unsupported_tool); n ካብ 1 ዝተረፈ; a :thinking ኣብ ዘይክእል ምርመራ ዘሎ ሞዴል ዘሎ መደምደሚ (model_not_found); ወይ ከኣ እቲ ኣቕራቢ እቲ ሕቶ ተወዲዱ (upstream_rejected).
402እቲ ሞዴል ዝ ወጻፎ ዓቐን፣ ነቲ ዝተሓዘ ገንዘብ ክኽCover ኣይክእልን እዩ።
403እቲ ዝኸውን ዝዓበየ ጸገም ምስ ቁልፉ መክደኒ ኣይሰማማዕን ኣሎ (key_limit_reached). ዝሓተተ max_tokens ወይ ድንበተይ ከብሮ።
404ብዛብhi ስም እዚ ዘሎ ሞዴል የለን (model_not_found).
429ናይ ቁልፊ ናይ ፍጥነት ገደብ፣ ወይ ድማ ናይ ኣቕራቢኡ (upstream_rate_limited).
502, 503እቲ ኣቕራቢ ኣይተዓወተን (upstream_error) ወይስ ተደራቢ (upstream_overloaded, ምሳ Retry-After). እቲ ሰብኣይ ንትፈታን ተጠቒሙ እንተዘይክፍሊ፣ ምንም ዓይነት ክፍሊት ኣይኽፈልን እዩ።

ኩሉ ኤንድፖይንት (endpoint) ዝራገፎም ዘለዉቶም ስታተስ ኮድኩም (status codes) ኣብዚ ዝስዕብ ተዘርዚሮም ኣለዉ፡ ጌጋታት.

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

ስትሪሚንግ

ምሳ "stream": true መልሲ እቲ ሞዴል ክጽሕፎ ከሎ ከከመይ ከከመይ ብዝመሃላ ሰርቨር-ሰንት ኢቨንትስ (server-sent events) ይመጽእ። )$, እቲ ነፍሲ ወከፍ ኢቨንትስ ናይ... chat.completion.chunk ኣብ data: መስመር፣ ከኡኡን እቲ ፍሰት ይዛረክ data: [DONE]መመራመር ይደርሰሉ delta.reasoning_content፣ መልሲኡ ብ... delta.content.

ከ100 ሰከንድ ዝቅ ዝቅ ዝብ ዝተሓባበ፣ ከም ውርጃ ሓlong ወይ ዓቢ ነገር ዝመስል ዝኾነ ነገር ስትትልዑ ስትትቀጥሉ (stream)። max_tokens ወይ ድንጋይ ሓሳብ ዘመሓላልስ ሞዴል። ዝተቐረበ ሕቶ ብቕጥታ (stream) ዘይተላእከ እንተኾይኑ፡ መልሲኡ ክፍጸም ክሳብ እቶ ምላሲ ኣይሰጥን እዩ፤ ኣብ መንጎኻን Nymbotን ዘሎ መረብ ድማ ድhi ዝገብረ ሓበሬታ ምስ ከተሓዝ ድሕሪ 100 ሰከንድ ክቖርጽ ይኽእል እዩ፤ እቲ ሞዴል ገና ክ finish ይገብር እዩ ከምኡ እውን ዝጽሕፎ ተኸፊሉ እዩ፡ ግን እቲ መልሲ ይበክን። ስትሪም (stream) ድማ Keep-alives ይልእኽ ስለ፡ እቲ ሞዴል ክጽሕፍ ክሳብ እቶ ዝኸፈት ይቕጽል እዩ።

መፍሰስ

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]
  • ብዝጀመርቲ መስመርታት : እቶም እቲ ሞዴል እያሓሰበ ከሎ ኣብ መእተወ 15 ሰከንድ ክሳብ ዝላእኩ 'keep-alive' კომይንትታትን፣ ኣClientታት SSE ድማ ይሓልፎም እዮም።
  • ሓትት "stream_options": {"include_usage": true} እቲ ላዕለታይ ክፋል ንምቕጻል፣ ብባዶ choices, ብዝሒቶም ቶክንታት፣ እቲ ወጻኢን ከምኡ ድማ እቲ nymbot ነገር።
  • ክፍሊት ምስረታ እቲ ስትሪም ምስውቕ ይፍጸም። ቅድሚ ግዜኡ ምስ clôtुरे፣ እቲ ሞዴል ኣይዝግደድን እዩ፦ Nymbot ቁጽሪ ቶክን ንምፍላጥ፣ ክሳብ 25 ሰከንድ እቲ ቀረብቲ ስትሪም ይቆርብ፣ ንስኻ ድማ እቲ ቀረብቲ ዘርግቦ ክፍሊት ትኸፍል። ብዘሎ ቁጽሪ፣ ክፍሊት ካብቲ ዝሓተትካዮን ካብቲ ተጻሕፎን፡ ብተወሳኺ ንእቲ ብምክንያት ዝሓሰብ (reasoning) ሞዴል ዘለዎ ምሉእ ኣወታውት ተቐዲሙ ይእመን።
  • ከመጀመሪያኡ ክchunk ቅድሚ ዝነበረ ጌጋ፣ ከም: 401 ወይ 402, ከም ስትሪም ዘይኮነስ፣ ምስቲ ስታተስ ኮዱ ከመደበኛ JSON ይመለስ እዩ። ስትሪም ምስ ተጀመረ ዝመጸ ጌጋ ከመወዳእታ ይመጽእ እዩ። data: {"error": {…}} ክስተት፣ ከኡኡ ድሕሪኡ ድምጺ ዘይብሉ ክኸይድ እዩ [DONE].
  • ብመሳርሒታት (tools) ዘለዎም ሕቶታትን፣ ኣብ OpenAI Responses transport ዘለዉ ሞዴላትን፣ ካብቲ ሰපየቨር (provider) ብቕጥዓት ኣይመሓላለፉን (do not stream)። ንግረቲ እቲ መልሲ ምስ ተወድአ፣ ብሓደ ናይ ፍጻሜ ስትሪም (valid stream) ይምላሱ።

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

መሳርሒ ሕCalling

ኣብ... ኣ fonctionnentታት ኣገሊጽ tools እቲ ሞዴል ምላሽ ምሃብ ኣብ ክንዲ ሓደ ክጽውዕ ክሓትት ይኽእል እዩ። ንኣታ ፈንክሽን ትሰርሓ፣ ውጽኢታ ድማ ከም... ትውስፍ። tool ንኡሰ መልእኽቲ ምስቲ ተመሳሳሊ tool_call_id, ከኡውን ንመዘራረብ ዳግመይ ስደደዮ። Nymbot ንዓኻ እትሰርሖም ተግባራት ፈጺሙ ኣይሰርሖምን፤ ናይቲ ሞዴል መተሓትታ ናብ ዓኻ ዳግመይ ይምለኽካ።

tool_choice ይወስድ "auto", "none", "required" ወይ {"type": "function", "function": {"name": "…"}}ናይ ሞዴል ዝርዝር ኣየናይ ሞዴላት መሳርሒታት ክጥቀሙ ዝኽእሉ ከምዘለዎ የብርሃሃ (capabilities.tools). መሳርሒታት ብ... እዮም ዝተኣወክኦም 400 unsupported_tool ኣብ nymbot/auto እንታPan ብOpenAI Responses transport ዝሰርሑ ጥቂት ናይ ካታሎግ ሞዴላት ዘለዉ፣ እቲ Nymbot ድማ ንኣቶታት (tools) ክሓላልፍ ዝኽእል እተens ዘይኮነ።

ምሳ "stream": true፣ መሳርሒታት ዘለዎ ሕቶ ኣብ ዓለትዎ ተፈፃሚ ምስ ወዲኡ ከም መደበኛ ቅጥዒታት ይተላለፍ፦ እቲ ሚና፣ ሓደ ቅጥዒ ኩሉ ናይ መሳርሒ ሕቶ ምስ ዓሬኻ፣ መጸወቲ፣ ስም ከምኡውን መዘኻኸሪታት ዘጠቓልል፣ ከምኡውን እቲ ናይ መወዳእታ ቅጥዒ። ዝተሓላለፈ ናይ መሳርሒ ሕቶታት ዘንብብ ክላይንትታት ከም መደበኛ ይhandle ይገብሮ።

ምላሽ፣ ብከፊል

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

ኣብ መሻእቲ ዘለዉ ምስልታት

ብዘርሓ ሞዴልታትን capabilities.vision ፎቶታት ክዕቅብ ኣለዎ። ኣመልጽ፡ image_url ናይ ተጠቃሚ መልእኽቲ ክፍሊ፣ ብሓደ ህዝባዊ ወይ... https:// ሊንክ ወይ ሓደ data:image/…;base64, URL። ኣብ ሓደ ሕቶ ክሳብ 20 ምስልታት። ምስሊ SVG ተኽሊዑ፣ ከምኡ እውን ዝበለጠ 4,096 ኣተራፊ ክሳብ ዘለዎ ወይ ድማ ኣብርጊት ተጠቃሚ ወይ ድ PASSWORD ዘለዎ ሊንክ ተኽሊዑ።400 invalid_image_url). ኣማራጺነት detail እዩ auto, low ወይ high.

ምሳ nymbot/auto፣ ምስሊ ዘለዎ ሕቶ ናብ እትዕርፍ ዝኽእል መደበኛ ሞዴል ይተላልፍ። ምስሊ ዘይዕርፍ መደብ ካቴሎግ ግን capabilities.vision ምስሊታት ዘለወን ኣይቕበልን 400 unsupported_contentፎቶታት ኣብ መልእኽቲ ተጠቃሚ ጥራይ ክበጽሑ ይኽእሉ እዮም። ሊንክ ናብ መድረኽ ዓወቲ ክምልከት ኣይብሎምን; Nymbot ነቲ ፎቶ ናብቲ ናይ ሞዴል መሰኻኻ (provider) ይሓላልፎ እኳ እንተኸይሩ ኣይሕዝዎን እዩ።

ከመ остаውቲ ናይቲ ሕቶ ብዛዕባ እቲ ዝቐረበ ሓበሬታ፣ ምስቶም ዝተሓሰቡ tokenታት ኮይኑ ምስቶም ዝቐረቡ ምስሊ (picture) ተመሳሳሊ ዋጋ ይኽፈል፡፡

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

ምክንያታዊነት

ብዘርሓ ሞዴልታትን capabilities.reasoning ቅድሚ ምላሽ ዝህቡ፡ ዝያዳ ወይ ጽባሕ ክሓተዉ ይኽእሉ እዮም ብዘይብሉ reasoning_effort ("minimal", "low", "medium" ወይ "high") ወይ</h3> "reasoning": {"effort": "high"}፣ ወይ] ተወሳኺ :thinking ናብ ስም ሞዴል፣ እቲ ማለት ዓቢ ጻዕሪ ማለት እዩ። ብዘይተሓሳቢ ሞዴል እዚ ትእዛዝ እዚ ኣይጥቀመሉን እዩ። ምስ nymbot/auto, :thinking እቲ ሕቶ ናብቲ መደበኛ ናይ መዐረጊ መገዲ ይላእኽ።

ኣብ Anthropic ሞዴልታት፡ እቲ ዓውዲ ናይ ሓሳብ ባጀት ብግደR 1,000፣ 2,000፣ 8,000 ወይ 16,000 ቶክን (tokens) ይኸውን፡ ብዘለhi ካብዚ ግን ኣይበልዕን max_tokens ኣፍልጦ። ኣስተንታኒት ምስ ተቋረጸ ይፍጸም tool_choice መሳርሒ ይግዳድ፣ ከምኡውን እቲ ሕቶ ናይ መሳርሒ ዑደት (መጨረሻ መልእኽቱ ናይ መሳርሒ ውጽኢት ኮይኑ) ክቕጽል ከሎ፣ ምኽንያቱ Anthropic ነቲ ቀዳማይ ክትፍታሕ ዝተሰምዐ ትሕሳብ ንምቕጻል የድልዮ። እዚ ተመሳሳሊ እዩ ኣብ Responses ከምኡውን Messages endpoints።

እቲ ምክንያት ተመለሰ message.reasoning_content፣ ወይ</h3> delta.reasoning_content ኣብ ግStreamaing (ጥልል ዝበለ ምልዓቅ) ከለኻ፣ ፈNever mixed into the answer። Reasoning is output and is charged as such, inside completion_tokensከኣብላጻት ኣነባብቲ (providers) ገለ፣ እቲ ናይ ምኽንያት ጽሑፍ ኣይመልሱዎን እዮም፣ እንተኾነ ግን ክፍሊት ይጽደል።

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

ሞዴል መቋጫታት

ኣብ ስም ሞዴል ዝተሓሓዘ መቋረጺ (suffix) ብዘይ ካልእ መስክ (field) ኣገባብ ምልኻድ መጠይቕ (request) ዝቕይር እዩ። እዚኣቶም ንመታወቂያታት ኣፋፍኡ ከምኡውን ንሓጺር ስምታት ብዘለዎ ኣገባብ ይሰርሑ፣ ከምዚ ከም፦ anthropic/claude-sonnet-5:online.

መጠቐሲመጽናዕቲ
:onlineመጀመሪያ ኣብ ኢንተርኔት ይፈልጥ፣ ከም... plugins: [{"id": "web"}]ርአ። ኣብ ኢንተርኔት ምድላይ.
:thinkingከፍተኛ ናይ ምርመራ ድሌት፤ ኣብ ስራሕ nymbot/auto, እቲ ናይ መኽንያት መስመር። ክሳብ ዝኽእል ኣመክንዮ ኣብ ዘይብሉ ሞዴል፣ 400 model_not_found ብ “no endpoints found”።
:nitro, :floor, :exacto, :extendedተቀቢሉ፣ እውን እውን ጥኤ። ነፍሲ ወከፍ ናይ ካታሎግ ሞዴል ሓደ መገዲ (route) ኣለዎ፣ ስለዚ ንምርጫ ዝፈጥን፣ ክሳብ ዝበዓለ ወይ ዝረጅም መገዲ የብሎምን፤ እተወሳኺ መሳቀቕታታት (suffixes) ዝተፈቀዱ እዮም፣ ስለዚ ካብ ካልኦት ኣገልግሎታት ዝተቐናነቶም ናይ ሞዴል ስምታት ክሰርሑ ከለዉ ክሰርሑ ንክܐልዎ።

ዝኾነ ካብኡ ንላዕሊ ዝመጽእ መለጠፊ (suffix) ናይ ዘይምእት እዩ። ምሉእ ስም መበልካሊ ይፍተሽ፣ ስለዚ እቲ መታወቂያ (id) ብሓቂ ኮሎን (:) ዘለዎ ሞዴል ገና ይሰርሕ፤ እቲ ሕቶ እንተተሰናክል ግን፣ ሞዴል ምስ ዝረኽብ ክሳብ እግৰኡ መለጠፊታት ብሓደ ብሓደ ይቕነስ። ስም ሞዴል ጸባብ 200 ፊደላት ክኸውን ከምኡ እውን ጸባብ 4 መለጠፊታት ጥራይ ክህልዎ ይኽእል እዩ፤ ዝተረዘመ ግን ብ... ይቕረብ። 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);

ዝኾነ ሞዴል ቻት ካብቲ ብቕጥታ ዘሎ ዌብ ኢንተርኔት ክመልሲ ይኽእል እዩ። Nymbot ነቲ ናይቲ ወዲኡ ናይቲ ሓደ ግዜ ዝተጻሕፈ መልእኽት (ቅድሚ 2,000 ኣበጻሕካሎም ፊደላት) ይደድብ፣ ዝበለጸቲ ገጻት ይቆብዕ፣ ከምኡውን ምስቲ ሕቶ ናብቲ ሞዴል ይቕርቦ፤ እዚ ድማ ከም ውሽጣዊ ጽሑፍ ተቆጺሩ እዩ፣ እቲ ሞዴል ካብኡ ኣዘዛዝብታት ክቕበል ኣይኽእልን እዩ። ክልተ ኣገባባት ኣለዉ፦

  • ኩሉ ግዜ መፈለጥ: "plugins": [{"id": "web", "max_results": 5}], ወ/ወይቲ :online ኣብቲ ሞዴል ዘሎ ሰፊክስ።
  • ኣብhelp ዝግበርሉ እዋን ድምር ፍ searches ንገበር: "tools": [{"type": "web_search", "parameters": {"max_results": 5}}]፣ ከኡውን እውን እውን ተቐቢሉ ከም web_search_preview ወይ openrouter:web_search. Nymbot መጽናዕቲ ዝገብሮ፡ ሕቶ እቲ ዘለዎ ወቅታዊ ሓበሬታ ከምዘድልዮ ክታህበሉ ከሎ ጥራይ እዩ፣ እዚ ድማ እቲ ኣፕሊኬሽን ዝጥቀመሉ ዓይነት ምርመራ እዩ።

max_results ብዝቅታ 5 ኮይኑ፣ ብሳይተላ ድማ 10 እዩ። ምንጪታት ኣብ... ይቕበጹ። nymbot.web_search.sources፣ እED እEDE እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እED እ title, snippet እና url, ከኣንደይነት እውን url_citation ኣብቲ መልእኽቲ ዘለዉ መዘኻኸሪታት።

ነፍሲ ወከፍ ዝፍጸም ምርመራ፣ ናብ ሳትሺ (sats) ተቀይሩ፣ ካብቶም ቶክንታት (tokens) ወጻኢ $0.008 ይኸልካ፣ እዚ ድማ ናብቲ hold ዝተሓሓዘ እዩ። ዝተቆበበሎም ገጻት እውን ናብLA (input) ቶክንታት እዮም፣ ስለዚ ካብ ኢንተርኔት ዝመጸ መልሲ፣ ተመሳሳሊ ሕቶ ብዘይ ኢንተርኔት (cold) ዝተሓተተ ካብ ዝበለ ብዝሓለወ ይኸልካ፣ ሓደ ግዜ ድማ ካብቲ ዝበለ ብዙሓት ግዜ ይበለጽ።

ምላሽ፣ ብከፊል

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

መደresponses API

ናይ OpenAI ሓዱሽ ቅርጺ፣ ብ OpenAI Agents SDK ከምኡ እውን ብCodex ዝጥቀመሉ እዩ። ምስ Chat Completions ተመሳሳሊ ሞዴልታትን፣ ክፍሊትን ከምኡ እውን ባህሪታትን ይውስኽ እዩ።

POST https://nymbot.ai/api/v1/responses — API key የኻበ perlu ኣሎ።

መስክጽሕፋትዝተሓለወመግለጺ
modelመመዝገቢ ክልልእወከ... ተፈፃሚ ብሎ እንተወሃ መፍጻማታት መደብ (Chat Completions)፣ መendsWith ዝተሓያ።
inputስትሪንግ ወይ ሓሳብ (array)እወሓደ ስትሪንግ፣ ወይ ድማ ዝተፈላለየ ኣቑሑ ዝሓዘ ዝርዝር፡ መልእኽትታት (መዓት/roles user, assistant, system, developer) ምስ input_text, input_image እና output_text ክፋላት፣ ከ... function_call እና function_call_output ንመሳርሒታት ዝኸውን ኣቑሑም። input_image ዝወሰደ image_url ሊንክ ወይ ከኣ ዳታ URL፣ ፋይል ኣይኮነን። reasoning እና web_search_call ነጥብታት ተሓዲጎም እዮም፤ item_reference ተኸዲአ ኣሎ።
instructionsመመዝገቢ ክልልኣይፋልንመምርሒታት ስርዓት።
max_output_tokensመሓዋሪ ቁጽሪኣይፋልንዝያዳቶም ቶክንታት ንጽሓፍ።
temperature
top_p
ቁጽሪኣይፋልንናይ ናሙና መቆጻጸርታት፣ እቲ ሞዴል ምስ ዝወስዶም።
tools
tool_choice
parallel_tool_calls
array፣ string ወይ ጽሑፍ ወይ object፣ booleanኣይፋልንመሳርሒታት ፋንክሽን፣ ኣብቲ ናይ ምላሽ ቅርጺ ({"type": "function", "name": …, "parameters": …}). A web_search ወይ web_search_preview መሳርሒ ይጅምላ ኣብ ኢንተርኔት ምድላይ ከኣቢዑዎ ምስሕግዝ። ካልኦት ኣብ ውሽጢ ዝተሓዙ መሳርሒታት ክቕበሉ ኣይተፈቀዱን።
reasoningኣካልኣይፋልን{"effort": "minimal" | "low" | "medium" | "high"}. xhigh እና max ትርጉም high; none ኣጥፊኡ።
text.format
response_format
ኣካልኣይፋልንመዋቅራዊ ውጽኢት፣ ከJSON schema ወይ ጀ... json_object.
metadataኣካልኣይፋልንኣብቲ መልሲ ዘይተቐየረ ተመላሲ ኮይኑ። ብዝበለጸ 16 ስትሪንግ ዋጋታት፣ ቁልፊታት ክሳብ 64 ፊደላት ከምኡውን ዋጋታት ክሳብ 512።
streamቡሊያንኣይፋልንከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌታዊት ዝርዝር ከጌ
storeቡሊያንኣይፋልንተግሲጉ። ዝኾነ ነገር ኣይተሓዘን፣ እ Antwort ድማ ኩሉ ግዜ ይብል "store": false.
previous_response_id
conversation
background
ስትሪንግ፣ ኦብጀክት፣ ቡሊያንኣይፋልንኣይተሓsupported ኣይኮነን፦ 400 unsupported_parameterምላሲታት ኣይሕዝውን እዮም፣ ስለዚ ምሉእ ቆይታ መለጋገራዊ ኣብኡ ኣእትቶ። input ኩሉ ግዜ።

መልሲ

{
  "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 }
}

መtool ሕቶ ኣብ ክረኸብ ኣሎ output ከ... ከኣ function_call ብዘለ እታ እምድር call_id, name እና arguments; ውጽታኡ ከም... ተመሊሱ ስደድ function_call_output ብዘለዎ ምስቲ ተመሳሳሊ ኣፍাকি call_id. ትንተና፣ እቲ ሞዴል ምስ ዘልኣቐዮ፡ እዩ reasoning ብዘለ እታ እምድር reasoning_text ትሕዝቶ፣ ቀዳማይ እዩ ዝተዘርዘረ። status እዩ incomplete መልሲኡ ምስ መጻወቱ max_output_tokens ወይ ድሩባይ (provider) ሰሪት ከበለት፡ ብ... incomplete_details.reason ኣብ ... ተሰEt max_output_tokens ወይ content_filterእቲ መልሲ ከOpenAI ከም ዝገብሮ፣ ናይቲ ሕቶ ኣৱድዶታት (temperature, tools, tool choice ከምኡ እያ) ድማ ይገልጸሉ፣ ከምኡ እውን ዘለዎ... nymbot ወጻታ መደብ።

ብቐጥታ ዝቐረበ፣ ነፍሲ ወከፍ ኩነት እዩ event: መስመርን ከኣ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ data: መስመር ምስ 'a' sequence_number, ብዚ ቅደምታ: response.created, response.in_progress, response.output_item.added, response.content_part.added፣ ዝኾነ ብምቕጻል ቁጽሪ response.output_text.delta, response.output_text.done, response.content_part.done, response.output_item.done, በመጨረሻ ድማ response.completed ምስቲ ኣጠቓቕማን ኸብታን። ዝተቆጠበ መልሲ ይውዳእ ብ response.incomplete ብምስራሕ፣ ከምኡውን ብዝጀመረ እቲ ስትሪም ድሕሪ ውድቀት ምስ ተጀመረ response.failed. ናይ ውጽኢት ተመራመርታ ከም ናይ ውሽጢ ኣፍራሂ ንጥፈት ከምቲ ዝተረጋገጸ ተመራመርታ ተባሂሉ ይቐመጥ response.reasoning_text.delta እና .done. ናይ መሳርሒ ጥሪታት ድሕሪ መልእኽቲ ይሳተፉ፣ ነፍሲ ወከፍ ድማ ከም ኣቑሑ ሚሕዝ response.function_call_arguments.delta እና .done.

መገላጭታመዓስ
400ኣይፋልን model ወይ input; previous_response_id, conversation, background ወይ ሓደ item_reference (unsupported_parameter); ዘይተገቢ መሳርሒ ወይ ዓይነት ትሕዝቶ።
402, 403, 404, 429, 502, 503ሰለ 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);

መልእኽቲ Anthropic

ንAnthropic SDKs ከClaude Code ምስ ዝጥቀመሉ Anthropic ዕቅድ። Claude ጥራይ ዘይኮይነትኩ፡ ምስ ኩሉ ኣብ ካታሎግ ዘሎ ሞዴል ይሰርሕ፦ እቲ ሕቶ ይትርጎም፣ ብኡ ዘለኻ እቲ ተመሳሳሊ መስመር ይምሓዝ፣ ከምኡ ድማ ተሊኮ ይትርጎም።

POST https://nymbot.ai/api/v1/messages — API key የከፍታ ቁልፍ የደቀየ ኣለ፣ ከም x-api-key ወይ Authorization: Bearer.

እቲ anthropic-version እና anthropic-beta headsa ተቀቢልዎ ይረግጡ ኣለዉ። ስምታት ሞዴላት Anthropic ምስ ካታሎግ ተተጻጻፊ ስለ ዝኾኑ፡ Claude Codeን SDKs ንኡሳብን እቶም ድሮ ዝጥቀመሎም ስምታት ተጠቒሞም ይሰርሑ፦

  • ካታሎግ ዘይፈልጦ ስም፣ ከም . . . claude-sonnet-5 ወይ anthropic/claude-opus-5፣ ከዓይነትኡ ከምዝአሎ እዩ ዝጥቀመሉ፡፡
  • ብኣላዚያ ድንጋይ (-20260514), -latest, ከም ናይ ስሪት መገለጺ -v1፣ ከኣብነት፡ ከምቲ ኣብ ቅጥዒ ዝተሓቀብቲ ታግ፡ [1m] ንኣንድን anthropic/ ወይ anthropic. ቅድመ-መጠቀሲታት ተወግዱ፡ ነጥብታትን መስመራትን ኣብቲ ስሪት ድማ ብኽልቲኦም ኣገባብ ተኬድዩ (claude-haiku-4-5 ኣፍሲሓ claude-haiku-4.5).
  • እቲ ገና ምስ ምንም ዘይሰማማዕ እንተኾይኑ፣ ስሪት መዝገብ ምስቲ ዝተሓተቶ ተመሳሳሊ ወይ ካብኡ ሓደስቲ እስካዕ፣ እታ ስድራቤት (Opus, Sonnet ወይ Haiku) ትጥቀመይን።
  • ምንም ዘይመስል ስም ይመለስ 404 not_found_error.
መስክጽሕፋትዝተሓለወመግለጺ
modelመመዝገቢ ክልልእወናይ ካታሎግ ሞዴል መታወቂያ፣ ወይ ድማ ስም ኣAnthropic ሞዴል።
max_tokensመሓዋሪ ቁጽሪእወዝያዳቶም ቶክንታት ንጽሓፍ።
messagesኣሬይ (array)እወuser እና assistant መሓዋር፣ ምስ text, image (base64 ወይ ሓባሪ URL) tool_use እና tool_result ብሎክታት thinking ካብ ቅድመ ተራታት ዝመጹ ብሎክታት ተቐቢሎም ይቕረቡ።
systemስትሪንግ ወይ ሓሳብ (array)ኣይፋልንሲስተም ፕሮምፕት፣ ከስትሪንግ ወይ ጽሑፍ ብሎኮች።
temperature
top_p
ቁጽሪኣይፋልንናይ ናሙና መቆጻጸርታት፣ እቲ ሞዴል ምስ ዝወስዶም። top_k ተቐቢሉ ይቕጽል ወይ ድማ ይተወወር።
stop_sequencesናይ ጽሑፋት ኣከፋፋሊ (array of strings)ኣይፋልንመልሲ ዝዛዘመ ጽሑፍ። ኣብብዛብዓዮ 4 ስትሪንግታት፣ እያ ሓደ እያ ኣብብዛብዓዮ 256 ቃላት።
tools
tool_choice
ኣሬይ, ኦብጀክትኣይፋልንብመመዘኒታት ዘለወን መሳርሒታት name, description እና input_schema. ኤ web_search ናይ ሰርቨር መሳርሒ ይኽደድ ኣብ ኢንተርኔት ምድላይ; ካልእ ናይ Anthropic ኣብ ውሽጢ ዝተሓዙ መሳርሒታት (bash, text editor, computer use) ብ... እዮም ዝተኣቢዐሉ unsupported_tool. tool_choice ይወስድ auto, any, tool ወይ none, ከኣብ disable_parallel_tool_use.
thinkingኣካልኣይፋልን{"type": "enabled", "budget_tokens": 8192}, {"type": "adaptive"} ወይ {"type": "disabled"}መደብቲ ናይ ዝተዓበየ ደረጃ ጻዕሪ ይመርጣሉ፦ ካብ 2,048 ታች ጸባብቲ፣ ካብ 2,048 ጸባብቲ፣ ካብ 8,192 መካከለኛ፣ ካብ 16,384 ዓቢት። ኣዳፕቲቭ (Adaptive) ይጥቀመ output_config.effortወይ ጽንፈኛ።
streamቡሊያንኣይፋልንኣብ ቅርጺ ኩነታት Anthropic ስትሪም ግበሮ።
metadataኣካልኣይፋልንተቀቢሉን ተለዓጊ።

መልሲ

{
  "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 ደኣ እውን ክሓዝዎ ይኽእል እዩ tool_use ብሎክታትን እ... thinking ብሎክ፣ ናይ መን? signature ባዶ እዩ። stop_reason እዩ end_turn, max_tokens, tool_use ወይ refusal, ከዓብኡ ተመሳሳሊ ኣገባብ ተሰሪሑት ከምቲ finish_reason ኣብ መፍጻማታት መደብ (Chat Completions); stop_sequence ዘይቕጽል እዩ null, ናይ መቋረጽ ቅደም ተራ መልሲኡ ምስ ኣቋረጾ እኳ። input_tokens ብዝሒታት ሓድሽ ኣገባብ ጥራይ፤ ዝተሓዘ ኣገባብ ኣብ ክልተ ናይ መኽዘን ቦታታት ይርከብ። ውድነት ኣብቲ ዘሎ እዩ nymbot ነኣዲን እቲ X-Nymbot-Cost-Sats ርእስ።

ብቐጥታ ዝቐረቡ፣ እቶም ኩነታት ናይ Anthropic እዮም፦ message_start, content_block_start, ping, content_block_delta (text_delta, input_json_delta ወይ thinking_delta), content_block_stop, message_delta ብምኽንያት መቋረፅ፣ ብዘይብሉ ኣገልግሎትን እቲ nymbot መደብ ወጻኢ፣ ከ...ን message_stop. ኤ ping እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን እውን tool_use ብኩሉ ኣገባብ ምስ ኣgetInputኡ ብሓደ ክዝጋ never block input_json_delta.

ኣብዚ ኤንድፖይንት ዘሎ ስሕታታት ናይ Anthropic ፎርማት ይተገብሩ፦ {"type": "error", "error": {"type": "not_found_error", "message": "…"}}. ንኣሽቱ ሚዛን እዩ 402 billing_errorዝተሓፈለ ኣቕራቢ 503 overloaded_error. እቲ ስትሪም ምስ ተጀመረ ድሕሪኡ ዝፍጠር ውድቀት ከ... ተላኺዑ እዩ error መርበብ።

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

ቶከንታት ምቁሳስ

ሓደ Message request ክንደይ input tokens ክጥቀመሉ ከምዘሎ ዝተገመትዮ ግምት፣ ከምኡ ድማ ሓደ client ቅድሚ ምልኣኩ ክምርምር ክኽእል ንምባል እዩ። ብነጻ ይግበር፣ ግን ገና ቁልፊ (key) የድልየ።

POST https://nymbot.ai/api/v1/messages/count_tokens — API key የከፍታ ቁልፍ የፋታ እneeds። ጽንፊ።

እቲ ኣካል ከምቲ ን... ዝተጠቐመሉ እዩ መልእኽትታት፣ ከዘይብ max_tokens; ስም እታ model ምሉእ ክኸውን ኣለዎ። እቲ ቁጽሪ ግምታ እዩ፦ </h3> እቲ characterታት system prompt, መመልከቶታት (messages), tool calls ከምኡ እውን tool definitions ብኣrbind ክፍліዑ ተሪቶም፣ ብተወሳኺ ንነፍሲ ወከፍ ምስሊ 1,600 ዝተተሓሓዘ። እዚ ናይቲ provider ዝተጠቐመሉ tokenizer ኣይኮነን፣ ስለዚ እቲ ናይ ቁጽሪ ናይ ምሉእ መጠን ክፈላየ ይኽእል እዩ። </h3> መጠኑ ዝበጽሕ key ግን ገና ክጥቀመሉ ይኽእል እዩ።

መልሲ

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

ሞዴላት ምዝገባ

እቲ API ዝቕበሎ ኩሉ ሞዴልን ጀነሬተርን፣ ምስ ዋጋኡ። እታ ዝርዝር ካብቲ ምስቲ ናይቲ ኣፕሊኬሽን ምርጫ (picker) ዝተኣሳሰርቲ ተ\\\ን ቀጥታ ካብቲ ትርጉም ዘሎ ካታሎግ ዝመጽእ ስለ ዝኾነ፣ ኩሉ ግዜ ሰርቨር ክሰርሖ ዝኽእል እዩ።

GET https://nymbot.ai/api/v1/models — ቁልፊ ኣይፋለሙን። ንሓሙሽተ ደቒቕ ተቐሚዩ ኣሎ።

GET /api/v1/models/{id} ሓደ መደብ የመልስ።

መስክጽሕፋትዝተሓለወመግለጺ
typeስትሪንግ (መደብ)ኣይፋልንchat (እቲ መኖር ዝግጁ ዝኾነ) image, video, audio, embedding ወይ allበርካታ ክእሉ ክህቡ ይከኣሉ፣ ከም፦ image,video.

ሰለታታት ነቲ ዝኽፈሎ ክፍሊትን ትርፍን ዘጠቓልል፣ ብዶላርን ብሳትስን (sats) ኣብ ሕጂ ዘሎ ናይ ቢትኮይን ዋጋ እዮም። balance እንታይ ባላንስ እዩ ሞዴሉ ዝኸፍኖ ከም ዝብል ይኸብር። nymbot_key እቲ ናይ ሞዴሉ ውጽኢታዊ ስም ኣብቲ ኣፕlication ኣሎ ድዩ? created ኩሉ ግዜ 0 እዩ፣ ምኽንያቱ ካታሎጉ ሓደ ሞዴል መዓስ ከም ዝተተሓዘ ኣይዘርእየን ስለ ዘይብሉ። ዝተግለጹ ናይ ቶክን ምትክምት ዘይብሉ ሞዴል ዋጋኡ... per_request ከክንዲ።

nymbot/auto ከመብለጥ ኩሉ መጀመርዩ እዩ፣ ብኸድ እተዋዕ ክትከውን፡ variable፣ ምስ ሓደ routes ነባር መገድታት ዘለወኩለን ዋጋታት ዘርዝር። ራእይን ስነ-ምክንያትን ይዘርዝር፣ ነገር ግን መሳርሒታት ኣይዘርዝርን እዩ።

GET /api/v1/models/{id} ከም ሕቶ ተመሳሳሊ ስምታትን ኣርእያታትን ይቕበል፣ ከምኡውን እቶም ዝመሓላለፉሉ ሞዴል ዘለዋ እታ መግቢ ይመልስ።

መልሲ

{
  "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"
    }
  ]
}

ካልኦትປະወሳኺ ኣይነታታት፦

  • ምስሊ መዝገባት ኣለወን capabilities (accepts_image_url, requires_image_url, edit) ከዋጋኡ ጋር per_generation.
  • ቪድዮ መዝገባት ኣለወን max_duration_seconds እና resolutions, ከዋጋ እውን per_second ንነፍሲ ወከፍ ውሳኔ።
  • ድምጺ መዝገባት ኣለወን audio_type speech ወይ transcription, ዋጋ ዝተወሰነ per_1k_chars ወይ per_minute.
  • ኤምቤዲንግ (Embedding) መዝገባት ኣለወን dimensions, context_length, max_inputs ደኣ ከኣ ብመእተዊ ሚልዮን input tokens ዘለዎ ዋጋ።

ዋጋታት ተቐሚጦም ኣለዉ "estimated": true እቶም ዋጋኡ ዘይተገለጠሉ ጄነሬተር እቲ ኣፕሊኬሽን ዝገብሮም ግምታት እዮም። ዘይተፈልጠ... type መልሲታት 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);