應用層 開放閱讀

快取

Semantic Cache

概念 ID
semantic-cache
更新時間
2026-05-29
來源數量
待補

語義快取(Semantic Cache)

3 秒看懂

一句話定義: 語義快取是用向量相似度(而非精確字串匹配)來查詢”歷史上是否有人問過意思相近的問題”,如果命中則直接返回快取答案,跳過 LLM 推論呼叫,從而 省算力、降延遲、降成本 的基礎設施層技術。

核心等式(概念性):

傳統快取命中:   hash(query_A) == hash(query_B)  →  精確匹配
語義快取命中:   cosine_sim(embed(query_A), embed(query_B)) ≥ threshold  →  語義匹配

一句話投資含義: 語義快取是 LLM 推論成本”節流”側的關鍵環節——不是讓模型更便宜,而是讓很多呼叫根本不需要發生。

3 分鐘產業解釋

為什麼需要語義快取?

LLM 推論(Inference)面臨一個尷尬現實:

維度現狀
成本單次 API 呼叫按 token 計費,企業日呼叫量動輒數百萬次,月賬單可達六~七位數美元
延遲首 token 延遲(TTFT)受佇列排隊、prefill 計算影響,體感 0.5~5 秒不等
重複率實際業務中,使用者提問的語義重複率極高(客服場景估算 40%~70%+ 的問題可歸為有限的語義簇)

傳統快取(如 Redis 的 key-value 精確匹配)在 LLM 場景幾乎失效——使用者問”怎麼退貨”和”退貨流程是什麼”,字串完全不同,但語義完全等價。語義快取的切入點正是這個”語義鴻溝”。

基本工作原理

使用者查詢 Q


┌──────────────┐     cache hit (similarity ≥ θ)
│  Embedding    │─────────────────────────────────►  返回快取答案
│  模型編碼     │                                      (省去 LLM 呼叫)
└──────┬───────┘
       │ cache miss (similarity < θ)

┌──────────────┐
│  呼叫 LLM    │──► 生成答案 ──► 寫入快取(query embedding + answer)
│  完整推論     │
└──────────────┘

產業定位

語義快取處於 LLM 應用基礎設施層,與向量資料庫、Embedding 模型、API 閘道器深度耦合。它不是獨立的大賽道,而是 LLM 推論最佳化(Inference Optimization) 技術棧中的一個關鍵元件。與之並列的推論最佳化手段還包括:KV Cache 壓縮、推測解碼(Speculative Decoding)、量化(Quantization)、批處理排程(Continuous Batching)等。

區分兩個”Cache”: KV Cache 是模型內部注意力層的 key-value 快取,最佳化的是單次推論的計算效率;語義快取是應用層的請求-響應快取,最佳化的是”要不要呼叫模型”。二者層次完全不同。


15 分鐘專家深入

語義快取的核心技術棧

一個生產級語義快取系統通常包含以下模組:

① Embedding 模型(編碼器)

  • 將使用者查詢對映為稠密向量(如 768 維或 1536 維,取決於模型選型)
  • 選型考量:編碼速度(直接影響快取查詢延遲)、語義區分能力、多語言支援
  • 常見選擇包括開源的 BGE、E5、GTE 系列,以及閉源的 OpenAI text-embedding 系列等 [未充分揭露具體生產級選型分佈]
  • 關鍵權衡: Embedding 模型本身也有推論成本。如果編碼成本 > 直接呼叫小模型的成本,語義快取就失去意義。因此通常用輕量級 Embedding 模型(引數量估算在 100M~300M 量級)而非重型模型

② 向量檢索引擎

  • 在已快取的 query embedding 集合中做近似最近鄰搜尋(ANN)
  • 常見實現:FAISS、Milvus、Qdrant、Pinecone、Redis + RediSearch 模組等
  • 索引型別:HNSW(Hierarchical Navigable Small World)是當前主流 ANN 索引,兼顧召回率與延遲
  • 規模量級參考:當快取條目在十萬百萬量級時,HNSW 索引的查詢延遲通常在 110ms 級別 [基於社群基準測試的定性估計]

