Decisions
Классификация, выбор и оценка данных через Decisions API.
Decisions возвращает структурированные решения: выбранный вариант, оценку или вероятность. Такие модели подходят для классификации обращений, маршрутизации запросов и проверки условий.
Модели доступны в каталоге Decisions и через GET /api/v1/models?output_modalities=decisions.
Запрос
Укажите в model ID выбранной модели из каталога вместо MODEL_ID. Отправьте данные в state, а вопросы — в questions. Ответы возвращаются под теми же именами вопросов.
curl https://gorouter.ru/api/v1/decisions \
-H "Authorization: Bearer $GOROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MODEL_ID",
"state": "После оплаты подписка не появилась в аккаунте.",
"questions": {
"department": {
"type": "choice",
"instructions": "Какой отдел должен обработать обращение?",
"criteria": {
"billing": "Оплата, счета и возвраты",
"technical": "Технические неполадки",
"account": "Управление аккаунтом"
}
}
}
}'state принимает строку, JSON-объект или массив. instructions и описания в criteria также могут быть строками, объектами или массивами.
Типы вопросов
| Тип | Назначение | Критерии | Ответ |
|---|---|---|---|
choice | Выбрать один вариант | Объект с вариантами и их описаниями; описание может быть null | choice, probabilities, confidence |
noul | Оценить вероятность выполнения условия | Необязательный объект с описаниями true и false | noul от 0 до 1 |
score | Оценить данные по упорядоченной шкале | Массив минимум из двух описаний уровней | score, probabilities, confidence |
Несколько вопросов можно передать в одном запросе. Они оцениваются независимо по общему state.
Пример дополнительных вопросов:
{
"urgent": {
"type": "noul",
"instructions": "Клиенту требуется срочная помощь?"
},
"frustration": {
"type": "score",
"instructions": "Насколько клиент недоволен?",
"criteria": ["Спокоен", "Недоволен", "Очень недоволен"]
}
}Ответ
Пример поля answers:
{
"department": {
"type": "choice",
"choice": "billing",
"probabilities": {"billing": 0.9, "technical": 0.08, "account": 0.02},
"confidence": 0.8
}
}Ответ также содержит model и usage с input_tokens и output_tokens. Поля probabilities, confidence и легенда шкалы legend возвращаются при наличии у провайдера. Значения вероятностей и оценок зависят от запроса. confidence отражает определённость выбора, но не гарантирует правильность ответа.
Оплата и ограничения
- Стоимость зависит от тарифов выбранной модели. Актуальные цены входа и выхода в рублях указаны на её странице в каталоге. При нулевой цене выхода входные токены могут оставаться платными.
usage.cost— итоговая стоимость запроса в рублях. Неиспользованная часть резерва освобождается после расчёта. Если стоимость уточняется, ответ содержитX-GoRouter-Billing-Status: pending; итоговая сумма появится в истории расходов после расчёта.- В
stateпередаются текстовые или структурированные данные. Для изображений, аудио и видео сначала подготовьте текстовое представление. - API возвращает один JSON-ответ; streaming,
messages,temperatureиmax_tokensне поддерживаются. - Для выбора провайдера используйте
provider, как описано в маршрутизации. Если у модели есть latest-алиас в каталоге, его можно использовать вместо фиксированной версии.
Полная схема доступна в справочнике API.