Состояние
Что такое состояние, как его структурировать и как дать модели System One нужный ей контекст.
Состояние — это содержимое, которое вы просите модель System One оценить. Это может быть сообщение в поддержку, фрагмент текста или текущее состояние вашего приложения. Вы передаёте его в поле state запроса к API вместе с вопросами, ответы на которые хотите получить.
Каждый запрос оценивает одно состояние относительно одного или нескольких вопросов. Все вопросы видят одно и то же состояние и оцениваются независимо друг от друга. Вы можете смешивать вопросы Choice, Score и Noul в одном запросе.
Состояние может быть простой строкой или структурированным значением JSON
Простейшее состояние — это обычная строка:
state = "My card was charged twice."
Состояние также может быть объектом или массивом JSON со связанным контекстом, примерами и другой информацией, которая помогает модели ответить на связанные вопросы. Представьте состояние как материал, который вы показали бы группе экспертов, прежде чем попросить их вынести суждение. В Python передайте соответствующую строку, словарь или список напрямую в client.system_one(state=...).
| Формат | Для чего подходит | Пример |
|---|---|---|
| Строка | Сообщение, статья или фрагмент | "My card was charged twice." |
| Объект | Именованные поля, связанные записи или состояние приложения | {"message": "My card was charged twice.", "order_id": "A-104"} |
| Массив | Последовательность сообщений или записей | ["Hi", "My customer number is TS1337.", "My card was charged twice."] |
Для большинства запросов используйте объект, чтобы у каждой части состояния было описательное имя и её связи оставались ясными. Строка подходит, когда сценарий прост и требует лишь одного фрагмента текста.
Переписка со службой поддержки как состояние
{
"ticket": {
"subject": "Duplicate charge",
"messages": [
{"from": "customer", "text": "I was charged twice for order A-104. Please refund the duplicate."},
{"from": "support", "text": "We are checking the charges."}
]
},
"order": {
"id": "A-104",
"charges": [
{"amount_usd": 49, "status": "captured"},
{"amount_usd": 49, "status": "captured"}
]
},
"refund_policy": "Duplicate charges are eligible for a refund."
}
Этот объект — одно состояние, хотя он содержит переписку, заказ и правила. Объединяйте связанную информацию, когда для решения нужно сравнить эти части.
Отделяйте содержимое от вопросов
Состояние содержит содержимое и подтверждающие факты. Вопросы определяют суждения, которые модель должна вынести об этом материале. Например, оставьте запрос на возврат и правила в состоянии, а затем спросите, запросил ли клиент возврат и поддерживают ли его правила.
См. Примитивы (вопросы), чтобы разобраться с инструкциями, критериями, типами вопросов и тем, как задавать несколько вопросов об одном состоянии.
См. справочник по API для схемы запроса и клиентские SDK для установки, типизированных входных данных и обработки ответов.