გადადით შინაარსზე
დაბრუნება Nymbot

ცოდნის ბაზა განვითარებლები

Chat, პასუხები და შეტყობინებები

სამი გზა, რათა მოდელის რაღაც, სამი ფორმატებში კლიენტები უკვე საუბრობენ, ყველა მუშაობს იგივე მოდელები და ფულადი იგივე გზა.

Chat დასრულება

OpenAI ჩატი ფორმატში, და ის, რომელიც თითქმის ყველა ინსტრუმენტი მხარს უჭერს. გადაცემა კონტაქტი ამჟამად და მიიღეთ შემდეგი შეტყობინება.

POST https://nymbot.ai/api/v1/chat/completions საჭიროა API Key.

მხოლოდ model და messages მოითხოვს მოდელი არ იღებს ნიმუშების პარამეტრი არ იღებს შეცდომა გარეშე, ასე რომ ერთი მოთხოვნების სხეულის მუშაობს მოდელი. მოდელი სია გთავაზობთ თითოეული მოდელი supported_parametersეს არის ის, რაც მოდელი არ შეუძლია გავაკეთოთ: სურათები მოდელი, რომელიც არ შეუძლია ნახოთ, ინსტრუმენტები მოდელი, რომელიც არ შეუძლია დაგვიკავშირდეთ.

ფართობიტიპიმოთხოვნააღწერა
modelStringდიახnymbot/auto (და auto) Nymbot- ის მარშრუტირება სტანდარტული ბალანსიზე, ან კლასიკური მოდელი ID, როგორიცაა: anthropic/claude-sonnet-5 დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში. საკმარისი.
messagesArrayდიახკონტაქტი - როლები system, developer (მუშავებული როგორც სისტემა), user, assistant და toolკონტაქტი არის string ან სია text და image_url სურათები მხოლოდ მომხმარებლის შეტყობინებები. input_audio და ფაილი ნაწილები არ არის აღიარებული.
streamBooleanარწაიკითხეთ პასუხი, როგორც წაიკითხა Stretching.
stream_optionsკონტაქტიარ{"include_usage": true} დასაწყისში დასაწყისში დასაწყისში დასაწყისში.
max_tokens
max_completion_tokens
ინტეგრიარუამრავი ტოკი, რომ დააწკაპუნეთ. შემცირდა მაქსიმალური მოდელი, თუ უფრო მაღალი. ასევე დააყენებს, თუ რამდენად გაქვთ თქვენი ბალანსი, ასე რომ მცირე რაოდენობა საჭიროა ნაკლებად საკრედიტო დაიწყოს.
temperature
top_p
ნომერიარSampling კონტროლი : temperature 0დან 2 წლამდე, top_p 0 და 1.
stopString ან ArrayარText that ends the answer: string or at most 4 strings, each at maximum 256 characters. არ გამოიყენება nymbot/auto.
seedინტეგრიარRepeatable sampling, სადაც მოდელი მხარს უჭერს.
presence_penalty
frequency_penalty
ნომერიაროპტიმიზაციის კონტროლები, თითოეული -2 to 2.
response_formatკონტაქტიარ{"type": "json_object"} ან {"type": "json_schema", "json_schema": {…}}, სადაც მოდელი მხარს უჭერს. არ გამოიყენება nymbot/auto.
tools
tool_choice
parallel_tool_calls
Array, String ან Object, Booleanარფუნქციონირება. იხილეთ Tool კითხვებიA web_search Tool იღებს ნახვა Searchმაქსიმალურად 128 ინსტრუმენტები და 512 KB განახლებები, რომელიც მდებარეობს მაქსიმალურად 64 დონეზე; უფრო მეტი არის 400.
reasoning_effort
reasoning
String, კონტაქტიარ"minimal", "low", "medium" ან "high"ან {"effort": "high"}. "none" ან {"enabled": false} დასაწყისი: See განიხილება.
pluginsArrayარ[{"id": "web", "max_results": 5}] ჩვენ ვცდილობთ, რომ ჩვენ ვცდილობთ, რომ ჩვენ ვცდილობთ, რომ ჩვენ ვცდილობთ, რომ ჩვენ ვცდილობთ, რომ ჩვენ ვცდილობთ, რომ ჩვენ ვართ.
nინტეგრიარ1. ყველა სხვა მოდის 400.
logit_bias
user
metadata
კონტაქტი, String, Objectარგამოგზავნილია და არ გამოგზავნილია. logit_bias რუკები მაქსიმალურად 300 token IDs წერილები -100 to 100; user მაქსიმალურად 256 ფუნქციები; metadata შეიცავს 16 string ღირებულებები, მაქსიმალურად 64 სიტყვები და მაქსიმალურად 512 ღირებულებები.

