Aller au contenu principal

Les regles du cache

Le contenu n’est pas mis en cache automatiquement. Il faut ajouter manuellement des points d’arret de cache (cache breakpoints).

Points d’arret de cache

Tout ce qui precede un point d’arret sera mis en cache. Le cache n’est reutilise que si le contenu jusqu’au point d’arret est strictement identique.

Il faut utiliser la forme longue des blocs texte :

user_message = {
    "role": "user",
    "content": [
        {
            "type": "text",
            "text": "votre texte",
            "cache_control": {
                "type": "ephemeral"
            }
        }
    ]
}

Emplacements des points d’arret

Vous pouvez placer des points d’arret sur :

  • Les definitions d’outils (cas le plus courant)
  • Les prompts systeme
  • Les messages
# Outils avec cache
tools[-1]["cache_control"] = {"type": "ephemeral"}

# Prompt systeme avec cache
system = [{
    "type": "text",
    "text": "Vous etes un ingenieur senior...",
    "cache_control": {"type": "ephemeral"}
}]

Ordre du cache

En interne, outils, prompts systeme et messages sont joints dans cet ordre. Jusqu’a quatre points d’arret sont autorises.

Taille minimum

Le contenu doit faire au moins 1024 tokens pour etre mis en cache.

La cle d’un cache efficace : identifier les parties de vos requetes qui restent stables (generalement les schemas d’outils et le prompt systeme) et placer les breakpoints strategiquement.