Текст
Текст, функции и JSON
/v1/chat/completionsТребуемое право: text. Неизвестные поля и неподдерживаемые формы отклоняются до резервирования. Совместимость ограничена этой схемой. stream:true требует TEXT_STREAM. Поток заканчивается [DONE]; SSE содержит финальный usage/billing или ошибку. Разрыв потока не отменяет платную обработку.
Авторизация
AuthorizationstringобязательныйКлюч API в заголовке Authorization: Bearer <ключ>. Ключ создаётся в кабинете, подробнее — в разделе Аутентификация.
Заголовки
Idempotency-KeystringобязательныйОдин стабильный ключ на логический запрос. Повторяйте с тем же телом и тем же credential/endpoint. Новый ключ создаёт новый запрос.
Тело запроса
application/json · обязательное
Имена функций уникальны. tool_choice с именем должен ссылаться на объявленную функцию. content:null у assistant допустим только вместе с tool_calls. Изображения, top_p, json_schema, hosted tools и неизвестные поля отклоняются до admission.
modelstringобязательныйmessagesobject[]обязательныйВложенные поля
role: "system" | "user"rolestringобязательный"system" "user"contentstringобязательныйnamestringrole: "assistant"role"assistant"обязательныйcontentstring | nullобязательныйnamestringtool_callsobject[]Вложенные поля
idstringобязательныйtype"function"обязательныйfunctionobjectобязательныйВложенные поля
namestringобязательныйargumentsstringобязательныйrole: "tool"role"tool"обязательныйcontentstringобязательныйtool_call_idstringобязательныйnamestringmax_tokensintegertemperaturenumberstreambooleantoolsobject[]Вложенные поля
type"function"обязательныйfunctionobjectобязательныйВложенные поля
namestringобязательныйparametersobjectобязательныйОграниченная JSON Schema: корневой type object; типы object/array/string/number/integer/boolean/null. Ключи type, description (до 2000), properties (до 100), required, additionalProperties (boolean), items, enum (до 100 примитивов). Глубина до 6. $ref, внешние ресурсы, pattern, combinators не поддерживаются. Required ссылается только на объявленные свойства.
Вложенные поля
type"object"обязательныйdescriptionstringtool_choicestring | objectВложенные поля
type: "function"type"function"обязательныйfunctionobjectобязательныйВложенные поля
namestringобязательныйresponse_formatobjectВложенные поля
typestringобязательный"text" "json_object"Ответы
200Успешный ответ
application/json
idstringобязательныйobject"chat.completion"обязательныйmodelstringобязательныйchoicesobject[]обязательныйВложенные поля
indexintegerобязательныйmessageobjectобязательныйВложенные поля
role"assistant"обязательныйcontentstring | nulltool_callsobject[]Вложенные поля
idstringобязательныйtype"function"обязательныйfunctionobjectобязательныйВложенные поля
namestringобязательныйargumentsstringобязательныйfinish_reasonstring | nullобязательныйusageobjectобязательныйВложенные поля
prompt_tokensintegercompletion_tokensintegertotal_tokensintegercached_tokensintegercost_microrubintegercreatedintegerbillingobjectВложенные поля
statusstringestimated_cost_microrubintegercost_microrubinteger | nullreplaybooleantext/event-stream
202Исход уточняется; резерв сохраняется
application/json
Обработка или сверка ещё не завершена. Сохраняйте исходный Idempotency-Key и тело. Резерв удерживается. Не создавайте новый запрос взамен этого.
Тип: object
ОшибкаОшибка проверки, прав, лимита или доступности. Код error.code; результат запроса при неизвестном исходе не следует считать отменённым.
application/json
errorobjectобязательныйВложенные поля
codestringобязательныйmessagestringобязательныйrequest_idstringtypestring