პასუხი არის ზოგადად chat.completionდა ღირებულება in usage.cost (და დოლარში) და nymbot Object არ არის. model მას შემდეგ, რაც მოდელი დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში. 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 როდესაც მოდელი მოითხოვს ინსტრუმენტებს, length როდესაც პასუხი გამოიყენა თითოეული ნომერი, რომელიც გაძლევთ (ან მოდელი მათ ყველა განიხილება და არ დააყენა პასუხი), content_filter მას შემდეგ, რაც მომწოდებელი დამაკავშირდა და stop სხვა შემთხვევაში. usage.completion_tokens_details.reasoning_tokens ეს არის ყოველთვის 0: Hidden reasoning tokens are counted, and charged, in 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ბალანსი, რომელიც მოდელი გადახდის, არ შეუძლია შეავსოს შენარჩუნება.
403უარყოფითი შემთხვევაში არ შეესაბამება კურსი (key_limit_reachedქვემოთ max_tokens ან გააუმჯობესოთ Cap.
404არ არის მოდელი ამ სახელით (model_not_found).
429სავარაუდოდ, ეს არის ერთ-ერთი ყველაზე პოპულარული გრაფიკული გრაფიკული გრაფიკული (upstream_rate_limited).
502, 503არ არის გაქირავებული (upstream_error) ან აღემატება (upstream_overloadedერთად Retry-After) არაფერი არ არის გადაიხადული, თუ მომწოდებელი არ გადაიხადოს ცდილობს.

სტატისტიკა კოდები თითოეული Endpoint ფართობი შეიცავს ქვემოთ შეცდომები.

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 მას შემდეგ, რაც მოდელი იღებს ეს პასუხი, ეს მოდელი იღებს ეს პასუხი. თითოეული მოდელი არის chat.completion.chunk ეს A data: Line, და stream დასრულდება data: [DONE]Reasoning ეწვევა delta.reasoning_contentპასუხი in delta.content.

ყველაფერს, რაც შეიძლება მიიღოს მეტი, ვიდრე დაახლოებით 100 წამში, როგორიცაა ხანგრძლივი პასუხი, დიდი max_tokens ან განიხილება მოდელი. მოთხოვნა, რომელიც არ გამოგზავნილია, არაფერი არ გამოგზავნილია, სანამ პასუხი დასრულდება, და ქსელის შორის თქვენ და Nymbot შეიძლება დახურვა დახურული კავშირი დაახლოებით 100 წამში; მოდელი ჯერ კიდევ დასრულდება და ის, რაც იგი წაიკითხა, დახურულია, მაგრამ პასუხი დაკარგულია. სინამდვილე გამოგზავნილია 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]
  • ხაზები, რომელიც დაიწყება : SSE- ის კლიენტებს შეუზღუდავი შეტყობინებები გამოგზავნილია ყოველ 15 წამში, ხოლო მოდელი ფიქრობდა.
  • გთხოვთ "stream_options": {"include_usage": true} დასაწყისში დასაწყისში დასაწყისში დასაწყისში. choices, token counts, ღირებულება და nymbot Object არ არის.
  • დასაწყისში, მოდელი არ დასრულდება: Nymbot წაიკითხა მომწოდებლის წაიკითხე, მდე 25 წამში, რათა მიიღოთ მისი token რაოდენობა, და თქვენ გადაიხადოს, რაც მომწოდებლის გამოქვეყნდა. გარეშე ეს წაიკითხე, გადახდის შეფასება თქვენი input და ის, რაც ჩაწერილი, დაახლოებით მთელი output დისკები მოდელი, რომ მიზეზები.
  • დასაწყისში დასაწყისში, როგორიცაა 401 ან 402, დაბრუნება როგორც ჩვეულებრივი JSON მისი სტატისტიკა კოდი, არა როგორც სინათლის. შეცდომა შემდეგ, რაც სინათლის დაიწყო, იღებს როგორც ბოლო data: {"error": {…}} გამოქვეყნდა, და თარგმანი არ დასრულდა [DONE].
  • მოთხოვნები ინსტრუმენტები, და მოდელები OpenAI- ის Responses ტრანსპორტი, არ სავარაუდოდ საწყისი მომწოდებლის. ისინი ჯერ კიდევ პასუხი ხარისხის სავარაუდოდ, გამოგზავნილია, როდესაც პასუხი დასრულდა.

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

