Skip to main content
POST
CometAPI спрямовує Chat Completions до кількох постачальників, зокрема OpenAI, Claude та Gemini, через єдиний OpenAI-сумісний інтерфейс. Перемикайтеся між моделями, змінюючи параметр model; більшість OpenAI-сумісних SDK працюють, якщо встановити для base_url значення https://api.cometapi.com/v1.
Параметри запиту та поля відповіді можуть суттєво відрізнятися залежно від постачальника моделі. Якщо вам потрібен повний список параметрів або специфічна для постачальника поведінка, перегляньте офіційну документацію постачальника моделі, яку ви використовуєте. Наприклад, reasoning_effort застосовується лише до моделей міркування (o-series, GPT-5.1+), а деякі моделі не підтримують logprobs або n > 1.
Для моделей OpenAI Pro, моделей міркування o-series і моделей Codex використовуйте Responses кінцеву точку натомість. Ці сімейства моделей мають повнішу підтримку в Responses API.

Ролі повідомлень

Для новіших моделей (GPT-4.1, серій GPT-5 і o-series) для повідомлень з інструкціями надавайте перевагу developer над system. Обидва варіанти працюють, але developer забезпечує краще дотримання інструкцій.

Надсилання Multimodal введення

Багато моделей підтримують зображення та аудіо поряд із текстом. Щоб надсилати Multimodal повідомлення, використовуйте формат масиву для content:
Параметр detail керує глибиною аналізу зображень:
  • low — швидше, використовує менше tokens (фіксована вартість)
  • high — докладний аналіз, споживається більше tokens
  • auto — модель вирішує сама (за замовчуванням)

Потокове передавання відповідей

Щоб отримувати результат поступово, встановіть для stream значення true. Відповідь передається як Server-Sent Events (SSE), де кожна подія містить об’єкт chat.completion.chunk:
Щоб додати статистику використання tokens до потокових відповідей, встановіть для stream_options.include_usage значення true. Дані про використання з’являються в останньому фрагменті перед [DONE].

Запит структурованого виводу

Щоб змусити модель повертати дійсний JSON, що відповідає певній схемі, використовуйте response_format:
Режим JSON Schema (json_schema) гарантує, що вивід точно відповідає вашій схемі. Режим JSON Object (json_object) гарантує лише дійсний JSON — структура не примусово застосовується.

Виклик інструментів і функцій

Щоб увімкнути для моделі виклик зовнішніх функцій, надайте визначення інструментів:
Коли модель вирішує викликати інструмент, відповідь матиме finish_reason: "tool_calls", а масив message.tool_calls міститиме назву функції та аргументи. Потім виконайте функцію й надішліть результат назад як повідомлення tool із відповідним tool_call_id.

Примітки щодо різних постачальників

  • max_tokens — Застарілий параметр. Працює з більшістю моделей, але не рекомендований для новіших моделей OpenAI.
  • max_completion_tokens — Рекомендований параметр для моделей GPT-4.1, серії GPT-5 і моделей o-series. Обов’язковий для моделей міркування, оскільки включає як output tokens, так і reasoning tokens.
CometAPI автоматично обробляє зіставлення під час маршрутизації до різних постачальників.
  • system — Традиційна роль для інструкцій. Працює з усіма моделями.
  • developer — Запроваджено з моделями o1. Забезпечує краще дотримання інструкцій для новіших моделей. Для старіших моделей повертається до поведінки system.
Використовуйте developer для нових проєктів, орієнтованих на моделі GPT-4.1+ або o-series.

Поширені запитання

Як обробляти обмеження швидкості?

У разі виникнення 429 Too Many Requests реалізуйте експоненційну затримку повторних спроб:

Як підтримувати контекст розмови?

Включіть повну історію розмови до масиву messages:

Що означає finish_reasonозначає?

Як контролювати витрати?

  1. Використовуйте max_completion_tokens, щоб обмежити довжину виводу.
  2. Використовуйте gpt-5.6-terra для балансу інтелектуальності та вартості або gpt-5.6-luna для ефективних високонавантажених робочих процесів.
  3. Зберігайте Prompts стислими — уникайте надлишкового контексту.
  4. Відстежуйте використання tokens у полі відповіді usage.

