คู่มือทางเทคนิค

SmoothQuant และปริมาณการเปิดใช้งาน

SmoothQuant เป็นเทคนิคที่ทำให้สามารถบีบอัดโมเดลภาษาขนาดใหญ่ให้เป็นจำนวนเต็ม 8 บิตสำหรับทั้งน้ำหนักและการเปิดใช้งานโดยไม่ต้องฝึกอบรมซ้ำ

ภาพรวม

SmoothQuant เป็นเทคนิคที่ทำให้สามารถบีบอัดโมเดลภาษาขนาดใหญ่ให้เป็นจำนวนเต็ม 8 บิตสำหรับทั้งน้ำหนักและการเปิดใช้งานโดยไม่ต้องฝึกอบรมซ้ำ เป็นเรื่องสำคัญเนื่องจากการเปิดใช้งานในโมเดลขนาดใหญ่มีค่าผิดปกติอย่างมาก ซึ่งโดยปกติแล้วจะทำลายคณิตศาสตร์ที่มีความแม่นยำต่ำ และ SmoothQuant ก็ควบคุมมันได้

SmoothQuant และ Activation Quantization เป็นองค์ประกอบทางเทคนิคที่ส่งผลต่อคุณภาพของโมเดล ต้นทุนโครงสร้างพื้นฐาน เวลาแฝง และความน่าเชื่อถือในวงกว้าง

เจาะลึก

เมื่อคุณย่อขนาดโมเดลจากจำนวนเต็มลอย 16 บิตเป็นจำนวนเต็ม 8 บิต น้ำหนักจะบีบอัดได้ง่าย แต่การเปิดใช้งานมีปัญหา: บางช่องมีค่ามากกว่าที่เหลือ 10 ถึง 100 เท่า และการบังคับให้เป็นตารางจำนวนเต็มหยาบจะทำลายความแม่นยำ SmoothQuant เปิดตัวโดย Xiao และคณะ ในปี 2022 สังเกตว่าตุ้มน้ำหนักมีความราบรื่นและวัดปริมาณได้ง่ายในขณะที่การเปิดใช้งานมีหนามแหลม ดังนั้นจึงย้ายความยากลำบากทางคณิตศาสตร์ โดยแบ่งช่องการเปิดใช้งานตามมาตราส่วนต่อช่อง และคูณน้ำหนักที่สอดคล้องกันด้วยมาตราส่วนเดียวกัน การดำเนินการทั้งสองถูกยกเลิก ปล่อยให้โมเดลเอาท์พุตไม่เปลี่ยนแปลง แต่ตอนนี้เทนเซอร์ทั้งสองอยู่ในช่วงที่เป็นมิตร ผลลัพธ์ที่ได้คือการอนุมาน W8A8 (น้ำหนัก 8 บิตและการเปิดใช้งาน) โดยมีการสูญเสียความแม่นยำเกือบเป็นศูนย์ และการเร่งความเร็วและประหยัดหน่วยความจำประมาณ 2 เท่า

ข้อมูลเชิงลึกทางเทคนิค

เคล็ดลับหลักคือปัจจัยการปรับให้เรียบต่อช่องสัญญาณซึ่งคำนวณเป็น s = max(|X|)^alpha / max(|W|)^(1-alpha) การเปิดใช้งานจะถูกปรับขนาดเป็น 1/วินาที และน้ำหนักเป็น s ดังนั้นผลิตภัณฑ์เมทริกซ์ XW จึงยังคงอยู่ เนื่องจากการปรับขนาดถูกดูดซับแบบออฟไลน์เข้าไปในน้ำหนักของเลเยอร์ก่อนหน้าหรือการดำเนินการแบบหลอมรวม จึงเพิ่มต้นทุนรันไทม์เป็นศูนย์ ไฮเปอร์พารามิเตอร์อัลฟา (มักจะ 0.5) ควบคุมว่าภาระผิดปกติจะเปลี่ยนจากการเปิดใช้งานไปสู่น้ำหนักมากน้อยเพียงใด

การเรียนรู้ SmoothQuant และ Activation Quantization