③ 相似度閾值(Threshold, θ)

  • 這是語義快取最關鍵的超引數
  • θ 過高 → 命中率低,快取收益小
  • θ 過低 → 誤命中(False Positive),返回不相關答案,影響使用者體驗和準確性
  • 典型設定範圍估算:cosine similarity 在 0.90~0.97 之間,具體需根據業務場景調優 [基於開源專案文件的定性參考]
  • 這是語義快取最難工程化的部分: 不同業務場景的合適閾值差異極大

④ 快取失效策略(Cache Invalidation)

  • 時間視窗(TTL):快取答案設定有效期
  • 語義漂移檢測:當知識庫更新時,關聯的快取條目應失效
  • LRU / LFU 混合策略:在有限向量儲存空間內做驅逐
  • 已知難題: 快取失效是電腦科學的經典難題(“只有兩件難事”),在語義快取中更加複雜,因為”語義等價”本身是模糊的

⑤ 答案質量保障

  • 快取答案的時效性(如價格查詢、庫存狀態等動態資訊不適合快取)
  • 上下文相關性(同一問題在不同上下文中可能需要不同答案)
  • 需要對查詢型別做分類:適合快取 vs 不適合快取

生產環境中的工程挑戰

挑戰說明
Embedding 一致性快取寫入和查詢必須使用同一版本的 Embedding 模型;模型升級時需全量重編碼或維護雙版本
多輪對話處理多輪對話中,當前輪次的語義取決於歷史上下文,不能只快取單條訊息
個性化答案不同使用者對同一語義查詢可能需要不同答案(如權限不同),快取 key 需包含使用者特徵維度
冷啟動系統初期快取為空,命中率為零,需預熱或漸進積累
快取汙染低質量或異常查詢寫入快取,降低整體命中質量

開源實現參考

  • GPTCache(Zilliz/Milvus 團隊開源):較早期的語義快取架構,支援多種向量儲存後端和 Embedding 模型 [GitHub 社群專案,活躍度需即時評估]
  • LangChain Cache 模組:LangChain 架構內建的快取抽象層,支援多種後端
  • 各向量資料庫廠商(Pinecone、Qdrant、Weaviate 等)在文件中通常提供語義快取的參考架構

技術原理(深入機制)

向量相似度計算

語義快取的核心數學操作是高維空間中的相似度度量:

給定:
  q_new = embed(新查詢)        ∈ R^d   (d 為向量維度)
  Q_cache = {q_1, q_2, ..., q_n} ⊂ R^d  (已快取的查詢向量集合)

查詢:
  q* = argmax_&#123;q_i ∈ Q_cache} sim(q_new, q_i)

判斷:
  if sim(q_new, q*) ≥ θ:
      返回 cache[q*] 對應的答案
  else:
      呼叫 LLM,生成答案,寫入快取

相似度度量選擇:

度量公式(概念)特點
Cosine Similaritycos(θ) = (a·b)/(‖a‖·‖b‖)最常用;對向量模長不敏感;適合歸一化後的 embedding
Inner Producta·b當向量已歸一化時等價於 cosine;計算更快
L2 Distance‖a-b‖₂距離越小越相似;與 cosine 在歸一化向量下單調等價

大多數語義快取實現預設使用 cosine similarity 或歸一化後的 inner product。

ANN 索引:HNSW 工作原理概述

HNSW (Hierarchical Navigable Small World)

         [入口節點]                          ← 最高層 (層2): 稀疏圖, 長距離跳躍
        /    |    \
      A ---- B ---- C                        ← 中間層 (層1): 中等密度
     /|\   /|\   /|\
    D - E - F - G - H - I - J - K           ← 底層 (層0): 最稠密, 包含所有節點