Tool კითხვები

ფუნქციების აღწერა tools და მოდელი შეუძლია მოითხოვოს, რომ ერთი მოვუწოდოს, ვიდრე პასუხი. თქვენ აწარმოებთ ფუნქციას, დაამატეთ მისი შედეგს tool შეტყობინება იგივე tool_call_idNymbot არასოდეს აწარმოებს თქვენი ფუნქციებს; იგი გადაცემს მოდელის მოთხოვნა თქვენთვის.

tool_choice იღებს "auto", "none", "required" ან {"type": "function", "function": {"name": "…"}}მოდელი სია აჩვენებს, რა მოდელები შეიძლება მოვუწოდოს ინსტრუმენტები (capabilities.tools) ინსტრუმენტები არ არის დაეხმარება 400 unsupported_tool ეს nymbot/auto და რამდენიმე კლასიკური მოდელები, რომლებიც იყენებენ OpenAI- ის Responses ტრანსპორტი, რომ Nymbot არ შეუძლია გაგზავნას ინსტრუმენტები.

ერთად "stream": true, მოთხოვნები ინსტრუმენტები მუშაობს ერთი ნაწილში და შემდეგ გამოგზავნილია როგორც რეგულარული chunk sequence: როლი, ერთი chunk carrying თითოეული ინსტრუმენტების მოთხოვნები მისი index, id, სახელი და arguments, და დასრულების chunk. კლიენტები, რომლებიც წაიკითხე streamed ინსტრუმენტების მოთხოვნები გააკეთოს იგი როგორც ჩვეულებრივი.

პასუხი, ზოგიერთი

"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:// კონტაქტი ან a data:image/…;base64, URL. მდე 20 სურათები მოითხოვს. SVG სურათები არ არის მოითხოვს, და ასე არის ბმული მეტი 4096 ფუნქციები ან ერთი მომხმარებლის სახელი ან კონფიგურაცია (400 invalid_image_url2) არჩეული detail ეს auto, low ან high.

ერთად nymbot/auto, მოთხოვნა, რომელიც შეიცავს სურათი მასში, განკუთვნილია სტანდარტული მოდელი, რომელიც შეუძლია ნახოთ. კლასიკური მოდელი გარეშე capabilities.vision გადაღების სურათები 400 unsupported_contentსურათები შეიძლება იყოს მხოლოდ მომხმარებლის შეტყობინებები. ბმულზე უნდა ეწვიოს საზოგადოებრივი სასტუმროზე; Nymbot გადაცემს სურათს მოდელის მომწოდებლისთვის და არ შენარჩუნებს.

სურათი იღებს როგორც input tokens მომწოდებელი იღებს მას, ისევე როგორც სხვა მოთხოვნა.

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") ან "reasoning": {"effort": "high"}ან დაამატოთ :thinking მოდელი სახელი, რომელიც იმას ნიშნავს, მაღალი ძალისხმევა. მოდელი გარეშე განიხილება დაწყება არ არის შეუზღუდავი. ერთად nymbot/auto, :thinking გადაცემა მოთხოვნა სტანდარტული რჩევის გზა.

Anthropic მოდულებს, სტრუქტურა გახდება დაფიქსირებული budgets დაახლოებით 1,000, 2,000, 8,000 ან 16,000 tokens, არასდროს მეტი, ვიდრე max_tokens ვფიქრობთ, რომ ეს არ არის შესაძლებელი, როდესაც tool_choice მას შემდეგ, რაც მოთხოვნა გააგრძელდება ინსტრუმენტული loop (და მისი ბოლო შეტყობინება არის ინსტრუმენტული შედეგია), რადგან Anthropic სჭირდება ადრე შეტყობინებული ფიქრობას, რათა იგი გააგრძელდეს. იგივე გამოიყენება პასუხები და შეტყობინებები Endpoints.

განიხილება მივიღებს უკან message.reasoning_contentან delta.reasoning_content ამ შემთხვევაში, როგორც წაიკითხა, ეს არ არის რეკომენდირებული, მაგრამ ეს არ არის რეკომენდირებული. completion_tokensზოგიერთი მომწოდებლები არ გადაიხადოს რეიტინგული ტექსტი და ჯერ კიდევ გადაიხადოს.

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

