AI 與 LLMLLM 營運Performance 與 Scale 方案

防護與內容審核快取

重播已通過您的驗證器的回答,並在不再次呼叫內容審核或模型的情況下,拒絕重複違規者。

個快取,好的與壞的
2
次命中時的重新驗證
0
被拒絕結果的 TTL
短
步驟 1 / 5
產生並驗證

命名空間已用 GUARD.CREATE 與 NCACHE.CREATE 建立一次。模型產生 JSON,您的驗證器在儲存任何內容之前,依結構描述檢查它。

範例工作階段playing
# 產生並驗證
hotkv> GUARD.SET validated "Summarize ticket 812 as JSON" "{\"summary\":\"Login fails on Safari\"}"
OK

以真實 HotKV 指令與範例回覆呈現的動畫導覽。點擊任一步驟即可跳到該步驟。 指令與回覆維持英文,與您在 HotKV 中輸入及看到的完全一致。

問題

結構化輸出與安全檢查既慢又花錢。要有一次模型呼叫、一次 JSON 結構描述驗證,甚至還可能需要第二個模型來評判回答。重複的請求得全部再付一次。而同一個惡意提示詞被腳本送出一千次,就會被送去內容審核一千次。

HotKV 如何處理

防護快取只儲存已通過您的結構描述驗證或防護檢查的回應,因此命中時,可以確定它能原樣安全地重播。負面快取則以較短的 TTL 記住像是「被內容審核拒絕」這類的結果,讓重複的不良請求在到達內容審核服務或模型之前就被擋下。

逐步說明

逐個指令看看發生了什麼事

  1. 01

    產生並驗證

    命名空間已用 GUARD.CREATE 與 NCACHE.CREATE 建立一次。模型產生 JSON,您的驗證器在儲存任何內容之前,依結構描述檢查它。

    GUARD.SET validated "Summarize ticket 812 as JSON" "{\"summary\":\"Login fails on Safari\"}"
  2. 02

    不重新檢查就重播

    再次收到相同的請求。儲存的回答已通過驗證,因此原樣傳回。

    GUARD.GET validated "Summarize ticket 812 as JSON"
  3. 03

    內容審核拒絕了提示詞

    有害的提示詞被拒絕。這項拒絕會被記住五分鐘。

    NCACHE.SET refused "prompt:9f31c2" "refused_by_moderation" TTL 300
  4. 04

    腳本再試一次

    片刻之後,同一個提示詞在快取就被擋回。不會呼叫內容審核與模型。

    NCACHE.GET refused "prompt:9f31c2"
  5. 05

    衡量兩個快取

    每個命名空間都會回報命中、未命中、淘汰與記憶體。

    GUARD.STATS validated
適用之處

真實世界的情境

結構化擷取

發票與表單被轉換成經過驗證的 JSON。重新處理同一份文件時,不需再次呼叫模型,就能傳回已驗證的結果。

消費者聊天應用

狂打同一個提示詞的濫用腳本,會被負面快取拒絕,讓內容審核的成本維持平穩。

會失敗的查找

「找不到使用者」之類的負面回答會被短暫快取,因此重試不會打到後端。

內建

您能獲得什麼

防護快取

只儲存通過您檢查的回應,因此命中的內容可以安全重播。

GUARD.SETGUARD.GET

負面快取

短時間記住被拒絕與找不到的結果。

NCACHE.SETNCACHE.GET

TTL 與上限

每個命名空間都有預設 TTL 與項目數上限,滿了就會淘汰。

GUARD.CREATENCACHE.CREATE

統計

依命名空間提供命中、未命中、淘汰、記憶體與節省的成效。

GUARD.STATSNCACHE.STATS

常見問題

HotKV 會自己驗證輸出嗎?

不會。由您的驗證器或防護機制決定。HotKV 只儲存您在通過後放進防護快取的內容。

被拒絕的結果應該快取多久?

通常很短,以分鐘而非天為單位,這樣政策變更或誤判才不會一直卡著。可依命名空間或依項目設定 TTL。

哪些方案包含它?

防護快取與負面快取屬於 Performance 與 Scale 方案。

相關使用情境

在您自己的工作負載上試試看

HotKV 支援 Redis 協定,因此您可以將現有的用戶端指向它,並執行這些相同的指令。