查詢過程:
  1. 從最高層的入口節點開始
  2. 在當前層做貪心搜尋 (找到最近鄰居)
  3. 下降到下一層, 繼續貪心搜尋
  4. 直到底層, 返回 top-k 近鄰
  • 時間複雜度:約 O(log n)(n 為快取條目數)
  • 空間複雜度:O(n × M),M 為每節點最大連線數
  • 建置時通過隨機分配節點到不同層,實現”高速公路”效應

快取 Key 的建置策略

單純用原始查詢的 embedding 作為 key 並不總是最優。生產中的常見改進:

策略1 (基礎):     key = embed(query)

策略2 (加上下文): key = embed(query + system_prompt_hash)
                 → 防止不同 system prompt 下的同一使用者問題被錯誤命中

策略3 (加使用者分群): key = embed(query) ⊕ user_segment_embedding
                   → 不同使用者群體對同一問題可能需要差異化答案

策略4 (多級快取): L1: 精確匹配 (hash query string)
                  L2: 語義匹配 (embedding similarity)
                  → 先快後慢, 減少向量檢索呼叫

技術演進史

階段時間段(估算)關鍵事件
傳統快取時代2000s~2020CDN、Redis、Memcached 等精確匹配快取成熟;對 API 請求用 hash 做 exact cache
LLM API 早期2022~2023ChatGPT/LLM API 爆發,開發者發現大量重複語義查詢浪費 token;社群開始探索語義快取
架構湧現期2023GPTCache 等開源專案出現;LangChain 等架構整合快取抽象層;向量資料庫廠商將其作為關鍵 use case 推廣
工程化深化期2024~生產環境落地增多;關注點從”能不能用”轉向”閾值調優、快取失效、質量保障”;與 RAG 流水線深度整合

注:以上時間線基於公開報道和開源專案建立時間的定性梳理,非精確里程碑。


技術路線對比

語義快取 vs 相關技術

維度精確快取(Hash Cache)語義快取(Semantic Cache)RAG 檢索增強小模型蒸餾
匹配方式精確字串/雜湊向量相似度向量相似度(檢索知識文件)不涉及匹配
目標減少重複呼叫減少語義重複呼叫注入外部知識提升質量用小模型替代大型模型
快取什麼Query→ResponseEmbedding→Response檢索→拼接上下文→LLM 生成N/A(模型本身更小)
適用場景引數固定的 API 呼叫自然語言問答、客服知識密集型任務固定領域的高頻任務
主要風險命中率低(自然語言變體多)誤命中(語義相似≠答案相同)檢索噪聲、幻覺質量下降
延遲節省高(hash O(1))中(ANN O(log n) + 編碼)無(甚至增加延遲)高(推論更快)

語義快取內部的技術選型對比

維度輕量方案(LangChain Cache + FAISS)生產方案(向量資料庫 + 專用快取服務)自建方案
開發成本
可擴充套件性單機有限分散式,可橫向擴充套件取決於實現
運維複雜度中(需運維向量資料庫)
閾值調優工具基本無部分廠商提供監控面板需自建
適用規模PoC / 小規模中大規模生產超大規模或特殊需求

上下游

上游依賴

┌─────────────────────────────────────────────┐
│                 上 遊                         │
├──────────────┬──────────────────────────────┤
│ Embedding 模型│ 基礎能力提供者               │
│              │ OpenAI / Cohere / 開源 BGE 等 │
├──────────────┼──────────────────────────────┤
│ 向量資料庫    │ 儲存與檢索引擎               │
│              │ Milvus / Qdrant / Pinecone   │
│              │ FAISS(庫) / Weaviate 等       │
├──────────────┼──────────────────────────────┤
│ 算力基礎設施  │ Embedding 推論 + 向量檢索    │
│              │ CPU/GPU 伺服器, 記憶體          │
└──────────────┴──────────────────────────────┘

下游應用

