Модели OpenAI (GPT-4o и новее) поддерживают кэширование промптов. В базовом режиме никаких изменений в коде не нужно — кэширование работает прозрачно для всех запросов.

API запоминает начало (префикс) запроса. При следующем запросе с таким же началом уже обработанная часть переиспользуется со скидкой, что снижает задержку и стоимость.

Общие правила для обоих режимов:

  1. Кэшируются запросы длиной от 1 024 токенов
  2. Совпадение префикса должно быть точным — любое отличие сбрасывает кэш
  3. Кэшируется всё содержимое запроса: сообщения, изображения, описание инструментов, схемы structured output

Есть два режима кэширования — автоматический и ручной.

Доступен для всех моделей от GPT-4o и новее. Настраивать ничего не нужно: OpenAI сам ставит точку кэширования на конец запроса и кэширует подходящий префикс. Работает прозрачно для любых запросов.

Начиная с GPT-5.6 запись префикса в кэш стала платной (1.25× от входных токенов), поэтому появилась возможность управлять кэшированием вручную и не платить за лишние записи.

Режим задаётся параметром prompt_cache_options.mode:

  • implicit — автоматический режим (по умолчанию). OpenAI сам ставит точку кэширования на последнее сообщение и дополнительно учитывает ваши ручные точки
  • explicit — ручной режим. Автоматическая точка отключается, кэшируются только явно отмеченные вами префиксы. Если ни одной точки не задано, запрос не кэшируется и записи в кэш не тарифицируются

Конец кэшируемого префикса отмечается полем prompt_cache_breakpoint: {"mode": "explicit"} внутри блока контента. Всё, что идёт до этой точки включительно, образует кэшируемый префикс; содержимое после неё можно менять, не сбрасывая кэш. За один запрос можно создать до 4 новых записей в кэш.

Для надёжного совпадения кэша на GPT-5.6 и новее обязательно передавайте prompt_cache_key.

{
    "model": "gpt-5.6",
    "prompt_cache_key": "support-assistant-v1",
    "prompt_cache_options": { "mode": "explicit" },
    "messages": [
        {
            "role": "system",
            "content": [
                {
                    "type": "text",
                    "text": "Длинный системный промпт (более 1024 токенов)...",
                    "prompt_cache_breakpoint": { "mode": "explicit" }
                }
            ]
        },
        {
            "role": "user",
            "content": "Вопрос пользователя"
        }
    ]
}
{
    "model": "gpt-5.6",
    "prompt_cache_key": "support-assistant-v1",
    "prompt_cache_options": { "mode": "explicit" },
    "input": [
        {
            "type": "message",
            "role": "user",
            "content": [
                {
                    "type": "input_text",
                    "text": "Длинный контекст (более 1024 токенов)...",
                    "prompt_cache_breakpoint": { "mode": "explicit" }
                },
                {
                    "type": "input_text",
                    "text": "Вопрос пользователя"
                }
            ]
        }
    ]
}

  • Запись в кэш: бесплатно для моделей вплоть до GPT-5.5. Начиная с GPT-5.6 запись префикса тарифицируется как 1.25× от цены обычных входных токенов и отражается в поле cache_write_tokens ответа
  • Чтение из кэша: от 50% до 90% дешевле обычных входных токенов (зависит от модели: GPT-5 — 90%, GPT-4.1 — 75%, GPT-4o — 50%)

Кэш по умолчанию хранится в памяти 5–10 минут с момента последнего использования (до часа в периоды низкой нагрузки).

Для моделей от GPT-5 до GPT-5.5 доступен расширенный режим хранения — до 24 часов — через параметр prompt_cache_retention:

{
  "model": "gpt-5.1",
  "input": "...",
  "prompt_cache_retention": "24h"
}

Начиная с GPT-5.6 параметр prompt_cache_retention больше не используется. Вместо него минимальное время жизни задаётся через prompt_cache_options.ttl. Сейчас поддерживается единственное значение — 30m (оно же по умолчанию): кэшированный префикс остаётся доступным не менее 30 минут, но может храниться дольше.

  • Располагайте статичное содержимое (системный промпт, инструкции, tools) в начале запроса
  • Динамическую часть (вопрос пользователя) — в конце
  • Порядок инструментов и изображений должен быть одинаковым между запросами
  • Для запросов с общим длинным префиксом используйте параметр prompt_cache_key — он улучшает маршрутизацию и повышает вероятность попадания в кэш (на GPT-5.6 и новее он обязателен для надёжного совпадения кэша)

Информация о кэшировании возвращается в поле usage ответа:

{
  "usage": {
    "prompt_tokens": 2006,
    "completion_tokens": 300,
    "prompt_tokens_details": {
      "cached_tokens": 1920,
      "cache_write_tokens": 414
    }
  }
}

Значение cached_tokens показывает, сколько токенов было прочитано из кэша (тарифицируются со скидкой). Поле cache_write_tokens (только для GPT-5.6 и новее) показывает, сколько токенов было записано в кэш — они тарифицируются по ставке 1.25× от обычных входных токенов. Если cached_tokens равно 0 — запрос был обработан полностью с нуля.

Кэширование доступно для GPT-4o и всех более новых моделей, включая серии o1, o3, o4, GPT-5.

curl "https://api.proxyapi.ru/openai/v1/chat/completions" \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer <КЛЮЧ>" \
    -d '{
        "model": "gpt-4o",
        "messages": [
            {
                "role": "system",
                "content": "Длинный системный промпт (более 1024 токенов)..."
            },
            {
                "role": "user",
                "content": "Вопрос пользователя"
            }
        ]
    }'

curl "https://api.proxyapi.ru/openai/v1/responses" \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer <КЛЮЧ>" \
    -d '{
        "model": "gpt-4o",
        "input": [
            {
                "role": "system",
                "content": "Длинный системный промпт (более 1024 токенов)..."
            },
            {
                "role": "user",
                "content": "Вопрос пользователя"
            }
        ]
    }'

Отправьте два одинаковых запроса с интервалом в несколько секунд. Во втором ответе cached_tokens будет больше нуля — это означает, что кэш сработал и вы платите за эти токены дешевле.

ProxyAPI Logo

Доступ к последним разработкам мировых лидеров в области AI для вашего проекта или бизнеса в России. Без VPN и блокировок. Оплата в рублях.

Accepted payment methods