> ## Documentation Index
> Fetch the complete documentation index at: https://novita.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Promptcache

export const PromptCacheModels = () => {
  if (typeof document === "undefined") {
    return null;
  } else {
    let attempts = 0;
    const maxAttempts = 50;
    const INIT_DISPLAY_COUNT = 3;
    const interval = setInterval(() => {
      const clientComponent = document.getElementById("prompt-cache-models");
      if (clientComponent && window.novitaRemoteData.llmModels.status === 'loaded') {
        const modelList = window.novitaRemoteData.llmModels.data.filter(model => {
          return !!model.support_prompt_cache;
        });
        let displayModels = modelList.slice(0, INIT_DISPLAY_COUNT).map(model => {
          return `<li><span class="model-id-item">${model.id}</span></li>`;
        }).join('');
        let showMoreButton = '';
        if (modelList.length > INIT_DISPLAY_COUNT) {
          showMoreButton = `<button id="show-more-prompt-cache-model-btn" style="margin-left: 32px; color: rgb(40 116 255)">View More</button>`;
        }
        clientComponent.innerHTML = `
          <ul>${displayModels}</ul>
          ${showMoreButton}
        `;
        document.getElementById('show-more-prompt-cache-model-btn')?.addEventListener('click', () => {
          clientComponent.innerHTML = `
            <ul>${modelList.map(model => {
            return `<li><span class="model-id-item">${model.id}</span></li>`;
          }).join('')}</ul>
          `;
        });
        clearInterval(interval);
      }
      attempts++;
      if (attempts >= maxAttempts) {
        clearInterval(interval);
      }
    }, 200);
    return <div id="prompt-cache-models"></div>;
  }
};

Prompt Cache is een kostenoptimalisatiefunctie die wordt aangeboden door de Novita inference engine.

Wanneer een verzoek overeenkomt met een eerdere prompt, retourneert het systeem een gecachet resultaat en brengt het slechts een minimale cache-tokenvergoeding in rekening — waardoor de kosten aanzienlijk worden verlaagd en de responslatentie wordt verbeterd.

## 1. Voordelen

Met Prompt Cache ingeschakeld profiteer je van:

* **Lagere kosten**

  Herhaalde prompts vereisen niet langer volledige inference. Alleen minimale cache-tokenvergoedingen worden in rekening gebracht.

* **Lagere latentie**

  Gecachete resultaten worden direct geretourneerd zonder het model uit te voeren.

* **Hogere doorvoer**

  In scenario’s met hoge QPS vermindert Prompt Cache de compute-belasting en verbetert het de algehele systeemcapaciteit.

* **Transparant voor je applicatie**

  er is geen aanvullende logica of systeemwijziging vereist.

## 2. Ondersteunde modellen

Verschillende serverless open-source modellen ondersteunen momenteel promptcache-facturering, waaronder:

<PromptCacheModels />

Raadpleeg voor prijsinformatie over de promptcachefunctie van ondersteunde modellen: [https://novita.ai/pricing](https://novita.ai/pricing) (zie de sectie "Cache").

## 3. Gebruiksscenario’s

Prompt Cache is zeer effectief in workloads met **vaak herhaalde prompts**, waaronder maar niet beperkt tot:

* **Template-gebaseerde generatie**
  * Samenvattingen met vaste indeling
  * Template-gestuurde herschrijving
  * Prompts die opnieuw worden gebruikt in verschillende taken
* **Tekstclassificatie en veldextractie**
  * Classificatie van contenttype
  * Extractie van tags of belangrijke informatie
* **Contentmoderatie**
  * Beoordeling van reacties, advertenties of titels
  * Veel moderatieprompts worden herhaald over gebruikers en tijd heen
* **Herhaalde systeemprompts in chatapplicaties**
  * Persona-definities voor chatbots
  * Globale gespreksregels
  * Achtergrondinformatie die over meerdere beurten wordt hergebruikt
* **Workflow- / assistant-achtige prompts**
  * SQL-generatie-assistenten
  * Codeherstelassistenten
  * Samenvattingsassistenten met vaste uitvoerindelingen

Deze scenario’s behalen van nature hoge cache-hitpercentages, waardoor de inference-kosten aanzienlijk worden verlaagd.

## 4. Responsvoorbeelden

<Note>
  Wanneer de cache wordt geraakt, wordt er geen inference uitgevoerd, wat resulteert in aanzienlijk lagere kosten en snellere responses.
</Note>

Als het model promptcaching ondersteunt, hoeven je API-aanroepen niet te worden aangepast. Hieronder staat een voorbeeldresponse wanneer het gecachete resultaat wordt gebruikt:

```JSON theme={"system"}
{
    "prompt_tokens": 3295,
    "completion_tokens": 137,
    "total_tokens": 3432,
    "prompt_tokens_details":
    {
        "audio_tokens": 0,
        "cached_tokens": 448,
        "cache_creation_Prompt_tokens": 0,
        "cache_read_Prompt_tokens": 0
    }
}
```