მოდელი suffixes

ნიმუშის სახელიში გაგრძელება შეცვალოს, თუ როგორ მოთხოვნა გაქირავება, სხვა ფართობი გარეშე. ისინი მუშაობენ სრული IDs და short names ისევე, როგორც in anthropic/claude-sonnet-5:online.

საკმარისიეფექტი
:onlineპირველი ნახვა, როგორც plugins: [{"id": "web"}]ეს ნახვა Search.
:thinkingუმაღლესი რეცეპტიული ეფექტი; on nymbot/autoგანიხილოთ, თუ განიხილოთ განიხილოთ განიხილოთ განიხილოთ განიხილოთ განიხილოთ განიხილოთ განიხილოთ 400 model_not_found ეს არის “ არ არსებობს დასაწყისში მიმოხილვა ”.
:nitro, :floor, :exacto, :extendedთითოეული კატალოგი მოდელი აქვს ერთი გზა, ასე რომ არ არსებობს უფრო სწრაფი, იაფი ან ხანგრძლივი გზა, რომ აირჩიოთ; მოდელი სახელიები გააქტიურებულია, ასე რომ სხვა მომსახურების ნიმუშები ჯერ კიდევ მუშაობს.

რა თქმა უნდა, ყველა სხვა ნომერი არ არის შეუზღუდავი. მთელი სახელი პირველი ცდილობს, ასე რომ მოდელი, რომელიც 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}]ან a :online suffix ამ მოდულზე.
  • შეამოწმეთ, თუ ეს დაგეხმარება: "tools": [{"type": "web_search", "parameters": {"max_results": 5}}]ასევე მიიღო როგორც web_search_preview ან openrouter:web_searchNymbot ეძებს მხოლოდ მაშინ, როდესაც კითხვები გამოიყურება, რომ საჭიროა მიმდინარე ინფორმაცია, იგივე ტესტი, რომელიც app იყენებს.

max_results არის 5 default და მაქსიმალურად 10. წყაროები დაბრუნება nymbot.web_search.sourcesთითოეული ერთად a title, snippet და urlდა როგორც url_citation შეტყობინება შეტყობინება.

თითოეული კვლევა, რომელიც აწარმოებს ღირებულება $ 0.008, კონვერტებული sats, ზედაპირზე tokens, და ეს არის ნაწილი hold. გვერდებები ის იხილება input tokens ასევე, ასე რომ პასუხი საიტზე ღირებულება უფრო მეტი, ვიდრე იგივე კითხვები მოითხოვს cold, sometimes several times more.

პასუხი, ზოგიერთი

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

API პასუხი

OpenAI- ის უახლესი ფორმატი, რომელიც გამოიყენება OpenAI Agents SDK- ში და Codex- ში. იგი იყენებს იგივე მოდელები, გადახდის და ფუნქციები, როგორც Chat Completions.

POST https://nymbot.ai/api/v1/responses საჭიროა API Key.

ფართობიტიპიმოთხოვნააღწერა
modelStringდიახროგორც Chat დასრულებადამატება მოიცავს.
inputString ან Arrayდიახშეტყობინებები და შეტყობინებები (Roles) user, assistant, system, developer) ერთად input_text, input_image და output_text ნაწილები და function_call და function_call_output აქსესუარები ინსტრუმენტებისთვის input_image მიიღეთ image_url კავშირი ან მონაცემთა URL, არა ფაილი ID. reasoning და web_search_call მასალები შეიცვალა; item_reference ეს არ არის.
instructionsStringარსისტემის ინსტრუქციები
max_output_tokensინტეგრიარყველაზე პოპულარული, რომ წაიკითხოთ.
temperature
top_p
ნომერიარSampling კონტროლი, სადაც მოდელი იღებს მათ.
tools
tool_choice
parallel_tool_calls
Array, String ან Object, Booleanარფუნქციონალური ინსტრუმენტები, ფორმით პასუხები ({"type": "function", "name": …, "parameters": …}) და web_search ან web_search_preview Tool იღებს ნახვა Search როდესაც ეს დაგეხმარება. სხვა ინტეგრირებული ინსტრუმენტები არ არის დაეხმარება.
reasoningკონტაქტიარ{"effort": "minimal" | "low" | "medium" | "high"}. xhigh და max განიხილება high; none დატოვეთ ეს
text.format
response_format
კონტაქტიარStructured output, როგორც JSON სქემა ან json_object.
metadataკონტაქტიარდასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში.
streamBooleanარStretch მოვლენები, როგორც ჩანს ქვემოთ.
storeBooleanარარაფერი არ არის შენარჩუნებული, და პასუხი ყოველთვის ამბობს "store": false.
previous_response_id
conversation
background
String, Object და Booleanარარ არის მხარდაჭერა: 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 }
}

