Агенты путешествий и бронирования
Запросы погоды, валют и наличия мест повторяются у разных путешественников и на разных шагах планирования. Каждый результат запрашивается один раз за TTL.
Агенты снова и снова вызывают одни и те же инструменты с одними и теми же аргументами. Мемоизируйте результаты и перестаньте платить за один и тот же вызов API дважды.
Погода меняется медленно, поэтому результаты живут 15 минут.
Анимированная демонстрация с настоящими командами HotKV и примерами ответов. Нажмите на любой шаг, чтобы перейти к нему. Команды и ответы остаются на английском, ровно так, как вы вводите и видите их в HotKV.
Агенты ходят по кругу. Они по нескольку раз за один запуск и снова в следующем запрашивают одну и ту же погоду, один и тот же курс валют, один и тот же результат SQL и одну и ту же веб-страницу. Каждый вызов стоит задержки, лимита запросов и часто денег, а медленные инструменты замедляют каждый шаг агента.
Кеш инструментов мемоизирует детерминированные вызовы инструментов по ключу, построенному из имени инструмента и его аргументов. Перед вызовом инструмента агент спрашивает кеш. Попадание сразу возвращает сохранённый результат, а при промахе инструмент вызывается один раз, и результат сохраняется с TTL, соответствующим требуемой свежести.
Погода меняется медленно, поэтому результаты живут 15 минут.
TOOL.CACHE.CREATE tools MAX_ENTRIES 100000 TTL 900Для этих аргументов в кеше пока ничего нет.
TOOL.CACHE.GET tools "get_weather(city=Lisbon)"Вызывается настоящий API, а результат кешируется на следующие 15 минут.
TOOL.CACHE.SET tools "get_weather(city=Lisbon)" "{\"temp_c\":21,\"sky\":\"clear\"}" TTL 900Агент планирует вторую поездку на день и спрашивает снова. Так же поступают другие агенты для других путешественников.
TOOL.CACHE.GET tools "get_weather(city=Lisbon)"Попадания, промахи и сэкономленное использование отображаются по каждому пространству имён.
TOOL.CACHE.STATS toolsЗапросы погоды, валют и наличия мест повторяются у разных путешественников и на разных шагах планирования. Каждый результат запрашивается один раз за TTL.
Запросы SQL только для чтения и метрики дашбордов мемоизируются, поэтому агент, исследующий данные, не нагружает хранилище.
Загруженные и разобранные веб-страницы кешируются, чтобы одна и та же страница не скачивалась заново при каждом запуске.
Ключи строятся из имени инструмента и его аргументов, поэтому каждый отдельный вызов кешируется отдельно.
TOOL.CACHE.GETTOOL.CACHE.SETTTL по умолчанию для пространства имён и необязательный TTL для каждой записи.
TTLЛимит записей на пространство имён с вытеснением при заполнении.
MAX_ENTRIESПопадания, промахи, вытеснения, память и сэкономленное использование.
TOOL.CACHE.STATSДетерминированные вызовы только для чтения: поиск, запросы и выборки, результат которых зависит только от аргументов. Никогда не кешируйте инструменты, которые что-то меняют, например отправку письма.
Да. TOOL.CACHE.DEL удаляет одну запись, а TOOL.CACHE.FLUSH очищает пространство имён.
Кеш инструментов входит в тарифы Performance и Scale.
HotKV понимает протокол Redis, поэтому вы можете подключить к нему существующий клиент и выполнить те же команды.