SmoothQuant เป็นเทคนิคที่ทำให้สามารถบีบอัดโมเดลภาษาขนาดใหญ่ให้เป็นจำนวนเต็ม 8 บิตสำหรับทั้งน้ำหนักและการเปิดใช้งานโดยไม่ต้องฝึกอบรมซ้ำ เป็นเรื่องสำคัญเนื่องจากการเปิดใช้งานในโมเดลขนาดใหญ่มีค่าผิดปกติอย่างมาก ซึ่งโดยปกติแล้วจะทำลายคณิตศาสตร์ที่มีความแม่นยำต่ำ และ SmoothQuant ก็ควบคุมมันได้ SmoothQuant และ Activation Quantization เป็นองค์ประกอบทางเทคนิคที่ส่งผลต่อคุณภาพของโมเดล ต้นทุนโครงสร้างพื้นฐาน เวลาแฝง และความน่าเชื่อถือในวงกว้าง เพื่อสร้างความเข้าใจอย่างลึกซึ้ง ให้ถือว่า SmoothQuant และ Activation Quantization เป็นรูปแบบการดำเนินงาน ไม่ใช่คุณลักษณะเดียว: กำหนดผลลัพธ์ที่ต้องการ ชี้แจงสมมติฐาน และแยกสิ่งที่ระบบสามารถทำได้อย่างน่าเชื่อถือจากสิ่งที่ยังต้องใช้วิจารณญาณจากผู้เชี่ยวชาญ

ในทางปฏิบัติ ทีมที่แข็งแกร่งที่ใช้ SmoothQuant และ Activation Quantization จะปรับสถาปัตยกรรม ข้อมูล และตัวเลือกโครงสร้างพื้นฐานให้เหมาะสมโดยเทียบกับความน่าเชื่อถือและต้นทุน โดยจะบันทึกเกณฑ์ความสำเร็จที่ชัดเจน ทดสอบกับข้อมูลและขั้นตอนการทำงานที่สมจริง และทำซ้ำตามรูปแบบความล้มเหลวที่สังเกตได้ แทนที่จะชนะการวัดประสิทธิภาพเพียงครั้งเดียว นี่คือจุดที่ความเข้าใจทางทฤษฎีกลายเป็นความสามารถที่คงทนของผลิตภัณฑ์ นโยบาย และการดำเนินงาน

การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี ในเวลาเดียวกัน การเพิ่มประสิทธิภาพเกณฑ์มาตรฐานหนึ่งรายการสามารถซ่อนจุดอ่อนของระบบในวงกว้างได้ แนวทางที่ยืดหยุ่นที่สุดคือการรวมความเร็วของการทดลองเข้ากับวินัยในการกำกับดูแล: ดำเนินการนำร่อง จับหลักฐาน เผยแพร่บันทึกการตัดสินใจ และอัปเดตการป้องกันอย่างต่อเนื่องเมื่อพฤติกรรมของโมเดล ความคาดหวังของผู้ใช้ และข้อกำหนดด้านกฎระเบียบมีการเปลี่ยนแปลง

ผลกระทบเชิงกลยุทธ์

การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี

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

การศึกษาด้านเทคนิคช่วยให้ทีมเลือกกลุ่มที่เหมาะสม ไม่ใช่แค่กลุ่มใหม่ล่าสุด

การศึกษาด้านเทคนิคช่วยให้ทีมเลือกกลุ่มที่เหมาะสม ไม่ใช่แค่กลุ่มใหม่ล่าสุด ในการปรับใช้คุณภาพสูง สิ่งนี้จะถูกแปลเป็นกฎการปฏิบัติงานที่วัดผลได้ ขอบเขตความเป็นเจ้าของ และขั้นตอนการตรวจสอบที่เกิดซ้ำ เพื่อให้ทีมสามารถปรับขนาดความมั่นใจแทนที่จะปรับขนาดความคลุมเครือ

ตัวเลือกทางวิศวกรรมที่ดีกว่าจะช่วยลดเหตุการณ์ด้านความน่าเชื่อถือในการผลิต

ตัวเลือกทางวิศวกรรมที่ดีกว่าจะช่วยลดเหตุการณ์ด้านความน่าเชื่อถือในการผลิต ในการปรับใช้คุณภาพสูง สิ่งนี้จะถูกแปลเป็นกฎการปฏิบัติงานที่วัดผลได้ ขอบเขตความเป็นเจ้าของ และขั้นตอนการตรวจสอบที่เกิดซ้ำ เพื่อให้ทีมสามารถปรับขนาดความมั่นใจแทนที่จะปรับขนาดความคลุมเครือ

อนาคตของ SmoothQuant และ Activation Quantization

SmoothQuant กำหนดว่าค่าผิดปกติในการเปิดใช้งานสามารถโยกย้ายได้แทนที่จะหลีกเลี่ยงไม่ได้ และแนวคิดดังกล่าวเป็นรากฐานของการให้บริการ INT8 และ FP8 ที่ใช้งานจริง คาดว่าการปรับให้เรียบจะรวมกับแผนการที่มีรายละเอียดมากขึ้น เช่น การหาปริมาณต่อกลุ่ม การปรับขนาดที่เรียนรู้ และการวิจัยการเปิดใช้งาน 4 บิต (เช่น วิธีการรับรู้ค่าผิดปกติ) เมื่อฮาร์ดแวร์ FP8 (Hopper, Blackwell) เติบโตเต็มที่ การปรับสมดุลแบบเรียบจะถูกรวมเข้ากับไปป์ไลน์ของคอมไพเลอร์และกลไกการอนุมาน ดังนั้นการหาปริมาณจึงแทบจะไม่มีอิสระ