ინსტრუმენტი მოთხოვნა გამოჩნდება in output როგორც A function_call თემა with call_id, name და argumentsგაგზავნა შედეგს, როგორც a function_call_output შეტყობინება იგივე call_idReasoning, როდესაც მოდელი იღებს იგი, არის a reasoning თემა with reasoning_text კონფიდენციალურობის შესახებ, პირველ რიგში status ეს incomplete როდესაც პასუხი იღებს max_output_tokens ან მომსახურების მომსახურების მომსახურების მომსახურების მომსახურების მომსახურება, incomplete_details.reason დასაწყისი max_output_tokens ან content_filterრეაგირება ასევე იღებს მოთხოვნის პარამეტრები (ტემპერატურა, ინსტრუმენტები, ინსტრუმენტების არჩევანი და ა.შ.) როგორც OpenAI- ის გაკეთება, და შეიცავს nymbot ღირებულება Object.

Striamed, თითოეული მოვლენები არის event: Line და A data: Line ერთად 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 და .doneTool calls მოდის მას შემდეგ, რაც შეტყობინება, თითოეული როგორც ელემენტი response.function_call_arguments.delta და .done.

სტატუსიროდესაც
400არ model ან input; previous_response_id, conversation, background ან ერთი item_reference (unsupported_parameter); არ მხარს უჭერს ინსტრუმენტი ან შინაარსი ტიპი.
402, 403, 404, 429, 502, 503Chat დასრულების შესახებ.

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- ის ფორმატში, Anthropic SDKs და Claude Code. იგი მუშაობს ყველა მოდელი კალოგიში, არა მხოლოდ Claude: მოთხოვნები გამოქვეყნდა, გაშვებული იგივე pipeline, და გამოქვეყნდა უკან.

POST https://nymbot.ai/api/v1/messages — საჭიროა API key, როგორც x-api-key ან Authorization: Bearer.

ეს anthropic-version და anthropic-beta Anthropic მოდელი სახელიები შეესაბამება კლასიკის, ასე რომ Claude Code და SDKs მუშაობს სახელიები ისინი უკვე გამოიყენება:

  • სახელწოდება, რომელიც კალოგი იცის, როგორიცაა claude-sonnet-5 ან anthropic/claude-opus-5იგი გამოიყენება როგორც არის.
  • თარიღი (-20260514), -latestეს ვერსია, როგორიცაა -v1ეს არის bracketed tag როგორიცაა [1m] და ერთი anthropic/ ან anthropic. დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში (claude-haiku-4-5 ნახვა claude-haiku-4.5).
  • თუ ეს ჯერ კიდევ არ შეესაბამება, ოჯახი (Opus, Sonnet ან Haiku) გამოიყენება, სანამ კალოგიის ვერსია იგივე ან ახალია, ვიდრე მოთხოვნილია.
  • ნომერი, რომელიც არ შეესაბამება არაფერი დაბრუნება 404 not_found_error.
ფართობიტიპიმოთხოვნააღწერა
modelStringდიახCatalog Model ID, ან Anthropic მოდელი სახელი.
max_tokensინტეგრიდიახყველაზე პოპულარული, რომ წაიკითხოთ.
messagesArrayდიახuser და assistant Turns, ერთად text, image (base64 ან URL წყარო) tool_use და tool_result ბლოკები thinking ბლოკები დასაწყისში გადაიხადეთ და გადაიხადეთ.
systemString ან ArrayარSystem prompt, როგორც string ან ტექსტის ბლოკები.
temperature
top_p
ნომერიარSampling კონტროლი, სადაც მოდელი იღებს მათ. top_k მიიღეთ და დატოვეთ.
stop_sequencesArray of სტრუქტურაარტექსტი, რომელიც დასრულებს პასუხი. მაქსიმალურად 4 string, თითოეული მაქსიმალურად 256 characters.
tools
tool_choice
Array და Objectარინსტრუმენტები name, description და input_schemaA web_search Server Tool იღებს ნახვა Search; Anthropic- ის სხვა ინტეგრირებული ინსტრუმენტები (bash, ტექსტური რედაქტორი, კომპიუტერული გამოყენება) არ არის დაეხმარება unsupported_tool. tool_choice იღებს auto, any, tool ან noneდა disable_parallel_tool_use.
thinkingკონტაქტიარ{"type": "enabled", "budget_tokens": 8192}, {"type": "adaptive"} ან {"type": "disabled"}Budget აირჩიებს ეფექტურობის დონე: ქვემოთ 2.048 მინიმალური, from 2.048 დაბალი, from 8.192 საშუალო, from 16.384 მაღალი. output_config.effortან მაღალი
streamBooleanარ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 Blocks და A thinking ბლოკი, რომელიც signature არ არის ფართო. stop_reason ეს end_turn, max_tokens, tool_use ან refusalმუშაობა იგივე გზა, როგორც finish_reason ეს Chat დასრულება; stop_sequence ყოველთვის null, მაშინაც კი, როდესაც stop sequence დასრულდა პასუხი. input_tokens დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში. nymbot Object და X-Nymbot-Cost-Sats Header არ არის