┌─────────────────────────────────────────────┐
│                 下 遊                         │
├──────────────┬──────────────────────────────┤
│ 企業客服系統  │ 高重複率,語義快取收益最大    │
├──────────────┼──────────────────────────────┤
│ 搜尋增強問答  │ RAG pipeline 前置快取層       │
├──────────────┼──────────────────────────────┤
│ AI Agent     │ 多步推論中重複子問題的快取    │
├──────────────┼──────────────────────────────┤
│ LLM API 閘道器 │ 作為 API 管理平台的標準功能   │
│              │ (如 Cloudflare AI Gateway 等) │
└──────────────┴──────────────────────────────┘

嵌入位置

在 LLM 應用架構中,語義快取通常部署在 API 閘道器層應用編排層(Orchestration Layer)

使用者請求


[API Gateway / 負載均衡]


[應用編排層 (LangChain / 自研)]

  ├──► [語義快取查詢] ──命中──► 返回快取結果
  │           │
  │        未命中
  │           │
  │           ▼
  │    [RAG 檢索 (可選)]
  │           │
  │           ▼
  │    [LLM 推論]
  │           │
  │           ▼
  │    [寫入語義快取]
  │           │
  ▼           ▼
       返回給使用者

關鍵指標

指標含義參考量級(估算)備註
快取命中率(Hit Rate)查詢命中快取的比例客服場景 40%~70%+ [基於行業定性估計]高度依賴業務場景和閾值設定
誤命中率(False Positive Rate)命中但答案實際不相關的比例目標 <1%~5%語義快取最致命的質量風險
快取查詢延遲(Cache Lookup Latency)從查詢到判斷命中的耗時Embedding 編碼 550ms + ANN 檢索 110ms [估算]需低於 LLM 推論延遲才有意義
成本節省比(節省的 LLM 呼叫成本) / (快取系統總成本)取決於命中率和 LLM 定價核心 ROI 指標
快取容量可儲存的最大語義條目數取決於向量儲存方案,百萬~千萬級常見大規模場景需分散式向量資料庫
快取新鮮度(Freshness)快取答案的有效時間分鐘~天級,取決於場景動態資訊場景需要短 TTL

供需與市場資料

需求端

  • 驅動因素: LLM API 呼叫量持續增長,推論成本是企業 AI 支出的主要組成部分。企業對推論成本最佳化的需求剛性且持續。
  • 場景滲透率: 目前語義快取主要在 客服、FAQ、內部知識問答 等高重複率場景落地 [未找到權威的滲透率統計]。
  • 痛點: 大多數企業尚未系統性部署語義快取,原因包括:不知道該技術、擔心誤命中、缺乏調優能力。

供給端

  • 開源工具: GPTCache(Zilliz)、LangChain Cache 模組等提供了基礎能力。
  • 雲端廠商整合: 部分 API 管理平台(如 Cloudflare AI Gateway 等)已將語義快取作為內建功能 [具體整合狀態需即時核實]。
  • 向量資料庫廠商推動: Pinecone、Zilliz 等將語義快取作為向量資料庫的核心 use case 之一進行市場教育。

市場規模

⚠️ 無可靠獨立資料。 語義快取通常作為 LLM 基礎設施或 API 管理平台的一部分交付,而非獨立產品類別,因此缺乏獨立的市場規模統計。其價值體現在 LLM 推論總成本的節省比例中。

粗略估算邏輯: 若全球 LLM API 年推論支出在數百億美元量級 [未找到精確統一口徑資料],語義快取在理論上可節省其中 20%~50% 的重複呼叫支出(取決於場景),則其間接關聯的市場規模可做如下粗算:

語義快取可節省的推論支出 ≈ LLM推論總支出 × 平均重複率 × 快取命中率
                        ≈ (數百億美元) × (30%~60%) × (50%~80%)
                        ≈ 數十億至百億美元量級的"可節省空間" [高度粗略估算]

