Prompt caching

Чему научитесь

Видео 3:35 и текст урока

К концу урока вы сможете:

Видео и текст урока.

Смотреть урок на Skilljar Prompt caching · 3:35

Prompt caching — возможность, которая ускоряет ответы Claude и снижает стоимость генерации, переиспользуя вычислительную работу из прошлых запросов. Вместо того чтобы выбрасывать всю работу по обработке после каждого запроса, Claude может сохранить её и использовать снова, когда вы пришлёте похожее содержимое.

Как Claude обычно обрабатывает запросы

Чтобы понять prompt caching, сначала посмотрим, что происходит в обычном запросе без кеша.

Обычный запрос: сервер отправляет Claude сообщение «Summarize this long text:» и место для текста.
Обычный запрос: «Summarize this long text:» и длинный текст.

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

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

Отправив ответ, Claude выбрасывает всю эту вычислительную работу — токенизация, эмбеддинги и анализ контекста отправляются в мусор.

Claude говорит «I'm ready to process the next request!», а четыре шага лежат в пунктирной рамке «Trash».
«I'm ready to process the next request!» — а вся проделанная работа лежит в «Trash».

Почему выбрасывать работу — плохо

Это неэффективно, когда следующие запросы содержат то же самое. Например, в разговоре, где вы просите Claude доработать пересказ одного и того же длинного текста:

Повторный запрос отправляет то же сообщение «summarize», пересказ и новое сообщение с просьбой сделать акцент.
Повторный запрос: то же сообщение, полученный пересказ и новая просьба уточнить акцент.

Claude приходится заново делать ту же предобработку содержимого, которое он только что проанализировал. Claude мог бы подумать: «Я только что обработал это сообщение и выбросил всю работу — а мог бы её переиспользовать!»

Повторный запрос из трёх сообщений: просьба пересказать длинный текст, пересказ, просьба сделать акцент.
Повторный запрос из трёх сообщений — первые два Claude уже обрабатывал.

Как prompt caching решает проблему

Prompt caching меняет процесс: работа по предобработке сохраняется, а не выбрасывается.

Шаги предобработки Claude теперь лежат в рамке Cache, а рамка Trash пуста.
Шаги предобработки теперь лежат в «Cache», а «Trash» пуст.

При первом запросе Claude выполняет всю обычную предобработку, но сохраняет результаты в кеш, а не выбрасывает. Кеш работает как таблица поиска: «Если я снова увижу это сообщение, переиспользую уже сделанную работу».

Таблица кеша: сообщение с просьбой пересказать длинный текст и три сохранённых шага предобработки.
Таблица кеша: сообщение и сохранённые для него шаги предобработки.

Плюсы и ограничения

Первый запрос записывает «Work done to process message» в кеш, повторный — читает оттуда.
Первый запрос записывает работу в кеш, повторный — читает из него.

Преимущества prompt caching:

Но есть важные ограничения:

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

Дальше

Следующий урок — правила: точки кеширования, порядок частей запроса и минимальный размер.

Оригинал урока: Prompt caching.