Я только что опубликовал краткий пошаговый Jupyter-ноутбук, показывающий, как создать пользовательскую LLM для @crewAIInc, которая вызывает API сообщений @AnthropicAI и реализует кэширование подсказок. Итак, что такое кэширование подсказок и когда его следует использовать в вашей команде? Это способ кэшировать длинную, повторяющуюся часть вашей подсказки (обычно системный контекст) между вызовами API. Вы отправляете его один раз, затем последующие вызовы повторно используют его; сокращая затраты на ввод примерно на 90% и ускоряя время до первого токена примерно на 85% для длинных подсказок, при условии, что содержимое системы + модель + заголовки остаются неизменными и вы находитесь в пределах TTL (по умолчанию 5 минут, бета-версия 1 час). Это отлично работает для разговорчивых, многоповоротных команд. Также полезно всякий раз, когда ваша команда повторно использует длинный, стабильный системный контекст в разных задачах (подумайте: справочник, спецификация, сводка кода). Если ваше системное/контекстное содержимое меняется при каждом вызове, кэширование не поможет. Кулинарная книга использует "Франкенштейн" из Проекта Гутенберг, чтобы продемонстрировать кэширование с реальным, длинным контекстом. Схема ниже: первый запуск записывает в кэш; последующие запуски читают из кэша, когда содержимое системы, модель и заголовки совпадают в пределах TTL.
919