AI และ LLMการปฏิบัติการ LLMแผน Performance และ Scale

การแคชผล guardrail และการตรวจสอบเนื้อหา

เล่นซ้ำคำตอบที่ผ่านตัวตรวจสอบของคุณแล้ว และปฏิเสธผู้กระทำซ้ำโดยไม่ต้องเรียกการตรวจสอบเนื้อหาหรือโมเดลอีก

แคช ดีและไม่ดี
2
การตรวจสอบซ้ำเมื่อเจอแคช
0
TTL สำหรับการปฏิเสธ
สั้น
ขั้นที่ 1 จาก 5
สร้างและตรวจสอบ

namespace ถูกสร้างครั้งเดียวด้วย GUARD.CREATE และ NCACHE.CREATE โมเดลสร้าง JSON และตัวตรวจสอบของคุณตรวจกับสคีมาก่อนที่จะเก็บอะไร

เซสชันตัวอย่างplaying
# สร้างและตรวจสอบ
hotkv> GUARD.SET validated "Summarize ticket 812 as JSON" "{\"summary\":\"Login fails on Safari\"}"
OK

ตัวอย่างแบบแอนิเมชันพร้อมคำสั่ง HotKV จริงและคำตอบตัวอย่าง คลิกขั้นตอนใดก็ได้เพื่อข้ามไปยังขั้นนั้น คำสั่งและคำตอบยังคงเป็นภาษาอังกฤษ ตรงตามที่คุณพิมพ์และเห็นใน HotKV

ปัญหา

เอาต์พุตแบบมีโครงสร้างและการตรวจความปลอดภัยทั้งช้าและเสียเงิน มีการเรียกโมเดล การตรวจสอบ JSON schema และบางทีโมเดลที่สองเพื่อตัดสินคำตอบ คำขอที่ซ้ำต้องจ่ายทั้งหมดอีกครั้ง และพรอมต์ที่ไม่เหมาะสมเดียวกันที่สคริปต์ส่งมาพันครั้ง ก็ไปถึงการตรวจสอบเนื้อหาพันครั้ง

HotKV จัดการอย่างไร

Guard cache เก็บเฉพาะคำตอบที่ผ่านการตรวจสคีมาหรือ guardrail ของคุณแล้ว ดังนั้นการเจอแคชจึงเป็นที่รู้ว่าเล่นซ้ำตามเดิมได้อย่างปลอดภัย Negative cache จำการปฏิเสธ เช่น “ถูกปฏิเสธโดยการตรวจสอบเนื้อหา” ไว้ด้วย TTL สั้น คำขอไม่ดีที่ซ้ำจึงถูกปฏิเสธก่อนไปถึงบริการตรวจสอบเนื้อหาหรือโมเดล

ทีละขั้นตอน

เกิดอะไรขึ้นบ้าง ทีละคำสั่ง

  1. 01

    สร้างและตรวจสอบ

    namespace ถูกสร้างครั้งเดียวด้วย 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

    วัดทั้งสองแคช

    แต่ละ namespace รายงานจำนวนที่เจอ ที่ไม่พบ การไล่ข้อมูล และหน่วยความจำ

    GUARD.STATS validated
เหมาะกับงานแบบไหน

สถานการณ์จริง

การดึงข้อมูลแบบมีโครงสร้าง

ใบแจ้งหนี้และแบบฟอร์มถูกแปลงเป็น JSON ที่ผ่านการตรวจสอบ การประมวลผลเอกสารเดิมซ้ำคืนผลที่ตรวจสอบแล้วโดยไม่ต้องเรียกโมเดลอีก

แอปแชตสำหรับผู้บริโภค

สคริปต์ละเมิดที่รัวพรอมต์เดิมถูกปฏิเสธจาก negative cache ทำให้ต้นทุนการตรวจสอบเนื้อหาคงที่

การค้นหาที่ล้มเหลว

“ไม่พบผู้ใช้” และคำตอบเชิงลบอื่นๆ ถูกแคชชั่วครู่ การลองใหม่จึงไม่ไปถึงแบ็กเอนด์

อยู่ในตัว

สิ่งที่คุณได้รับ

Guard cache

เก็บเฉพาะคำตอบที่ผ่านการตรวจสอบของคุณ การเจอแคชจึงเล่นซ้ำได้อย่างปลอดภัย

GUARD.SETGUARD.GET

Negative cache

จำการปฏิเสธและผลที่ไม่พบไว้ชั่วเวลาสั้นๆ

NCACHE.SETNCACHE.GET

TTL และขีดจำกัด

TTL เริ่มต้นและขีดจำกัดจำนวนรายการต่อ namespace พร้อมการไล่ข้อมูลเมื่อเต็ม

GUARD.CREATENCACHE.CREATE

สถิติ

จำนวนที่เจอ ที่ไม่พบ การไล่ข้อมูล หน่วยความจำ และส่วนที่ประหยัดได้ต่อ namespace

GUARD.STATSNCACHE.STATS
ข้อมูลอ้างอิง:GUARD.SETGUARD.GETNCACHE.SETNCACHE.GET

คำถามที่พบบ่อย

HotKV ตรวจสอบเอาต์พุตเองไหม

ไม่ ตัวตรวจสอบหรือ guardrail ของคุณเป็นผู้ตัดสิน HotKV เก็บเฉพาะสิ่งที่คุณใส่ใน guard cache หลังจากผ่านแล้ว

ควรแคชการปฏิเสธนานเท่าใด

โดยทั่วไปไม่นาน เป็นนาทีไม่ใช่เป็นวัน เพื่อให้การเปลี่ยนนโยบายหรือผลบวกลวงไม่ติดค้าง กำหนด TTL ต่อ namespace หรือต่อรายการ

แผนไหนรวมฟีเจอร์นี้

Guard cache และ negative cache อยู่ในแผน Performance และ Scale

กรณีใช้งานที่เกี่ยวข้อง

ลองกับเวิร์กโหลดของคุณเอง

HotKV ใช้โปรโตคอลของ Redis คุณจึงชี้ไคลเอนต์ที่มีอยู่มาที่ HotKV แล้วรันคำสั่งเดียวกันนี้ได้