Авторизації

Authorization
string
header
обов'язково

Bearer token authentication. Use your CometAPI key.

Тіло

application/json
model
string
за замовчуванням:gpt-5.6-sol
обов'язково

Model ID to use for this request. See the Models page for current options.

Приклад:

"gpt-4.1"

messages
object[]
обов'язково

A list of messages forming the conversation. Each message has a role (system, user, assistant, or developer) and content (text string or multimodal content array).

stream
boolean

If true, partial response tokens are delivered incrementally via server-sent events (SSE). The stream ends with a data: [DONE] message.

temperature
number
за замовчуванням:1

Sampling temperature between 0 and 2. Higher values (e.g., 0.8) produce more random output; lower values (e.g., 0.2) make output more focused and deterministic. Recommended to adjust this or top_p, but not both.

Необхідний діапазон: 0 <= x <= 2
top_p
number
за замовчуванням:1

Nucleus sampling parameter. The model considers only the tokens whose cumulative probability reaches top_p. For example, 0.1 means only the top 10% probability tokens are considered. Recommended to adjust this or temperature, but not both.

Необхідний діапазон: 0 <= x <= 1
n
integer
за замовчуванням:1

Number of completion choices to generate for each input message. Defaults to 1.

stop
string

Up to 4 sequences where the API will stop generating further tokens. Can be a string or an array of strings.

max_tokens
integer

Maximum number of tokens to generate in the completion. The total of input + output tokens is capped by the model's context length.

presence_penalty
number
за замовчуванням:0

Number between -2.0 and 2.0. Positive values penalize tokens based on whether they have already appeared, encouraging the model to explore new topics.

Необхідний діапазон: -2 <= x <= 2
frequency_penalty
number
за замовчуванням:0

Number between -2.0 and 2.0. Positive values penalize tokens proportionally to how often they have appeared, reducing verbatim repetition.

Необхідний діапазон: -2 <= x <= 2
logit_bias
object

A JSON object mapping token IDs to bias values from -100 to 100. The bias is added to the model's logits before sampling. Values between -1 and 1 subtly adjust likelihood; -100 or 100 effectively ban or force selection of a token.

user
string

A unique identifier for your end-user. Helps with abuse detection and monitoring.

max_completion_tokens
integer

An upper bound for the number of tokens to generate, including visible output tokens and reasoning tokens. Use this instead of max_tokens for GPT-4.1+, GPT-5 series, and o-series models.

response_format
object

Specifies the output format. Use {"type": "json_object"} for JSON mode, or {"type": "json_schema", "json_schema": {...}} for strict structured output.

tools
object[]

A list of tools the model may call. Currently supports function type tools.

tool_choice
за замовчуванням:auto

Controls how the model selects tools. auto (default): model decides. none: no tools. required: must call a tool.

logprobs
boolean
за замовчуванням:false

Whether to return log probabilities of the output tokens.

top_logprobs
integer

Number of most likely tokens to return at each position (0-20). Requires logprobs to be true.

Необхідний діапазон: 0 <= x <= 20
reasoning_effort
enum<string>

Controls the reasoning effort for o-series and GPT-5.1+ models.

Доступні опції:
low,
medium,
high
stream_options
object

Options for streaming. Only valid when stream is true.

service_tier
enum<string>

Specifies the processing tier.

Доступні опції:
auto,
default,
flex,
priority

Відповідь

Successful chat completion response.

id
string

Unique completion identifier.

Приклад:

"chatcmpl-abc123"

object
enum<string>

Object type. Non-streaming responses use chat.completion.

Доступні опції:
chat.completion
Приклад:

"chat.completion"

created
integer

Unix timestamp of creation.

Приклад:

1774412483

model
string

The model used (may include version suffix).

Приклад:

"gpt-5.4-2026-03-05"

choices
object[]

Array of completion choices.

usage
object

Token accounting for this request. Billing uses these counts.

service_tier
string

Service tier that processed the request, when the provider reports one.

Приклад:

"default"

system_fingerprint
string | null

Provider backend configuration fingerprint, when the provider reports one.

Приклад:

"fp_490a4ad033"