vLLM PagedAttention: นวัตกรรมด้านปริมาณงานของการอนุมาน LLM
(aleksagordic.com)ดูรายละเอียดได้ที่ ลิงก์ url นี่คือฉบับสรุป
ความท้าทายสำคัญของการให้บริการ LLM (Large Language Model) คือการจัดการหน่วยความจำของ KV cache (Key-Value Cache) อย่างมีประสิทธิภาพ ระบบแบบเดิมมีข้อจำกัดจากปัญหา memory fragmentation ทำให้อัตราการใช้งาน GPU ลดลงและปริมาณงานถูกจำกัด
vLLM แก้ปัญหานี้ด้วยอัลกอริทึม PagedAttention ซึ่งได้รับแรงบันดาลใจจากเทคนิค virtual memory และ paging ของระบบปฏิบัติการ PagedAttention จัดการ KV cache โดยแบ่งเป็นหน่วย 'block' ที่ไม่จำเป็นต้องต่อเนื่องกันทางกายภาพ ช่วยลดการสูญเสียหน่วยความจำได้อย่างมากและทำให้การจัดสรรหน่วยความจำยืดหยุ่นขึ้น
บนพื้นฐานของ PagedAttention นี้ vLLM ได้นำเทคโนโลยีหลักต่อไปนี้มาใช้เพื่อเพิ่มประสิทธิภาพการอนุมานให้สูงสุด
-
continuous batching: ทำงานแบบไดนามิก โดยเพิ่มคำขอเข้า batch ทันทีที่เข้ามา และนำ sequence ที่เสร็จสิ้นออกจาก batch ช่วยลดเวลาว่างของ GPU ให้เหลือน้อยที่สุด และเพิ่มปริมาณงานได้สูงสุดถึง 24 เท่าเมื่อเทียบกับวิธี static batching แบบเดิม
-
รองรับความสามารถการอนุมานขั้นสูง: vLLM ใช้ประโยชน์จากความยืดหยุ่นของ PagedAttention เพื่อรองรับฟังก์ชันขั้นสูงที่หลากหลายได้อย่างมีประสิทธิภาพ ดังนี้
- chunked prefill: แบ่งขั้นตอน prefill ของพรอมป์ต์ยาวออกเป็นหลาย chunk เพื่อป้องกันไม่ให้คำขอเดียวผูกขาดระบบ และช่วยลด latency ของคำขออื่น
- prefix caching: แชร์ KV cache ของ prefix ของพรอมป์ต์ที่ใช้ร่วมกันระหว่างหลายคำขอโดยไม่ต้องคำนวณใหม่ ช่วยตัดงานคำนวณซ้ำซ้อน
- guided and speculative decoding: รองรับเทคนิคการควบคุมเอาต์พุตให้เป็นไปตามรูปแบบที่กำหนด (เช่น JSON) หรือเร่งการสร้างผลลัพธ์ด้วย draft model ที่มีขนาดเล็กกว่า
- disaggregated prefill/decoding: แยกประมวลผลขั้น prefill ที่เน้นการคำนวณหนัก และขั้น decoding ที่เน้นการใช้ memory bandwidth ไปยังอินสแตนซ์คนละชุด เพื่อเพิ่มประสิทธิภาพการใช้ทรัพยากร
สรุปได้ว่า vLLM แก้ความไม่มีประสิทธิภาพพื้นฐานของการจัดการ KV cache ผ่าน PagedAttention และต่อยอดด้วยเทคนิคเพิ่มประสิทธิภาพอย่าง continuous batching เพื่อยกระดับปริมาณงานและสมรรถนะของระบบอนุมาน LLM
1 ความคิดเห็น
มีการเสนอ vAttention เพื่อชดเชยข้อจำกัดด้านการจัดการหน่วยความจำของ PagedAttention
สามารถดูงานวิจัยที่เกี่ยวข้องได้ที่นี่: https://arxiv.org/pdf/2405.04437