ภาพรวม
แคช KV จะจัดเก็บคีย์และค่าที่หม้อแปลงได้คำนวณไว้แล้ว ดังนั้นจึงไม่สามารถทำซ้ำกับโทเค็นใหม่ทุกรายการได้ แต่สามารถขยายเป็นกิกะไบต์ได้ การเพิ่มประสิทธิภาพแคช KV ย่อขนาดและจัดการหน่วยความจำนั้น ดังนั้นโมเดลจึงให้บริการบริบทที่ยาวขึ้นแก่ผู้ใช้จำนวนมากขึ้นในคราวเดียว
KV Cache Optimization เป็นองค์ประกอบทางเทคนิคที่ส่งผลต่อคุณภาพของโมเดล ต้นทุนโครงสร้างพื้นฐาน เวลาแฝง และความน่าเชื่อถือในระดับต่างๆ
เจาะลึก
ในหม้อแปลงไฟฟ้า แต่ละโทเค็นใหม่จะเข้าร่วมกับโทเค็นก่อนหน้าทั้งหมดผ่านคีย์ความสนใจ (K) และค่า (V) การคำนวณ K และ V ใหม่สำหรับลำดับทั้งหมดในทุกขั้นตอนจะเป็นกำลังสองและสิ้นเปลือง ดังนั้นโมเดลจึงแคชสิ่งเหล่านี้: แคช KV ข้อเสียคือขนาด แคชจะเพิ่มขึ้นเป็นเส้นตรงตามความยาวลำดับ ขนาดแบตช์ เลเยอร์ และส่วนหัว ดังนั้นคำขอที่มีบริบทยาวจึงอาจใช้หน่วยความจำ GPU มากกว่าน้ำหนักของโมเดลเอง การเพิ่มประสิทธิภาพจะจัดการกับปัญหานี้จากหลายมุม: หน่วยความจำเพจ (PagedAttention ของ vLLM) จะจัดเก็บแคชไว้ในบล็อกที่ไม่ต่อเนื่องกันเพื่อกำจัดการกระจายตัวและเปิดใช้งานการแบ่งปัน การหาปริมาณเก็บ K และ V ในรูปแบบ 8 บิตหรือ 4 บิต และการเปลี่ยนแปลงทางสถาปัตยกรรม เช่น Grouped-Query Attention (GQA) และ Multi-Query Attention (MQA) ทำให้ส่วนหัวของแบบสอบถามจำนวนมากแชร์ส่วนหัวของคีย์/ค่าน้อยลง ส่งผลให้ขนาดแคชที่ต้นทางลดลง
ข้อมูลเชิงลึกทางเทคนิค
PagedAttention ยืมเพจหน่วยความจำเสมือนจากระบบปฏิบัติการ: แคชอยู่ในบล็อกขนาดคงที่ซึ่งแมปผ่านตารางการค้นหา ดังนั้นคำขอจะใช้เฉพาะบล็อกที่ต้องการและคำนำหน้าเหมือนกัน (เช่น ข้อความแจ้งของระบบที่ใช้ร่วมกัน) สามารถชี้ไปที่บล็อกเดียวกันได้ Multi-head Latent Attention (MLA) ที่ใช้ในโมเดล DeepSeek บีบอัด K และ V ให้เป็นเวกเตอร์แฝงขนาดเล็กที่ใช้ร่วมกัน ซึ่งจะตัดหน่วยความจำอย่างมากในขณะที่ยังคงความแม่นยำไว้
การเรียนรู้การเพิ่มประสิทธิภาพแคช KV อย่างเชี่ยวชาญ
แคช KV จะจัดเก็บคีย์และค่าที่หม้อแปลงได้คำนวณไว้แล้ว ดังนั้นจึงไม่สามารถทำซ้ำกับโทเค็นใหม่ทุกรายการได้ แต่สามารถขยายเป็นกิกะไบต์ได้ การเพิ่มประสิทธิภาพแคช KV ย่อขนาดและจัดการหน่วยความจำนั้น ดังนั้นโมเดลจึงให้บริการบริบทที่ยาวขึ้นแก่ผู้ใช้จำนวนมากขึ้นในคราวเดียว KV Cache Optimization เป็นองค์ประกอบทางเทคนิคที่ส่งผลต่อคุณภาพของโมเดล ต้นทุนโครงสร้างพื้นฐาน เวลาแฝง และความน่าเชื่อถือในระดับต่างๆ เพื่อสร้างความเข้าใจอย่างลึกซึ้ง ให้ถือว่า KV Cache Optimization เป็นรูปแบบการดำเนินงาน ไม่ใช่คุณลักษณะเดียว: กำหนดผลลัพธ์ที่ต้องการ ชี้แจงสมมติฐาน และแยกสิ่งที่ระบบสามารถทำได้อย่างน่าเชื่อถือจากสิ่งที่ยังต้องใช้วิจารณญาณจากผู้เชี่ยวชาญ
ในทางปฏิบัติ ทีมที่แข็งแกร่งที่ใช้ KV Cache Optimization จะปรับสถาปัตยกรรม ข้อมูล และตัวเลือกโครงสร้างพื้นฐานให้เหมาะสมโดยเทียบกับความน่าเชื่อถือและต้นทุน โดยจะบันทึกเกณฑ์ความสำเร็จที่ชัดเจน ทดสอบกับข้อมูลและขั้นตอนการทำงานที่สมจริง และทำซ้ำตามรูปแบบความล้มเหลวที่สังเกตได้ แทนที่จะชนะการวัดประสิทธิภาพเพียงครั้งเดียว นี่คือจุดที่ความเข้าใจทางทฤษฎีกลายเป็นความสามารถที่คงทนของผลิตภัณฑ์ นโยบาย และการดำเนินงาน
การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี ในเวลาเดียวกัน การเพิ่มประสิทธิภาพเกณฑ์มาตรฐานหนึ่งรายการสามารถซ่อนจุดอ่อนของระบบในวงกว้างได้ แนวทางที่ยืดหยุ่นที่สุดคือการรวมความเร็วของการทดลองเข้ากับวินัยในการกำกับดูแล: ดำเนินการนำร่อง จับหลักฐาน เผยแพร่บันทึกการตัดสินใจ และอัปเดตการป้องกันอย่างต่อเนื่องเมื่อพฤติกรรมของโมเดล ความคาดหวังของผู้ใช้ และข้อกำหนดด้านกฎระเบียบมีการเปลี่ยนแปลง
ผลกระทบเชิงกลยุทธ์
การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี
การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี ในการปรับใช้คุณภาพสูง สิ่งนี้จะถูกแปลเป็นกฎการปฏิบัติงานที่วัดผลได้ ขอบเขตความเป็นเจ้าของ และขั้นตอนการตรวจสอบที่เกิดซ้ำ เพื่อให้ทีมสามารถปรับขนาดความมั่นใจแทนที่จะปรับขนาดความคลุมเครือ
การศึกษาด้านเทคนิคช่วยให้ทีมเลือกกลุ่มที่เหมาะสม ไม่ใช่แค่กลุ่มใหม่ล่าสุด
การศึกษาด้านเทคนิคช่วยให้ทีมเลือกกลุ่มที่เหมาะสม ไม่ใช่แค่กลุ่มใหม่ล่าสุด ในการปรับใช้คุณภาพสูง สิ่งนี้จะถูกแปลเป็นกฎการปฏิบัติงานที่วัดผลได้ ขอบเขตความเป็นเจ้าของ และขั้นตอนการตรวจสอบที่เกิดซ้ำ เพื่อให้ทีมสามารถปรับขนาดความมั่นใจแทนที่จะปรับขนาดความคลุมเครือ
ตัวเลือกทางวิศวกรรมที่ดีกว่าจะช่วยลดเหตุการณ์ด้านความน่าเชื่อถือในการผลิต
ตัวเลือกทางวิศวกรรมที่ดีกว่าจะช่วยลดเหตุการณ์ด้านความน่าเชื่อถือในการผลิต ในการปรับใช้คุณภาพสูง สิ่งนี้จะถูกแปลเป็นกฎการปฏิบัติงานที่วัดผลได้ ขอบเขตความเป็นเจ้าของ และขั้นตอนการตรวจสอบที่เกิดซ้ำ เพื่อให้ทีมสามารถปรับขนาดความมั่นใจแทนที่จะปรับขนาดความคลุมเครือ
การใช้งานจริงในโลกแห่งความเป็นจริง
PagedAttention ของ vLLM ให้บริการเซสชันการสนทนาพร้อมกันจำนวนมากโดยบรรจุบล็อก KV โดยไม่มีการกระจายตัวของหน่วยความจำ
Grouped-Query Attention ในโมเดล Llama ที่ลดขนาดแคช KV เพื่อให้บริบทที่ยาวขึ้นพอดีกับหน่วยความจำ GPU
การกำหนดปริมาณแคช KV เป็น 8 บิต (KV8) เพื่อลดหน่วยความจำแคชลงครึ่งหนึ่งโดยประมาณในระหว่างการสรุปเอกสารขนาดยาว
การแคชคำนำหน้าที่ใช้บล็อก KV ของพรอมต์ระบบที่ใช้ร่วมกันกับคำขอ API หลายพันรายการ
รูปแบบการดำเนินงาน
การเพิ่มประสิทธิภาพแคช KV ในทางปฏิบัติ
PagedAttention ของ vLLM ให้บริการเซสชันการสนทนาพร้อมกันจำนวนมากโดยบรรจุบล็อก KV โดยไม่มีการกระจายตัวของหน่วยความจำ
PagedAttention ของ vLLM ที่ให้บริการเซสชันการสนทนาพร้อมกันจำนวนมากโดยการบรรจุบล็อก KV โดยไม่มีการกระจายตัวของหน่วยความจำ ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป
การเพิ่มประสิทธิภาพแคช KV ในทางปฏิบัติ
Grouped-Query Attention ในโมเดล Llama ที่ลดขนาดแคช KV เพื่อให้บริบทที่ยาวขึ้นพอดีกับหน่วยความจำ GPU
ความสนใจในการสืบค้นแบบกลุ่มในโมเดล Llama ช่วยลดขนาดแคช KV ดังนั้นบริบทที่ยาวขึ้นจึงพอดีกับหน่วยความจำ GPU ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป
การเพิ่มประสิทธิภาพแคช KV ในทางปฏิบัติ
การกำหนดปริมาณแคช KV เป็น 8 บิต (KV8) เพื่อลดหน่วยความจำแคชลงครึ่งหนึ่งโดยประมาณในระหว่างการสรุปเอกสารขนาดยาว
การกำหนดปริมาณแคช KV เป็น 8 บิต (KV8) เพื่อลดหน่วยความจำแคชลงครึ่งหนึ่งระหว่างการสรุปเอกสารขนาดยาว ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป
การเพิ่มประสิทธิภาพแคช KV ในทางปฏิบัติ
การแคชคำนำหน้าที่ใช้บล็อก KV ของพรอมต์ระบบที่ใช้ร่วมกันกับคำขอ API หลายพันรายการ
การแคชคำนำหน้าที่ใช้บล็อก KV ของระบบที่ใช้ร่วมกันพร้อมท์กับคำขอ API หลายพันรายการ โดยปกติแล้วทีมจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพไว้ล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป
ความเสี่ยงและรั้ว
การเพิ่มประสิทธิภาพเกณฑ์มาตรฐานหนึ่งรายการสามารถซ่อนจุดอ่อนของระบบในวงกว้างได้
ต้นทุนโครงสร้างพื้นฐานและการบำรุงรักษามักถูกประเมินต่ำไป
ช่องว่างด้านความปลอดภัยและความสามารถในการสังเกตสามารถเพิ่มขึ้นได้เมื่อระบบมีความซับซ้อนมากขึ้น
แผนงานการดำเนินงาน
กำหนดเป้าหมายเวลาแฝง คุณภาพ และต้นทุนก่อนนำไปใช้งาน
กำหนดเป้าหมายเวลาแฝง คุณภาพ และต้นทุนก่อนนำไปใช้งาน ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น
เกณฑ์มาตรฐานภายใต้สภาวะโหลดและข้อมูลจริง
เกณฑ์มาตรฐานภายใต้สภาวะโหลดและข้อมูลจริง ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น
การตรวจสอบเครื่องมือเพื่อหาข้อผิดพลาด การเบี่ยงเบน และผลกระทบต่อผู้ใช้
การตรวจสอบเครื่องมือเพื่อหาข้อผิดพลาด การเบี่ยงเบน และผลกระทบต่อผู้ใช้ ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น
เตรียมเส้นทางการย้อนกลับและการตอบสนองต่อเหตุการณ์ก่อนปรับขนาด
เตรียมเส้นทางการย้อนกลับและการตอบสนองต่อเหตุการณ์ก่อนปรับขนาด ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น