การใช้งานจริงในโลกแห่งความเป็นจริง

ให้บริการ LLM พารามิเตอร์ 70B ที่ W8A8 บน GPU น้อยลงโดยลดต้นทุนทั้งหน่วยความจำและเมทริกซ์คูณครึ่งหนึ่ง

เปิดใช้งานการอนุมาน INT8 บนแกนเทนเซอร์ NVIDIA Hopper/Blackwell ที่เร่งความเร็วทางคณิตศาสตร์จำนวนเต็ม 8 บิตโดยกำเนิด

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

การบีบอัดตัวเข้ารหัสหม้อแปลงสำหรับคำพูดหรือการแปลบนอุปกรณ์โดยที่เคอร์เนล 8 บิตทำงานเร็วขึ้นและเย็นลง

รูปแบบการดำเนินงาน

SmoothQuant และ Activation Quantization ในทางปฏิบัติ

ให้บริการ LLM พารามิเตอร์ 70B ที่ W8A8 บน GPU น้อยลงโดยลดต้นทุนทั้งหน่วยความจำและเมทริกซ์คูณครึ่งหนึ่ง

ให้บริการ LLM พารามิเตอร์ 70B ที่ W8A8 บน GPU น้อยลงโดยลดทั้งหน่วยความจำและต้นทุนคูณเมทริกซ์ลงครึ่งหนึ่ง ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป

SmoothQuant และ Activation Quantization ในทางปฏิบัติ

เปิดใช้งานการอนุมาน INT8 บนแกนเทนเซอร์ NVIDIA Hopper/Blackwell ที่เร่งการคำนวณจำนวนเต็ม 8 บิตโดยกำเนิด

การเปิดใช้งานการอนุมาน INT8 บนแกนเทนเซอร์ NVIDIA Hopper/Blackwell ที่เร่งความเร็วคณิตศาสตร์จำนวนเต็ม 8 บิตโดยกำเนิด ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป

SmoothQuant และ Activation Quantization ในทางปฏิบัติ

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

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

SmoothQuant และ Activation Quantization ในทางปฏิบัติ

การบีบอัดตัวเข้ารหัสหม้อแปลงสำหรับคำพูดหรือการแปลบนอุปกรณ์โดยที่เคอร์เนล 8 บิตทำงานเร็วขึ้นและเย็นลง

การบีบอัดตัวเข้ารหัสหม้อแปลงสำหรับคำพูดหรือการแปลบนอุปกรณ์โดยที่เคอร์เนล 8 บิตทำงานเร็วขึ้นและเย็นลง ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป

ความเสี่ยงและรั้ว

!

การเพิ่มประสิทธิภาพเกณฑ์มาตรฐานหนึ่งรายการสามารถซ่อนจุดอ่อนของระบบในวงกว้างได้

!

ต้นทุนโครงสร้างพื้นฐานและการบำรุงรักษามักถูกประเมินต่ำไป

!

ช่องว่างด้านความปลอดภัยและความสามารถในการสังเกตสามารถเพิ่มขึ้นได้เมื่อระบบมีความซับซ้อนมากขึ้น

แผนงานการดำเนินงาน

1

กำหนดเป้าหมายเวลาแฝง คุณภาพ และต้นทุนก่อนนำไปใช้งาน

กำหนดเป้าหมายเวลาแฝง คุณภาพ และต้นทุนก่อนนำไปใช้งาน ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น

2

เกณฑ์มาตรฐานภายใต้สภาวะโหลดและข้อมูลจริง

เกณฑ์มาตรฐานภายใต้สภาวะโหลดและข้อมูลจริง ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น

3

การตรวจสอบเครื่องมือเพื่อหาข้อผิดพลาด การเบี่ยงเบน และผลกระทบต่อผู้ใช้

การตรวจสอบเครื่องมือเพื่อหาข้อผิดพลาด การเบี่ยงเบน และผลกระทบต่อผู้ใช้ ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น

4

เตรียมเส้นทางการย้อนกลับและการตอบสนองต่อเหตุการณ์ก่อนปรับขนาด

เตรียมเส้นทางการย้อนกลับและการตอบสนองต่อเหตุการณ์ก่อนปรับขนาด ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น

สำรวจต่อไป