ИнференсСправочник
Chat Completions
Основной метод API Yenisei, который возвращает ответ модели на разговор и принимает те же параметры, что и API OpenAI.
Метод Chat Completions — главный в API Yenisei: вы передаёте модели сообщения разговора, а она возвращает ответ. Через этот же метод работают потоковая передача, вызов инструментов, ответ в формате JSON и рассуждения. Формат запроса и ответа совпадает с API OpenAI, поэтому подойдёт любой его SDK.
Параметры
modelstringобязательный
Имя модели из каталога, например
yenisei-100.messagesarrayобязательный
Сообщения разговора. У каждого сообщения есть роль
roleи содержимоеcontent.streamboolean
Если передать
true, ответ приходит по частям в виде событий SSE. Подробнее на странице Потоковая передача.temperaturenumber
Разнообразие ответа. По умолчанию значение равно 1.
top_pnumber
Отбор вероятных токенов. По умолчанию значение равно 1.
max_tokensinteger
Предел длины ответа в токенах. Значение больше того, что умеет выдать модель, обрезается до её предела.
stopstring | array
Строка или список строк, на которых модель прекращает ответ.
seedinteger
Число, которое помогает получать повторяемые ответы.
response_formatobject
Формат ответа. Значение
{"type": "json_object"}включает ответ в формате JSON. Подробнее на странице Ответ в формате JSON.toolsarray
Описания функций, которые модель может попросить вызвать. Подробнее на странице Вызов инструментов.
reasoning_effortstring
Глубина рассуждений для моделей, которые умеют рассуждать:
none,low,mediumилиhigh. Подробнее на странице Рассуждения.
curl https://api.yenisei.ru/v1/chat/completions \
-H "Authorization: Bearer $YENISEI_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "yenisei-100",
"messages": [{"role": "user", "content": "Привет!"}]
}'
from openai import OpenAI
client = OpenAI(base_url="https://api.yenisei.ru/v1", api_key=YENISEI_KEY)
resp = client.chat.completions.create(
model="yenisei-100",
messages=[{"role": "user", "content": "Привет!"}],
)
print(resp.choices[0].message.content)
import OpenAI from "openai"
const client = new OpenAI({
baseURL: "https://api.yenisei.ru/v1",
apiKey: process.env.YENISEI_KEY,
})
const resp = await client.chat.completions.create({
model: "yenisei-100",
messages: [{ role: "user", content: "Привет!" }],
})
console.log(resp.choices[0].message.content)
Ответ
{
"id": "chatcmpl-…",
"object": "chat.completion",
"model": "yenisei-100",
"choices": [{
"index": 0,
"finish_reason": "stop",
"message": { "role": "assistant", "content": "Здравствуйте!" }
}],
"usage": { "prompt_tokens": 9, "completion_tokens": 4, "total_tokens": 13 }
}
Ошибки
- 401Ключ API не передан или неверный.
- 403Модель недоступна на вашем тарифе.
- 404Такой модели нет в каталоге.
- 429Исчерпан лимит кредитов в окне сессии, недели или месяца. Когда лимит обновится, указано в заголовке
Retry-After. - 502Модель не ответила. Повторите запрос.
Остаток кредитов в окне сессии приходит в заголовке
X-RateLimit-Remaining-Session, а момент обновления лимита — в заголовке
X-RateLimit-Reset. Все коды и заголовки описаны на страницах
Коды ошибок и Лимиты и расход.