გამოქვეყნდა: The events are Anthropic’s: message_start, content_block_start, ping, content_block_delta (text_delta, input_json_delta ან thinking_delta), content_block_stop, message_delta დასაწყისში, იმისათვის, რომ გამოყენება და nymbot ღირებულება, და message_stopA ping ასევე ყოველ 15 წამში გამოგზავნილია, როდესაც მოდელი მუშაობს. ინსტრუმენტი მოვუწოდებს ტექსტის შემდეგ, თითოეული როგორც tool_use ბლოკზე ყველა ინვესტიცია ერთი input_json_delta.

ამ Endpoint- ის შეცდომები გამოიყენება Anthropic- ის ფორმატში: {"type": "error", "error": {"type": "not_found_error", "message": "…"}}Short Balance არის 402 billing_errorOverloaded მომწოდებელი 503 overloaded_errorგამოქვეყნდა: 15 დეკემბერი, 2016 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);

TOKEN შეფასება

მიმოხილვა, თუ როგორ გამოიყენება შეტყობინებები მოთხოვნა, ასე რომ კლიენტს შეუძლიათ შეამოწმოს, სანამ გადაცემა. ეს უფასოა, მაგრამ ჯერ კიდევ საჭიროა კლიენტს.

POST https://nymbot.ai/api/v1/messages/count_tokens — საჭიროა API key. უფასო.

სხეული არის იგივე, რაც შეტყობინებებიგარეშე max_tokens; მოდელი სახელი უნდა გადაიხადოს. კონტაქტი არის შეფასება: სისტემის შეტყობინებები, შეტყობინებები, ინსტრუმენტები და ინსტრუმენტების დეტალები დააკმაყოფილოს ოთხი, პლუს 1,600 თითოეული სურათი. ეს არ არის მომწოდებლის საკუთარი tokenizer, ასე რომ რეალური კონტაქტი შეიძლება განსხვავდეს. კლიენტს, რომელიც შეესაბამება მისი კაბა, ჯერ კიდევ შეუძლია გამოიყენოთ.

პასუხი

{ "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, რა ღირს. სია იხილება იგივე პირდაპირი კატალოგიში, რაც app- ის picker, ასე რომ ეს ყოველთვის არის, რაც სერვერზე იყენებს.

GET https://nymbot.ai/api/v1/models — არ არის საჭირო კლიენტები. შეინახეთ 5 წუთი.

GET /api/v1/models/{id} გადაიხადეთ ერთი შეტყობინება.

ფართობიტიპიმოთხოვნააღწერა
typeString – კითხვებიარchat (სამთავრობო სიჩქარე) image, video, audio, embedding ან allმრავალფეროვანი შეიძლება იყოს, როგორც image,video.

ფასი არის ის, რაც თქვენ გადაიხადოთ, ფასი და margins უკვე, დოლარში და ფასი ამჟამად ვიკიპედია ფასი. balance აცხადებს, რა ბალანსი მოდელი იღებს. nymbot_key ეს არის მოდელის დაბალი სახელი app- ში. created ეს არის ყოველთვის 0, რადგან კლასიკა არ შეამოწმოთ, როდესაც მოდელი დაამატა. მოდელი გარეშე გამოქვეყნებული ტოკონის ფასები არის ფასი. per_request სამაგიეროდ.

nymbot/auto ყოველთვის პირველი, ფასი როგორც variableერთად a 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.
  • შეფუთვა ინვესტიციები 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);