> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kvantora.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Текст, функции и JSON

> Поддерживаемый chat completions и клиент OpenAI.

В `POST /v1/chat/completions` передайте model, messages и при необходимости max\_tokens (1–32768, по умолчанию 2048), temperature (0–2), stream. Доступные параметры также зависят от подтверждённых возможностей модели.

```javascript theme={null}
import OpenAI from 'openai';
const client = new OpenAI({apiKey: process.env.KVANTORA_API_KEY,
  baseURL: process.env.KVANTORA_BASE_URL + '/v1', maxRetries: 0});
const answer = await client.chat.completions.create({
  model: 'PUBLIC_API_ID',
  messages: [{role: 'user', content: 'Ответь кратко'}], max_tokens: 256
}, {headers: {'Idempotency-Key': process.env.REQUEST_ID}});
if (answer.object === 'chat.completion') {
  console.log(answer.choices[0]?.message.content);
} else {
  console.log('Обработка ещё не завершена:', answer);
}
```

Function tools описываются через type=function и function.name/description/parameters. До 128 функций, уникальные имена из букв ASCII, цифр, дефиса и подчёркивания, длина 1–64. tool\_choice: auto, none, required или имя объявленной функции. Вызываемый инструмент выполняет ваше приложение; Kvantora не запускает произвольный код функции.

Parameters: ограниченная JSON Schema глубиной до 6, корень object. Допустимы type, description, properties, required, additionalProperties, items, enum. Ссылки, внешние схемы, pattern и combinators отклоняются. Ответ инструмента передавайте сообщением role=tool с tool\_call\_id. content=null у assistant допустим только с tool\_calls.

Для JSON-объекта используйте `response_format={"type":"json_object"}`. Успешный результат проверяется как JSON-объект. При ошибке после отправки исход уточняется; отсутствие валидного JSON само по себе не означает освобождение резерва.

В примере `PUBLIC_API_ID` — место для `public_api_id` из каталога, а не имя существующей модели. Выбирайте модель с доступной операцией.
