BazaarLinkBazaarLink
Войти
ДокументацияAPI СсылкаSDK СсылкаАгентное использованиеAI Навыки
Содержание

Структурированная оценка (Jev)

Структурированная оценка (Jev)

Jev оценивает состояние JSON по именованным вопросам и возвращает ответы типов boolean, choice или score. Используйте его, когда приложению нужен машиночитаемый результат по заданным критериям.

Только для оценки и принятия решений
Jev не поддерживает чат. Отправляйте запросы Jev на POST /v1/evaluations; запрос к POST /v1/chat/completions вернёт HTTP 400.
POST/v1/evaluations

Вызовите эту конечную точку с ключом API BazaarLink. Полный URL: https://api.bazaarlink.ai/v1/evaluations.

Описание полей

model
string
Необязательное поле. Если его нет, используется typesafe-ai/jev. Другой ID модели возвращает HTTP 400 с кодом model_not_available.
state
string | object | array
Обязательное поле. Передайте оцениваемое состояние как JSON-строку, объект или массив. Если сериализованные state и questions превышают 32 000 tokens, возвращается context_length_exceeded.
questions
record<string, Question>
Обязательное непустое поле-объект с именованными вопросами. Имя каждого вопроса становится ключом в объекте answers ответа.
type
boolean | choice | score
Обязательное поле каждого вопроса: boolean, choice или score.
instructions
string | object | array
Обязательное поле каждого вопроса. JSON-строка, объект или массив с описанием того, что нужно определить.
criteria
object | array
Зависит от type: для boolean необязательно; если указано, это объект только с ключами true или false. Для choice нужен непустой объект, а для score — упорядоченный массив минимум из двух элементов.

Типы ответов

  • boolean — criteria можно не указывать; если оно задано, допустимы только ключи true и false. Ответ содержит числовое значение probability.
  • choice — criteria должен быть непустым объектом, сопоставляющим названия вариантов критериям JSON. Ответ содержит строковое значение choice; ключами probabilities служат названия вариантов.
  • score — criteria должен быть упорядоченным массивом как минимум из двух элементов. score — число и математическое ожидание индексов 0..N-1 в порядке массива criteria; ключами probabilities служат эти индексы в виде строк.

Примеры запросов

curl --fail-with-body https://api.bazaarlink.ai/v1/evaluations \
  -H "Authorization: Bearer $BAZAARLINK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "typesafe-ai/jev",
  "state": "The support agent issued a full refund and apologised for the delay.",
  "questions": {
    "refunded": {
      "type": "boolean",
      "instructions": "Was a refund issued?"
    },
    "tone": {
      "type": "choice",
      "instructions": "Tone of the agent?",
      "criteria": {
        "apologetic": "The agent apologises",
        "neutral": "No emotional language",
        "hostile": "The agent is rude"
      }
    },
    "quality": {
      "type": "score",
      "instructions": "How complete was the resolution?",
      "criteria": [
        "poor",
        "partial",
        "complete"
      ]
    }
  }
}'

Пример успешного ответа

В примере ответа есть id, object, model, answers, usage, rounding и warnings. Ключи answers — названия вопросов. В usage указаны input_tokens, output_tokens и total_tokens; в rounding показаны probabilityDecimals и scoreDecimals. warnings — массив; в этом примере он пуст. Внутри answers ключами probabilities для choice служат названия вариантов, а для score — строковые индексы criteria.

{
  "id": "eval-a3d350e5-2705-4a9b-be7c-838fa4e4eb2b",
  "object": "evaluation",
  "model": "typesafe-ai/jev",
  "answers": {
    "refunded": {
      "type": "boolean",
      "probability": 0.99
    },
    "tone": {
      "type": "choice",
      "choice": "apologetic",
      "probabilities": {
        "apologetic": 1,
        "neutral": 0,
        "hostile": 0
      }
    },
    "quality": {
      "type": "score",
      "score": 1.98,
      "probabilities": {
        "0": 0,
        "1": 0.02,
        "2": 0.98
      }
    }
  },
  "usage": {
    "input_tokens": 394,
    "output_tokens": 74,
    "total_tokens": 468
  },
  "rounding": {
    "probabilityDecimals": 2,
    "scoreDecimals": 2
  },
  "warnings": []
}

Ответ об ошибке для чат-конечной точки

Отправка Jev на чат-конечную точку возвращает HTTP 400. Показанные ниже поля и значения соответствуют обработчику; message заменено заполнителем, фактический текст возвращает сервер.

{
  "error": {
    "message": "<server-generated message>",
    "type": "invalid_request_error",
    "code": 400
  }
}
Поддержка
Здравствуйте! Чем мы можем помочь?
Отправьте сообщение, и мы ответим в ближайшее время.
Структурированная оценка (Jev) | BazaarLink