Respan: Span-01
Span-01 — текстовый классификатор поведения Respan для разговоров и трасс агентов. Определите виды поведения обычным языком, и он вернёт по три вероятности для каждого: присутствует, отсутствует и невозможно установить по наблюдению, сохраняя неопределённость, когда переданная трасса не позволяет разрешить вопрос.
О модели
Описание раскрывает возможности модели. Доступные в Ailoot входные данные, результаты и параметры выбранного метода перечислены ниже.
Span-01 — модель Respan для оценки поведения в разговорах и трассах агентов. Она читает текстовое взаимодействие вместе с определениями поведения на обычном языке и возвращает вероятности для каждого определения. Вывод различает поведение, которое присутствует, отсутствует или не может быть установлено по наблюдению в переданной трассе. Это даёт процессу оценки числовой сигнал с явным способом представления недостающих свидетельств, а не сгенерированное объяснение, которое нужно разбирать.
Определите поведение, которое хотите наблюдать
Виды поведения передаёт вызывающая сторона. Инъекция промпта, неподтверждённые утверждения, раскрытие секретов, повторяющиеся циклы, неправильное использование инструментов и раздражение пользователя — возможные определения, а не фиксированная встроенная в модель таксономия. Укажите, что считается данным поведением и что им не считается. Узкое определение может отличать просьбу пользователя передать разговор человеку от простого выражения разочарования. Другое — отличать признание проблемы ассистентом от обещания действия, которое он не может выполнить.
Используйте стабильные идентификаторы с определениями, чтобы результаты сохраняли связь с оцениваемым поведением. Критерий должен быть сосредоточен на том, что может показать трасса. Если поведение требует исходного документа, результата инструмента или последующего ответа клиента, включите эти свидетельства в текстовое взаимодействие в соответствующем месте. Одно определение не может установить факт, отсутствующий в трассе.
Подготовьте предшествующий контекст и целевую реплику
Документированный вход отделяет предшествующие сообщения в span.input от целевой реплики в span.output. Содержимое каждого сообщения является строкой. Передайте реальный контекст разговора и реплику, которую хотите оценить, сохраняя роли говорящих и порядок, необходимый для интерпретации. Это профиль оценки текста: подготовленный текст документа или расшифровка могут быть свидетельствами, тогда как медиа, из которых получен этот текст, сами по себе не являются документированным входом.
Для взаимодействия с поддержкой сохраняйте запрос клиента вместе с предлагаемым ответом ассистента. Для агента с инструментами сохраняйте относящееся к делу наблюдение инструмента и ответ, который на него опирался. Иллюстративное определение обоснованности может спрашивать, утверждает ли ассистент вывод, который не подтверждается переданным наблюдением. Полезный результат относится к определённому поведению в этом фрагменте, а не к полной диагностике всего приложения.
Читайте три вероятности для каждого определения
Каждый результат включает идентификатор поведения и p_present, p_absent, p_not_observable. Сумма трёх вероятностей приблизительно равна 1. Присутствие оценивает, что поведение произошло; отсутствие — что не произошло; невозможность установить по наблюдению — что в переданном фрагменте нет необходимых для решения свидетельств. Это отдельные значения, и при интерпретации результатов их следует сохранять раздельными.
Например, фрагмент, заканчивающийся словами ассистента о том, что он решит проблему, может показывать обещание. Он ещё не может показать, что клиент принял итоговое решение проблемы, если ответа клиента нет. Рассматривайте такой результат с недостающими свидетельствами как неизвестный, вместо преобразования его в отсутствие. Низкая вероятность присутствия не является автоматически сильным свидетельством отсутствия, когда значительная доля распределения приходится на невозможность установить по наблюдению.
Оценка определений поведения за один проход
Respan описывает Span-01 как классификатор с рассуждением, сначала обученный общей классификации с RLAIF, а затем специализированный для обнаружения поведения. Каждое определение выполняется как параллельная ветвь над одной и той же трассой, и модель возвращает вероятности поведения за один прямой проход. Гибридное внимание поддерживает работу с длинными сложными трассами. Модель не генерирует токены, не пишет связное суждение и не создаёт объяснение классификации в свободной форме.
Руководство по концепции и справочник оценки не документируют ограничения количества видов поведения на запрос. Каждое определение всё равно является частью переданной оценки, поэтому делайте его ясным и релевантным, вместо трактовки отсутствия количественного ограничения как свидетельства неограниченной входной ёмкости. Результат содержит одну запись на вид поведения в порядке запроса с его id. Несколько определений описывают несколько независимых наблюдений; это не взаимоисключающие варианты категорий, сумма которых по всем видам поведения должна равняться единице.
Подготовка полезного артефакта оценки
Объединяйте возвращённые вероятности с порогами конкретной задачи и правилами проверки вне модели. Производитель рекомендует выбирать эти пороги по размеченным разговорам и разбирать пограничные результаты присутствия или высокую вероятность невозможности установить по наблюдению. Рабочий процесс поддержки может отдельно фиксировать раздражение, предложенную эскалацию и неподтверждённое обещание. Процесс оценки качества агента может отслеживать повторные действия или использование ответом предоставленных ему свидетельств.
Храните текстовый фрагмент, определение поведения, идентификатор результата и полное трёхчастное распределение вместе. Когда определение меняется, учитывайте, что меняется и то, что измеряет вероятность. Проверяйте кажущиеся ошибки по реальному разговору, вместо трактовки числового результата как доказательства ненаблюдавшегося события. Полезный артефакт — запись о поведении, связанная с трассой и критерием, с сохранением неопределённости для последующего разбора или следующего решения приложения.
Ailoot Ultra · System One POST /v1/systemone respan/span-01
respan/span-01Начало
Span-01 — текстовый классификатор поведения Respan для разговоров и трасс агентов. Определите виды поведения обычным языком, и он вернёт по три вероятности для каждого: присутствует, отсутствует и невозможно установить по наблюдению, сохраняя неопределённость, когда переданная трасса не позволяет разрешить вопрос.
- Допустимые входные данные
- Текст
- Результаты
- decisions
Доступно в Ailoot · входные данные и методы
Ailoot Ultra · System One POST /v1/systemone
- Входные данные
text- Результат
decisions- Выходной формат
- json
| Поле | Тип | Требование | Значения и ограничения | По умолчанию |
|---|---|---|---|---|
Полеmodel | Типstring | ТребованиеОбязательно | Значения и ограничения respan/span-01 | По умолчанию— |
Полеprovider | Типschema | ТребованиеНеобязательно | Значения и ограничения | По умолчанию— |
Полеquestions | Типobject | ТребованиеОбязательно | Значения и ограничения | По умолчанию— |
Полеsession_id | Типstring | ТребованиеНеобязательно | Значения и ограничения | По умолчанию— |
Полеstate | Типschema | ТребованиеОбязательно | Значения и ограничения | По умолчанию— |
Полеtrace | Типschema | ТребованиеНеобязательно | Значения и ограничения | По умолчанию— |
Полеuser | Типstring | ТребованиеНеобязательно | Значения и ограничения | По умолчанию— |
Полеquestions.<id>.type | Типstring | ТребованиеОбязательно | Значения и ограничения noul, choice, score | По умолчанию— |
Полеquestions.<id>.instructions | Типstring|object|array | ТребованиеОбязательно | Значения и ограничения | По умолчанию— |
Полеquestions.<id>.criteria | Типobject|array | ТребованиеНеобязательно | Значения и ограничения Условия: choice/score: обязательны; noul: необязателен. criteria для choice — объект; для score — массив с minItems1. | По умолчанию— |
Полеquestions.<id>.criteria.true | Типstring|object|array | ТребованиеОбязательно | Значения и ограничения Применяется, когда: Передан объект критериев noul | По умолчанию— |
Полеquestions.<id>.criteria.false | Типstring|object|array | ТребованиеОбязательно | Значения и ограничения Применяется, когда: Передан объект критериев noul | По умолчанию— |
Сочетания входных материалов
noul · Обязательно: state, questions.<id>.type=noul, questions.<id>.instructions
choice · Обязательно: state, questions.<id>.type=choice, questions.<id>.instructions, criteria object
score · Обязательно: state, questions.<id>.type=score, questions.<id>.instructions, criteria array with minItems1
Параметры и жизненный цикл метода
| Параметр | Контракт |
|---|---|
Параметрcontent_type | Контрактapplication/json |
Параметрrequired | Контрактmodel, state, questions |
Параметрmaterial_types | Контрактtext |
Параметрoptional_controls | Контрактprovider, session_id, trace, user |
Параметрmultimodal_input_binding | Контрактnull |
Жизненный цикл: synchronous
Передайте точный ID модели и сохраните полный нативный ответ.
Тарифы
Тарифная справка не добавляет режимы запроса. Поддерживаемые параметры указаны для выбранного метода.
- Быстрый режим
- Не указано При выборе быстрого режима
- Режим flex
- Не указано При выборе режима flex
- Максимальная интенсивность рассуждений
- Не указано При максимальной интенсивности рассуждений с корректировкой по умолчанию (default)
Ставки Ailoot
Цены по конфигурациям
Сопоставьте каждую плату с указанными условиями. Для каждого набора альтернативных конфигураций используйте одну ставку.
| Конфигурация | Шкала ставок | Токенов контекста больше | Токенов контекста не более, включительно | Плата |
|---|---|---|---|---|
| КонфигурацияБазовые ставки за токены | Шкала ставокБазовая ставка | Токенов контекста больше— | Токенов контекста не более, включительноБез верхней границы | Плата Вход · Входные токены $0.00004 / 1K токенов Выход · Выходные токены $0 / 1K токенов Вход · Чтение кэша — / 1K токенов Вход · Запись в кэш — / 1K токенов Вход · Запись в кэш, 1 час — / 1K токенов |
| КонфигурацияУровень 1 по длине запроса | Шкала ставок— | Токенов контекста больше0 | Токенов контекста не более, включительноБез верхней границы | Плата Вход · Входные токены $0.00004 / 1K токенов Выход · Выходные токены $0 / 1K токенов Вход · Чтение кэша — / 1K токенов Вход · Запись в кэш — / 1K токенов Вход · Запись в кэш, 1 час — / 1K токенов |
Ailoot резервирует расчётную сумму перед запросом. После получения результата списывает итоговую плату по измеренному расходу. Для окончательного списания за потоковый ответ используется итоговая запись расхода. Как работают резервирование и расчёт →
Примеры запросов
Ailoot Ultra · System One
{
"model": "respan/span-01",
"questions": {
"is_bug": {
"criteria": {
"false": "The customer is asking a question or requesting a feature.",
"true": "The customer describes broken or unexpected product behavior."
},
"instructions": "Is the customer reporting a software defect?",
"type": "noul"
},
"team": {
"criteria": {
"account": "Login, permissions, or profile issues.",
"frontend": "Rendering, layout, or browser compatibility issues.",
"payments": "Checkout, billing, or payment processing issues."
},
"instructions": "Which team should own this ticket?",
"type": "choice"
},
"urgency": {
"criteria": [
"Can wait for the next release",
"Should be fixed this week",
"Blocking revenue right now"
],
"instructions": "How urgent is this ticket?",
"type": "score"
}
},
"state": {
"customer_tier": "enterprise",
"ticket": "My checkout page shows a blank screen after I click Pay. I have tried two browsers."
}
}set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_REQUEST_FILE:?Set your actual JSON request file}"
export AILOOT_REQUEST_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads(Path(os.environ['AILOOT_REQUEST_FILE']).read_text(encoding='utf-8'))
if not isinstance(p,dict): raise SystemExit('Request must be a JSON object')
p['model']='respan/span-01'
Path('request.json').write_text(json.dumps(p,ensure_ascii=False),encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/systemone \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path('result.json').read_text()),ensure_ascii=False,indent=2))
PY_RESULT
Получить и сохранить результаты
Ailoot Ultra · System One
json
Сохраняйте все готовые результаты
Сохраняйте каждый полностью полученный ответ, файл и элемент содержимого.
Сохраняется каждый предоставленный ответ с ID вопроса, его точным типом, значением noul/choice/score, уверенностью, вероятностями и легендой. Весь исходный JSON сохраняется и возвращается только после окончательного расчёта.
Если нужно проверить исходный ответ
Сохраните исходную операцию и полный либо частичный ответ; не повторяйте POST.
Поля ответа
| Поле | Тип |
|---|---|
Полеmodel | Типstring |
Полеid | Типstring |
Полеprovider | Типstring |
Полеanswers.<id>.type | Типstring |
Полеanswers.<id>.noul | Типnumber |
Полеanswers.<id>.choice | Типstring |
Полеanswers.<id>.score | Типnumber |
Полеanswers.<id>.confidence | Типnumber |
Полеanswers.<id>.probabilities | Типobject |
Полеanswers.<id>.legend | Типobject |
Полеusage.input_tokens | Типinteger |
Полеusage.output_tokens | Типinteger |
Полеusage.cost | Типnumber |
Ошибки и дальнейшие шаги
| Ответ | Условие | Следующий шаг |
|---|---|---|
Ответ400 · invalid_request_error | УсловиеНедопустимое обязательное поле, представление или значение | Следующий шагИсправьте указанное поле запроса. |
Псевдонимы
Псевдонимы моделей
Ailoot Ultra respan/span-01
Псевдонимы путей метода
Используйте пути методов, указанные выше.
Связанные ID для вызова
FAQ · Respan: Span-01
- Какие входные данные и результаты доступны?
POST /v1/systemone·respan/span-01:text→decisions- Какие поля использует запрос?
POST /v1/systemone·respan/span-01:model,provider,questions,session_id,state,trace,user