Главная/Документация/Возможности AIKraft/Экономия на длинных разговорах
Возможности AIKraft Материал AIKraft

Экономия на длинных разговорах

Поставщик модели держит кэш переписки около часа: пока он жив, продолжение диалога стоит примерно десятую часть. Система удерживает кэш выбранных сессий.

Длинный рабочий диалог с агентом стоит денег не потому, что вы много пишете, а потому что при каждом сообщении модели заново отправляется вся предыдущая переписка.

Откуда берётся экономия

Поставщик модели кэширует уже отправленное и держит запись около часа. Пока кэш жив, повторная отправка всей истории стоит примерно десятую часть обычной цены. Как только запись истекла, следующее сообщение переписывает весь контекст заново — по полной.

На практике это выглядит так: сотрудник поработал, ушёл на обед, вернулся через два часа — и первое же сообщение после перерыва стоит как весь разговор до него.

Что делает система

Функция «Держать сессию тёплой» точечно удерживает кэш только у тех сессий, которые вы отметили. Это не фоновая молотилка:

  • ограничение на число одновременно «тёплых» сессий;
  • ограничение на срок — сессия, которую забыли, сама остывает;
  • тихие часы, когда греть не нужно вовсе (например, ночью).

Проверено замерами

Способ подогрева выбирался не по документации, а по живым замерам на настоящих сессиях: первый очевидный вариант кэш вообще не обновлял, зато платил полную цену. Работающий способ найден и закреплён замером.

Вторая половина той же задачи: кэш не должен обваливаться

Удерживать кэш бессмысленно, если он рушится сам. Запрос к модели склеивается в жёстком порядке и кэшируется по своему началу: изменился один байт в начале — заново записывается всё, что после него, включая всю накопленную переписку.

Разбор журналов за трое суток показал, во что это обходилось: из 208 возобновлений работы 137 сбрасывали кэш полностью, и 116 из них — при паузе меньше часа, когда кэш обязан был сработать. Впустую переписано 40 миллионов токенов. Один такой сброс большого разговора стоит как отдельный дорогой ход, и повторялся он десятки раз в день.

Виноваты были две вещи: строка с текущим временем в самом начале запроса, менявшаяся при каждом обращении, и сторож простоя, убивавший соединение через 10 минут — при том что кэш у поставщика живёт час. Пауза в полчаса означала, что кэш ещё тёплый, а процесс уже снят.

Что сделано:

  • стартовый пакет собирается один раз на сессию и дальше отдаётся тем же самым текстом, байт в байт;
  • срок жизни соединения поднят с 10 минут до часа — под срок жизни кэша;
  • системный запрос записывается один раз на разговор и переиспользуется дословно, а машинно-зависимые части вынесены из него в первое сообщение, то есть в замороженную историю.

Свежесть данных при этом не теряется: всё, что зависит от вопроса, подаётся на каждый ход отдельно, а не через начало запроса.

Как включить

  1. Откройте настройки рабочего места и включите плагин «Держать сессию тёплой».
  2. Задайте, сколько сессий греть и как долго.
  3. Укажите тихие часы.
  4. Отметьте сессии, которые должны оставаться тёплыми.

Нужен такой агент в вашей компании?

Устанавливаем под ключ: настройка на компьютерах сотрудников, единый аккаунт, интеграция с 1С и внутренними системами, обучение команды. Подробнее о внедрении →