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

> У входных токенов из кэша своя цена. Что даёт попадание в кэш и что игнорируется.


Некоторые запросы повторно используют длинный префикс: системный промпт, большой файл, раннюю часть переписки. Если на стороне обслуживания этот префикс найден в кэше, такие входные токены оплачиваются по цене входа из кэша, указанной на [странице моделей](https://notholy.com/ru/models).

- Кэширование автоматическое. Ничего помечать не нужно.
- `cache_control` в Messages принимается и игнорируется.
- В данных о расходе видна закэшированная часть: `prompt_tokens_details.cached_tokens` в chat completions, `input_tokens_details.cached_tokens` в Responses, `cache_read_input_tokens` в Messages.
- Попадание в кэш не гарантировано. Чтобы повысить шансы, держите неизменное содержимое в начале промпта, а меняющееся — в конце.

```python test
import os
from openai import OpenAI

client = OpenAI(base_url="https://api.notholy.com/v1", api_key=os.environ["NOTHOLY_API_KEY"])

system = "You review web application code for an authorized assessment. Report findings with file, line, CWE and a fix."
r = client.chat.completions.create(
    model="notholy-specter",
    messages=[{"role": "system", "content": system}, {"role": "user", "content": "Review: res.send(req.query.name)"}],
)
print(r.usage.prompt_tokens, getattr(r.usage.prompt_tokens_details, "cached_tokens", 0))
```

## Что дальше

- [Как экономить](/ru/guides/cost)
