ИИ и LLMАгентыТарифы Performance и Scale

Кеширование вызовов инструментов агента

Агенты снова и снова вызывают одни и те же инструменты с одними и теми же аргументами. Мемоизируйте результаты и перестаньте платить за один и тот же вызов API дважды.

поиск перед каждым вызовом инструмента
1
на пространство имён или запись
TTL
сэкономлено, отчёт в STATS
$
Шаг 1 из 5
Создаём пространство имён

Погода меняется медленно, поэтому результаты живут 15 минут.

Пример сеансаplaying
# Создаём пространство имён
hotkv> TOOL.CACHE.CREATE tools MAX_ENTRIES 100000 TTL 900
OK

Анимированная демонстрация с настоящими командами HotKV и примерами ответов. Нажмите на любой шаг, чтобы перейти к нему. Команды и ответы остаются на английском, ровно так, как вы вводите и видите их в HotKV.

Проблема

Агенты ходят по кругу. Они по нескольку раз за один запуск и снова в следующем запрашивают одну и ту же погоду, один и тот же курс валют, один и тот же результат SQL и одну и ту же веб-страницу. Каждый вызов стоит задержки, лимита запросов и часто денег, а медленные инструменты замедляют каждый шаг агента.

Как с этим справляется HotKV

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

Шаг за шагом

Что происходит, команда за командой

  1. 01

    Создаём пространство имён

    Погода меняется медленно, поэтому результаты живут 15 минут.

    TOOL.CACHE.CREATE tools MAX_ENTRIES 100000 TTL 900
  2. 02

    Первый вызов, промах

    Для этих аргументов в кеше пока ничего нет.

    TOOL.CACHE.GET tools "get_weather(city=Lisbon)"
  3. 03

    Вызываем инструмент один раз и сохраняем

    Вызывается настоящий API, а результат кешируется на следующие 15 минут.

    TOOL.CACHE.SET tools "get_weather(city=Lisbon)" "{\"temp_c\":21,\"sky\":\"clear\"}" TTL 900
  4. 04

    Каждый повтор - попадание

    Агент планирует вторую поездку на день и спрашивает снова. Так же поступают другие агенты для других путешественников.

    TOOL.CACHE.GET tools "get_weather(city=Lisbon)"
  5. 05

    Считаем экономию

    Попадания, промахи и сэкономленное использование отображаются по каждому пространству имён.

    TOOL.CACHE.STATS tools
Где это уместно

Реальные сценарии

Агенты путешествий и бронирования

Запросы погоды, валют и наличия мест повторяются у разных путешественников и на разных шагах планирования. Каждый результат запрашивается один раз за TTL.

Агенты по данным

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

Агенты просмотра веб-страниц

Загруженные и разобранные веб-страницы кешируются, чтобы одна и та же страница не скачивалась заново при каждом запуске.

Встроено

Что вы получаете

Мемоизация по аргументам

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

TOOL.CACHE.GETTOOL.CACHE.SET

Контроль свежести

TTL по умолчанию для пространства имён и необязательный TTL для каждой записи.

TTL

Ограниченная память

Лимит записей на пространство имён с вытеснением при заполнении.

MAX_ENTRIES

Отчёт об экономии

Попадания, промахи, вытеснения, память и сэкономленное использование.

TOOL.CACHE.STATS

Частые вопросы

Какие инструменты стоит кешировать?

Детерминированные вызовы только для чтения: поиск, запросы и выборки, результат которых зависит только от аргументов. Никогда не кешируйте инструменты, которые что-то меняют, например отправку письма.

Можно ли удалить кешированный результат раньше срока?

Да. TOOL.CACHE.DEL удаляет одну запись, а TOOL.CACHE.FLUSH очищает пространство имён.

Какие тарифы это включают?

Кеш инструментов входит в тарифы Performance и Scale.

Связанные сценарии

Попробуйте на своей нагрузке

HotKV понимает протокол Redis, поэтому вы можете подключить к нему существующий клиент и выполнить те же команды.