但這不等於語義快取的獨立市場規模——它通常以 API 閘道器功能、平台內建模組等形式存在。


代表公司與資本對映

公司/專案角色與語義快取的關係上市/融資狀態
Zilliz(星爵科技)向量資料庫廠商GPTCache 開源專案主導方;語義快取是其向量資料庫的核心應用場景之一私有融資 [具體輪次需核實]
Pinecone向量資料庫廠商雲端原生向量資料庫,語義快取是其推薦 use case私有融資(估值曾達約 7.5 億美元 [據 2023 年報道])
Qdrant開源向量資料庫提供語義快取參考架構私有融資 [具體需核實]
CloudflareCDN/邊緣計算AI Gateway 產品中集成了語義快取功能(據公開產品頁面)NYSE: NET
LangChainLLM 程式設計架構內建 Cache 抽象層,支援多種後端私有融資(LangChain Inc.)
OpenAILLM API 提供方API 響應級別的快取機制(Prompt Caching 等功能)[具體產品形態需核實]私有
AnthropicLLM API 提供方Prompt Caching 功能(據其 API 文件)私有

投資對映提示: 語義快取本身不是獨立賽道,更多是向量資料庫、LLM API 平台、AI 基礎設施公司的功能元件。直接投資語義快取的標的較少,需從其所在的更大基礎設施生態中尋找標的。


投資邏輯

看多邏輯

  1. LLM 推論成本結構性高企: 即使單次推論成本持續下降(得益於硬體和演算法進步),但 LLM 呼叫量的增速遠超成本下降速度,總推論支出仍在增長 → 語義快取的”節流”價值持續存在
  2. 需求場景高度重複: 客服、FAQ、內部問答等場景的語義重複率天然很高,語義快取 ROI 明確
  3. 與 RAG / Agent 深度繫結: 隨著 RAG 和 AI Agent 的普及,pipeline 中的重複子查詢增多,語義快取的需求場景在擴大
  4. 邊際成本極低: 一旦快取建立,後續命中成本(Embedding + ANN 檢索)遠低於完整 LLM 推論

看空/風險邏輯

  1. LLM 推論成本快速下降: 如果推論成本降至”不值得快取”的水平,語義快取的經濟價值將被壓縮
  2. 誤命中風險不可忽視: 在準確性要求高的場景(如醫療、法律),即使低機率的誤命中也可能造成嚴重後果,限制了應用範圍
  3. 非獨立賽道: 語義快取可能只是向量資料庫或 API 閘道器的一個內建功能,而非獨立產品,商業變現路徑有限
  4. 閾值調優的複雜性: 每個業務場景都需要獨立調優,缺乏通用解決方案,限制了規模化複製

關鍵追蹤指標

  • 企業 LLM API 月度支出增速 vs 推論成本下降速度
  • 語義快取在 API 閘道器產品中的整合深度
  • 客服/FAQ 場景的 LLM 滲透率(決定快取需求基數)

常見誤讀糾偏

誤讀 1:語義快取 = RAG 檢索

糾偏: 雖然兩者都用向量相似度檢索,但目的完全不同:

語義快取RAG
檢索什麼歷史上相似的”查詢”及其答案知識庫中的相關”文件”片段
目的跳過 LLM 呼叫(省成本/延遲)給 LLM 提供上下文(提質量)
命中後直接返回快取答案,不再呼叫 LLM將檢索到的文件拼入 prompt,仍然呼叫 LLM

語義快取是”跳過模型”,RAG 是”輔助模型”——二者可串聯使用(先查快取,未命中再走 RAG → LLM)。

誤讀 2:語義快取的相似度閾值越高越好

糾偏: 閾值過高會導致命中率極低,快取形同虛設;閾值過低會引入誤命中。最優閾值是業務相關的,不存在通用”安全閾值”。 在客服場景可以相對寬鬆(0.900.95),在需要精確答案的技術問答場景需更嚴格(0.950.98)。部分系統會採用 動態閾值 策略:先以較高閾值做精確命中,未命中再降低閾值做模糊匹配並附加人工稽核。

