Спершу холд, потім витрата: як виклик лишається в бюджеті
Як Slen резервує гроші до виклику моделі, що холд робить із вашими бюджетами і як його потім розраховують.
3 хв читання
Кожен виклик моделі у флоу починається з холду. До того як спитають провайдера, Slen оцінює, скільки коштуватиме виклик, і резервує цю суму у ваших бюджетах. Після виклику він розраховує холд: списання записує, скільки коштував виклик, а повернення віддає холд назад. Тому бюджет може відхилити виклик до того, як той щось коштував. API називає холд авторизацією, а консоль показує холди на вкладці Авторизації сторінки Операції.
Звідки береться холд
Холд бере вузол AI-модель флоу — під виклик моделі цього вузла, а розраховує його Slen сам після виклику. Холд бере лише виклик моделі у флоу.
Флоу з кількома вузлами моделі бере холд під кожен виклик, коли виконання до нього доходить.
Резерв бюджету і Списання та повернення лише позначають, де холд береться й розраховується, — Фінансовий ланцюжок, Резерв бюджету і Списання та повернення.
Перевірка бюджету і Оцінка вартості дивляться на виклик до його холду й нічого не резервують — Перевірка бюджету і Оцінка вартості.
Що холд робить із бюджетом
Холд — це оцінка виклику, помножена на множник запасу, тому він трохи більший за очікувану вартість виклику. Бюджет ураховує списане й зарезервоване разом: новий холд дозволяється, лише якщо і те, і інше разом із новим холдом укладається в ліміт. Інакше виклик відхиляється з budget_exceeded.
Два види бюджету рахують інше. Бюджет На операцію відхиляє окремий холд, більший за його ліміт, з operation_limit_exceeded. Бюджет Одночасні резерви рахує холди, відкриті одночасно, і відхиляє ще один з concurrency_limit_exceeded.
Відкрийте бюджет на сторінці Бюджети, щоб побачити, як складаються дві частини: Списано — скільки коштували виклики, У резерві — скільки тримають відкриті холди, а Доступно — що лишилося від ліміту.
Виклик, зроблений для одного з ваших клієнтів, ще й резервує свою ціну в кредитах на його рахунку. Стаття Кредити клієнтів пояснює цей другий холд.
Чим закінчується холд
| Статус | Що сталося |
|---|---|
authorized | Холд стоїть: виклик ось-ось буде зроблено, він триває або його ще не розраховано |
captured | Виклик розраховано: його вартість витрачено, а холд повернувся |
overrun | Виклик коштував більше за свій холд. Усю вартість однаково витрачено |
partially_captured | Виклик розраховано за використанням, яке завідомо неповне |
released | Холд повернули: виклику не було або він не вдався |
expired | Холд ніхто не розрахував вчасно, і Slen повернув його сам |
Холд живе 15 хвилин. Виклик моделі, який флоу передає провайдерові на виконання у фоні, тримає свій холд 30 хвилин від початку виклику. Цей строк обмежує холд, а не виклик: провайдер продовжує роботу, і виклик розраховується, коли закінчиться. У налаштуваннях сервісу ці строки можуть бути іншими. Раз на хвилину Slen повертає холди, час яких вийшов.
Холд, який уже повернули, усе ще можна списати. Коли з’ясовується, що виклик було оплачено вже після того, як його холд повернули або він сплив, списання записує його вартість і нічого не повертає вдруге. Тоді холд переходить із released або expired у статус розрахованого виклику: captured, overrun або partially_captured. Тому released і expired означають, що зарезервовані гроші повернулися, а не що нічого не буде витрачено: читайте статус, коли виклик закінчиться.
Де видно холди
На сторінці Операції вкладка Авторизації перелічує холди проєкту від нових до старих. Оцінка — скільки, як очікувалося, коштуватиме виклик, Утримано — його холд, а Списано — скільки виклик коштував. Вкладка Реєстр перелічує рухи грошей, які зробили холди. Холд і його списання — там два записи, тож не складайте записи: стаття Записи реєстру пояснює, як їх читати.
Що читати далі
Операції — ті самі холди через API.
Оцінка вартості — скільки, як очікується, коштуватиме виклик, записано в трасування до його холду.
Кредити клієнтів — холд на кредитах вашого клієнта.
Політики — правила, які можуть відхилити виклик до його холду.
Бюджети — створити бюджет і дізнатися, скільки від нього лишилося.