Создание Chat Completion
Используйте CometAPI POST /v1/chat/completions для отправки многостадийных диалогов чат-моделям с настройками Streaming, temperature и max_tokens.
model; большинство OpenAI-совместимых SDK работают при установке base_url в https://api.cometapi.com/v1.
Роли сообщений
Отправка Multimodal-ввода
Многие модели поддерживают изображения и аудио наряду с текстом. Чтобы отправлять Multimodal-сообщения, используйте формат массива дляcontent:
detail управляет глубиной анализа изображений:
low— быстрее, использует меньше Tokens (фиксированная стоимость)high— подробный анализ, расходуется больше Tokensauto— решение принимает модель (по умолчанию)
Потоковая передача ответов
Чтобы получать результат постепенно, установитеstream в true. Ответ передаётся в виде Server-Sent Events (SSE), где каждое событие содержит объект chat.completion.chunk:
Запрос структурированного вывода
Чтобы принудительно вернуть корректный JSON, соответствующий определённой схеме, используйтеresponse_format:
json_schema) гарантирует, что вывод в точности соответствует вашей схеме. Режим JSON Object (json_object) гарантирует только корректный JSON — структура не проверяется.Вызов инструментов и функций
Чтобы позволить модели вызывать внешние функции, предоставьте определения инструментов:finish_reason: "tool_calls", а массив message.tool_calls будет включать имя функции и аргументы. Затем выполните функцию и отправьте результат обратно как сообщение tool с соответствующим tool_call_id.
Примечания по провайдерам
Поддержка параметров у разных провайдеров
Поддержка параметров у разных провайдеров
max_tokens и max_completion_tokens
max_tokens и max_completion_tokens
max_tokens— Устаревший параметр. Работает с большинством моделей, но не рекомендуется для новых моделей OpenAI.max_completion_tokens— Рекомендуемый параметр для моделей GPT-4.1, серии GPT-5 и моделей o-series. Обязателен для reasoning-моделей, так как включает как выходные Tokens, так и Tokens рассуждений.
Роли system и developer
Роли system и developer
system— Традиционная роль для инструкций. Работает со всеми моделями.developer— Представлена в моделях o1. Обеспечивает более строгое следование инструкциям в новых моделях. В старых моделях используется поведениеsystem.
developer для новых проектов, ориентированных на модели GPT-4.1+ или o-series.Часто задаваемые вопросы
Как обрабатывать ограничения скорости?
При возникновении429 Too Many Requests реализуйте экспоненциальную задержку повторных попыток:
Как сохранять контекст диалога?
Включайте полную историю диалога в массивmessages:
Что означает finish_reason?
Как контролировать расходы?
- Используйте
max_completion_tokensдля ограничения длины вывода. - Используйте
gpt-5.6-terraдля баланса между интеллектуальностью и стоимостью илиgpt-5.6-lunaдля эффективных высоконагруженных задач. - Делайте Prompt краткими — избегайте избыточного контекста.
- Отслеживайте использование Tokens в поле ответа
usage.
Авторизации
Bearer token authentication. Use your CometAPI key.
Тело
Model ID to use for this request. See the Models page for current options.
"gpt-4.1"
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).
If true, partial response tokens are delivered incrementally via server-sent events (SSE). The stream ends with a data: [DONE] message.
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 <= 2Nucleus 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 <= 1Number of completion choices to generate for each input message. Defaults to 1.
Up to 4 sequences where the API will stop generating further tokens. Can be a string or an array of strings.
Maximum number of tokens to generate in the completion. The total of input + output tokens is capped by the model's context length.
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 <= 2Number between -2.0 and 2.0. Positive values penalize tokens proportionally to how often they have appeared, reducing verbatim repetition.
-2 <= x <= 2A 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.
A unique identifier for your end-user. Helps with abuse detection and monitoring.
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.
Specifies the output format. Use {"type": "json_object"} for JSON mode, or {"type": "json_schema", "json_schema": {...}} for strict structured output.
A list of tools the model may call. Currently supports function type tools.
Controls how the model selects tools. auto (default): model decides. none: no tools. required: must call a tool.
Whether to return log probabilities of the output tokens.
Number of most likely tokens to return at each position (0-20). Requires logprobs to be true.
0 <= x <= 20Controls the reasoning effort for o-series and GPT-5.1+ models.
low, medium, high Options for streaming. Only valid when stream is true.
Specifies the processing tier.
auto, default, flex, priority Ответ
Successful chat completion response.
Unique completion identifier.
"chatcmpl-abc123"
Object type. Non-streaming responses use chat.completion.
chat.completion "chat.completion"
Unix timestamp of creation.
1774412483
The model used (may include version suffix).
"gpt-5.4-2026-03-05"
Array of completion choices.
Token accounting for this request. Billing uses these counts.
Service tier that processed the request, when the provider reports one.
"default"
Provider backend configuration fingerprint, when the provider reports one.
"fp_490a4ad033"