POST /v1/chat/completions — основной чат-эндпоинт, совместимый с OpenAI.
curl https://llmoxy.com/v1/chat/completions \
-H "Authorization: Bearer <LLMOXY_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4o-mini",
"messages": [
{ "role": "system", "content": "Be concise." },
{ "role": "user", "content": "What is LLMoxy?" }
]
}'
Тело запроса
Основные поля:
| Поле | Описание |
|---|---|
model | Обязательно. ID модели. |
messages | Обязательно. Массив сообщений диалога. |
temperature, top_p, n, stop | Параметры управления сэмплированием, передаются совместимому провайдеру. |
max_tokens, max_completion_tokens | Ограничения на выходные токены. |
stream | Установите true для включения потоковой передачи SSE. |
stream_options.include_usage | Возвращает usage в потоковых ответах, если провайдер поддерживает. |
tools, tool_choice | Вызов инструментов в стиле OpenAI. |
response_format | Запрос структурированного вывода для поддерживаемых моделей. |
reasoning_effort | Поддерживаемые модели рассуждения могут использовать low, medium, high. |
modalities, audio | Доступно для моделей с поддержкой мультимодального аудио. |
user | Необязательно. Для идентификации вашего конечного пользователя. |
Разные модели поддерживают разные параметры. Если в ответе указано, что параметр не поддерживается, удалите его или смените модель.
Потоковый вывод
{
"model": "gpt-4o-mini",
"stream": true,
"messages": [
{ "role": "user", "content": "Stream one sentence." }
]
}
Ответы используют SSE-чанки в стиле OpenAI и завершаются [DONE].
Вызов инструментов
{
"model": "gpt-4o-mini",
"messages": [
{ "role": "user", "content": "What is the weather in Singapore?" }
],
"tools": [
{
"type": "function",
"function": {
"name": "get_weather",
"description": "Get the current weather for a city.",
"parameters": {
"type": "object",
"properties": {
"city": { "type": "string" }
},
"required": ["city"]
}
}
}
]
}
Модели с поддержкой вызова инструментов получают определения инструментов и возвращают ответы в стиле OpenAI.
Устаревшие completions
Клиенты устаревшего текстового дополнения могут использовать POST /v1/completions.
