Skip to content

Кэширование промптов

Smart cache — автоматическое кэширование промптов в rout.my для поддерживаемых моделей, особенно Anthropic Claude. Оно включено по умолчанию, поэтому в большинстве запросов не нужны дополнительные поля или изменения в SDK.

Для длинных или повторяющихся диалогов smart cache может снижать стоимость закэшированных input tokens и ускорять time-to-first-token на длинном контексте. Точная выгода зависит от провайдера, модели и формы запроса.

Что делает smart cache

Когда smart cache активно, rout.my управляет provider-side prompt caching за вас. Вы отправляете обычный OpenAI-compatible, Anthropic-compatible или Responses request, а сервис применяет кэширование только там, где выбранная модель его поддерживает.

Если модель или endpoint не поддерживает provider-side prompt caching, запрос все равно выполняется обычным образом.

Ваш cache_control всегда важнее

Если в запросе уже есть provider caching markers, rout.my оставляет их без изменений и не добавляет свои.

Это относится к Anthropic-style блокам cache_control в сообщениях. Используйте это, если хотите сами управлять точными cache breakpoints.

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

Параметр smart_cache

Smart cache можно переопределить для отдельного запроса top-level boolean полем:

ЗначениеПоведение
smart_cache: falserout.my не трогает кэширование для этого запроса. Ничего не добавляет и ничего не меняет. Любые caching markers, которые вы отправили, проходят дальше ровно как есть.
smart_cache: trueПринудительно включает smart cache для этого запроса, даже если он выключен в dashboard settings. Если вы также отправили свои блоки cache_control, они все равно важнее.
отсутствуетРешает настройка в dashboard.

smart_cache принимается в OpenAI-compatible Chat Completions, Anthropic-compatible Messages и Responses requests. rout.my использует это поле только для обработки текущего запроса и не отправляет его провайдеру.

Отключить smart cache для одного запроса

bash
curl https://api.rout.my/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-sonnet-4.6",
    "smart_cache": false,
    "messages": [
      { "role": "user", "content": "Summarize this long document." }
    ]
  }'

Используйте это, когда нужен полностью hands-off запрос и вы хотите, чтобы любые provider caching markers прошли дальше ровно в том виде, в котором вы их отправили.

Принудительно включить smart cache для одного запроса

bash
curl https://api.rout.my/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-sonnet-4.6",
    "smart_cache": true,
    "messages": [
      { "role": "user", "content": "Continue this long conversation." }
    ]
  }'

Используйте это, когда настройка в dashboard выключена, но конкретный long-context запрос должен использовать smart cache.

Настройка в dashboard

В dashboard есть персональная настройка кэширования для Claude. Оставьте ее включенной, чтобы rout.my автоматически обрабатывал поддерживаемые запросы, или выключите, если предпочитаете управлять кэшированием самостоятельно.

Поле smart_cache в запросе переопределяет настройку из dashboard только для этого запроса.

Заметки

  • Smart cache меняет только поведение кэширования; он не меняет ваш prompt или выбранную модель.
  • Не нужно добавлять smart_cache: true, если настройка в dashboard уже включена.
  • Если вы отправляете свой cache_control, rout.my остается hands-off для этого запроса.

API documentation for rout.my.