誤讀 3:語義快取可以完全替代 LLM 推論

糾偏: 語義快取只對 語義重複率高的場景 有效。在開放域對話、創意寫作、程式碼生成等高度個性化的場景中,語義重複率低,快取命中率可能不足 10%,此時快取系統反而增加了基礎設施複雜度而收益甚微。

誤讀 4:語義快取只是加了一個向量資料庫

糾偏: 向量檢索只是語義快取的引擎之一。完整的系統還需要:Embedding 模型選型與管理、閾值調優機制、快取失效策略、答案質量保障、監控與可觀測性等。工程複雜度在”檢索”之外的環節。


學習路徑

Level 0 — 概念認知
  ├── 理解傳統快取 (Redis/Memcached) 的原理
  ├── 理解 Embedding 的基本概念 (文本→向量)
  └── 理解為什麼精確快取在 LLM 場景失效

Level 1 — 基礎實踐
  ├── 使用 LangChain 的 Cache 模組做一個簡單 demo
  ├── 用 FAISS 或 ChromaDB 做本地向量檢索
  └── 用開源 Embedding 模型 (如 BGE-small) 做查詢編碼

Level 2 — 工程深入
  ├── 閱讀 GPTCache 原始碼,理解其架構設計
  ├── 學習 HNSW 索引原理 (論文: Malkov et al., 2016/2018)
  ├── 實驗不同相似度閾值對命中率和誤命中率的影響
  └── 部署一個端到端的語義快取系統 (如 Qdrant + FastAPI)

Level 3 — 生產最佳化
  ├── 多級快取設計 (exact → semantic → LLM)
  ├── 快取失效策略與知識庫更新的聯動
  ├── 監控指標體系建設 (命中率、延遲、誤命中率)
  └── 與 RAG pipeline 的整合最佳化

推薦閱讀

  • 入門: GPTCache GitHub 倉庫的 README 和 Quick Start(瞭解整體架構)
  • 進階: HNSW 論文 — Malkov & Yashunin, “Efficient and robust approximate nearest neighbor search using Hierarchical Navigable Small World graphs”(理解底層索引原理)
  • 產業視角: 各向量資料庫廠商(Pinecone、Zilliz、Qdrant)的部落格和 use case 文件中關於語義快取的實踐分享
  • 對比視角: LangChain 官方文件中 Cache 模組的配置與使用說明

一句話總結

語義快取是 LLM 推論基礎設施中的”節流閥”——它不解決模型能力問題,而是通過向量相似度匹配識別語義重複查詢、跳過冗餘推論呼叫來降低延遲與成本,其價值與 LLM 呼叫量正相關、與單次推論成本負相關,在高重複率場景(客服/FAQ)中 ROI 最為明確。


延伸閱讀與來源

⚠️ 重要說明: 本次編寫過程中聯網檢索全部失敗(HTTP 403),本頁技術事實主要基於以下來源:

  1. GPTCache 開源專案文件(GitHub,Zilliz 團隊維護)
  2. LangChain 官方文件 Cache 模組
  3. HNSW 演算法原始論文(Malkov et al.)
  4. 向量資料庫廠商(Pinecone、Qdrant、Weaviate)公開的 use case 文件
  5. LLM 推論最佳化領域的一般技術知識

所有具體數字標註了估算口徑;未找到權威獨立資料的部分已明確標註 [未充分揭露]。建議讀者在做投資決策前,交叉驗證關鍵資料點。

source: 公開揭露與公開資料整理 本頁僅用於產業鏈學習、資訊檢索和研究輔助;不構成投資建議,不預測漲跌,不提供買賣、部位或目標價建議。
完整概念頁 複盤 13 節結構 公司投研頁 沿產業鏈找到受益公司 投資課 把概念轉成可跟蹤模型