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

# Prompt Cache（推理缓存）

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.ppInfraRemoteData.llmModels.status === 'loaded') {
        const modelList = window.ppInfraRemoteData.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)">展示更多</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（推理缓存）是 PPIO 推理引擎提供的一项降本增效功能。

当请求与历史 Prompt 完全一致时，系统会直接返回缓存结果，仅收取极少的缓存 token 费用——大幅降低成本并提升响应速度。

## 1. 主要优势

启用 Prompt Cache 后，您将获得以下收益：

* **成本更低**

  对于重复的 Prompt，无需再次推理，仅收取极少的缓存 token 费用。

* **延迟更低**

  缓存命中时，直接返回结果，无需等待模型推理。

* **更高吞吐**

  在高 QPS 场景下，Prompt Cache 能有效降低推理负载，提升整体系统服务能力。

* **对应用透明**

  无需在您的业务系统中增加额外逻辑或进行系统改造。

## 2. 支持的模型

目前多个无服务器开源模型已支持 Prompt Cache 计费，包括：

<PromptCacheModels />

关于各模型 Prompt Cache 功能的计费详情，请访问：[https://ppio.com/pricing](https://ppio.com/pricing)（请查阅 “缓存” 部分）

## 3. 适用场景

Prompt Cache 在**重复 Prompt 频繁**的业务场景下效果显著，包括但不限于：

* **模板生成类**
  * 固定格式摘要
  * 基于模板的改写
  * 跨任务重用的 Prompt
* **文本分类与字段抽取**
  * 内容类型分类
  * 标签或关键信息提取
* **内容审核**
  * 评论、广告、标题等内容的复审
  * 审核类 Prompt 在不同用户或时间段重复率高
* **聊天应用中重复系统提示**
  * 聊天机器人身份设定
  * 全局会话规则
  * 多轮对话复用背景信息
* **流程/助手类 Prompt**
  * SQL 生成助手
  * 代码修复助手
  * 输出格式固定的总结助手

上述场景天然有助于提升缓存命中率，从而显著降低推理成本。

## 4. 响应示例

<Note>
  缓存命中时不消耗推理，成本更低、响应更快。
</Note>

若模型支持 Prompt Cache，API 调用方式无需任何修改。缓存命中时的返回样例如下：

```JSON theme={null}
{
    "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
    }
}
```
