Оценка стоимости
Узел финансовой цепочки, который пишет в трассировку ожидаемую стоимость вызова модели, к которому он ведёт.
3 мин чтения
Оценка стоимости говорит, какова ожидаемая стоимость предстоящего вызова модели, ещё до того, как вызов сделан. Он ничего не резервирует и ни в чём не отказывает.
- Узел
- Оценка стоимости
- Тип
estimate_cost- Категория
- Деньги
- Порты
- По умолчанию
defaultподключение обязательно
- По умолчанию
- Завершает путь
- Нет
Что делает узел
Когда выполнение доходит до узла, Slen оценивает вызов узла AI-модель, к которому ведёт цепочка, так же, как будет оцениваться холд этого вызова: та же модель, сообщения входа, потолок выхода узла модели и политики, которые их меняют. Узел пишет оценку в трассировку как событие estimated и пропускает выполнение дальше через По умолчанию.
Это число — прогноз. Узел модели оценивает вызов заново, когда берёт холд, мгновением позже, и когда вызов получил ответ, эта оценка пишется на этом узле вторым событием estimated. Они различаются полем source: preflight у прогноза, authorize у оценки холда.
Когда вызов оценить нельзя, событие так и говорит, а выполнение всё равно идёт дальше. Тогда о вызове решает сам узел модели.
Когда использовать
Чтобы видеть на холсте и в трассировке, какой ожидалась стоимость вызова, ещё до того, как зарезервированы какие-либо деньги.
Чтобы следующий узел мог прочитать оценку: Условие может сравнить её с порогом и выбрать ветку.
Проверка бюджета этот узел не нужен: он делает ту же оценку сам.
Вызывающий получает оценку и без узла:
cost.estimatedвыполнения складывает оценки, по которым взяты холды его вызовов, — Выполнения.
Настройки
Настроек у узла нет. Множитель запаса холда Slen выбирает по тому, насколько ошибались оценки операции до сих пор, и политика может его заменить — Политики. Множитель, сохранённый на узле в более старой версии, не читается.
Порты
У узла один порт, По умолчанию, и он обязательный.
Выход
Узел оставляет прогноз следующим узлам.
{ "estimated_cost": "0.00048000", "safety_multiplier": "1.200" }estimated_cost— ожидаемая стоимость вызова.safety_multiplier— множитель запаса, с которым был бы взят холд. Холд — это оценка, умноженная на него.
Оба значения — десятичные числа, записанные текстом. Следующий узел читает их по пути nodes.<key>.output.estimated_cost, где <key> — ключ этого узла во флоу. Когда вызов оценить не удалось, выход пуст.
Ошибки
Своих ошибок узел не выдаёт, и проверять в его настройках нечего. Его место проверяется при публикации флоу: узел ведёт ровно к одному AI-модель. Узел, который не ведёт ни к одной модели, — это misplaced_finance_node, а ведущий к нескольким — ambiguous_finance_chain — Финансовая цепочка.
Пример
- Запрос — По умолчанию → Оценка стоимости
- Оценка стоимости — По умолчанию → AI-модель
- AI-модель — Успех → Вернуть ответ
Оценка стоимости пишет прогноз вызова в трассировку, AI-модель резервирует деньги и вызывает модель, а Вернуть ответ отвечает вызывающему. Трассировка показывает обе оценки вызова на первом узле.
См. также
Финансовая цепочка — четыре узла вокруг вызова модели и порядок, в котором они стоят.
Проверка бюджета — отказать в вызове до того, как зарезервированы какие-либо деньги.
AI-модель — узел, который берёт холд.
Собрано из openapi b070e1f, sdk contract 5cc7055, php ae4a53b, node 84bc62d