พัฒนาโมเดล Nemotron 3.5 Lightning NVFP4 ด้วย QAD ผ่าน NVIDIA Model Optimizer

การปรับแต่งโมเดล AI ให้มีประสิทธิภาพสูงสุดเป็นสิ่งสำคัญยิ่งสำหรับทีมพัฒนา เพื่อให้บรรลุเป้าหมายด้านความเร็ว, การใช้หน่วยความจำ, และพลังการประมวลผล ด้วยโมเดล Nemotron จาก NVIDIA ที่เปิดให้ใช้งานอย่างอิสระ นักพัฒนาสามารถค้นหาโมเดลที่เหมาะสมกับความต้องการเฉพาะของตนเองได้อย่างลงตัว

หนึ่งในความก้าวหน้าล่าสุดคือ Nemotron 3.5 Lightning NVFP4 ที่สามารถรักษาความแม่นยำไว้ได้ใกล้เคียงกับต้นฉบับ BF16 แต่เพิ่ม Throughput ได้ถึง 4 เท่า และลดขนาดโมเดลจาก 66 GB เหลือเพียง 22 GB ซึ่งทั้งหมดนี้ทำได้ด้วยเทคนิคการลดขนาดโมเดล (Quantization) ที่เข้มข้นขึ้น

Quantization-Aware Distillation (QAD) คืออะไร?

QAD เป็นกระบวนการที่ช่วยให้โมเดลที่ถูกลดขนาด (Student Model) สามารถเรียนรู้และรักษาความแม่นยำใกล้เคียงกับโมเดลต้นฉบับที่มีความละเอียดสูง (Teacher Model) ได้ดียิ่งขึ้น โดยมีขั้นตอนหลัก 2 ระยะ:

  1. Post-Training Quantization (PTQ): ในขั้นตอนนี้ โมเดลต้นฉบับที่มีความละเอียดเต็ม (Full-Precision) จะถูกแปลงเป็นโมเดลที่มีความละเอียดต่ำ (Quantized Model) เพื่อสร้าง Student Checkpoint
  2. Quantization-Aware Distillation (QAD): จากนั้น Student Model จะถูกฝึกฝนอีกครั้ง โดยใช้ Teacher Model แบบคงที่ (Frozen Teacher) เป็นต้นแบบในการเรียนรู้ ผ่านการเปรียบเทียบค่า Logits ด้วย KL Divergence Loss และการจำลองกระบวนการ Quantization เพื่อชดเชยความแม่นยำที่สูญเสียไปจากการลดขนาดอย่างเข้มข้น

ประโยชน์ของ QAD

  • เพิ่ม Throughput สูงสุด 4 เท่า: ทำให้การประมวลผลเร็วขึ้นอย่างเห็นได้ชัด
  • ลดขนาดโมเดลอย่างมาก: จาก 66 GB เหลือเพียง 22 GB ช่วยประหยัดพื้นที่จัดเก็บและหน่วยความจำ
  • รักษาความแม่นยำ: ชดเชยความผิดพลาดที่เกิดจากการลดขนาดอย่างเข้มข้น ทำให้ได้โมเดลที่มีคุณภาพใกล้เคียงต้นฉบับ
  • รองรับการ Quantization ที่เข้มข้น: สามารถใช้การ Quantization ที่มากกว่า PTQ ปกติได้ โดยไม่สูญเสียความแม่นยำจนยอมรับไม่ได้

กระบวนการพัฒนา Nemotron 3.5 Lightning NVFP4 ด้วย QAD

NVIDIA Model Optimizer และ Megatron-Bridge เป็นเครื่องมือสำคัญที่ช่วยให้การทำ QAD กับ Nemotron 3.5 Lightning สามารถทำได้ตั้งแต่ต้นจนจบ ตั้งแต่การเลือกสูตร (Recipe) การฝึกฝน ไปจนถึงการส่งออก Checkpoint ทำให้การนำโมเดล LLM ไปใช้งานจริงที่ประหยัดหน่วยความจำและพลังการประมวลผลเป็นไปได้ง่ายขึ้น

ขั้นตอนที่ 1: การสร้าง PTQ Checkpoint (Student)

เริ่มต้นด้วยโมเดลต้นฉบับ NVIDIA-Nemotron-3.5-Lightning-30B-A3B-BF16 ซึ่งจะทำหน้าที่เป็น Teacher Model

จากนั้นทำการ Quantization กับโมเดลเดียวกันเพื่อสร้าง Student Checkpoint โดยตั้งเป้าหมายการลดขนาดให้เข้มข้นขึ้น เช่น การ Quantize Mamba Linear Layers ไปที่ W4A16 แทน FP8 ซึ่งจะปลดล็อก Throughput ที่สูงขึ้นโดยไม่ทำให้ความแม่นยำลดลงมากนัก

  • เป้าหมายความแม่นยำ: ตั้งเป้าให้เกิดความแม่นยำลดลงเล็กน้อย (ประมาณ 95-99%) ในขั้นตอนนี้ เพราะ QAD จะช่วยกู้คืนความแม่นยำในขั้นตอนต่อไป
  • การเลือก Recipe: มี PTQ Recipes ที่หลากหลายให้เลือก โดยพิจารณาจากรูปแบบของ Weight, วิธีการ Calibration, รูปแบบ Mamba In/Out Projection, และรูปแบบ KV Cache
  • การทดลอง: จากการทดลอง พบว่าสูตร "fouroversix" ที่มีการ Quantize Mamba Linears ไปที่ W4A16 ให้ผลลัพธ์ที่ดีที่สุดระหว่างความแม่นยำที่ลดลงกับการเพิ่มประสิทธิภาพ Inference

ขั้นตอนที่ 2: การฝึกฝนด้วย QAD

เมื่อได้ Student Checkpoint จาก PTQ แล้ว ขั้นตอนต่อไปคือการฝึกฝนด้วย QAD:

  • Sequence Length: การใช้ Sequence Length ที่ยาวขึ้น (เช่น 522K Tokens) มีความสำคัญอย่างยิ่งในการรักษาประสิทธิภาพสำหรับงานที่ต้องการ Context ยาว
  • ชุดข้อมูล (Datasets): แนะนำให้เริ่มต้นจากชุดข้อมูลเปิดของ NVIDIA เช่น Nemotron-Post-Training v1 และ v2 ซึ่งมีลักษณะการกระจายข้อมูลคล้ายคลึงกับที่ใช้ในการพัฒนา
  • Distillation Recipe:
  • เริ่มต้นจาก PTQ Checkpoint
  • ทำการ Distill จาก Teacher Model (BF16) ไปยัง Student Model (NVFP4) โดยใช้ KL Divergence Loss บน Logits
  • ตั้งค่าการฝึกฝน: Learning Rate 5e-6, ไม่มี Warmup, ปิด Dropout, Gradient Clipping ที่ 1.0, ใช้ 2 Nodes x 8 GPUs (TP=2, EP=4)
  • การจัดการ Quantization Scale: มี 2 กลยุทธ์หลัก ขึ้นอยู่กับวิธีการ Calibration ในขั้นตอน PTQ:
  • Dynamic Scale QAD: เริ่มต้นจาก PTQ Checkpoint ที่ใช้ Max Calibration โดย Weight และ Scale จะถูกคำนวณใหม่ทุก Step
  • Frozen Scale QAD: เริ่มต้นจาก PTQ Checkpoint ที่ใช้ MSE-based Calibration โดย Scale จะถูกล็อคไว้ตั้งแต่แรก และมีการอัปเดตเฉพาะ Weight

การทำ QAD ด้วย NVIDIA Model Optimizer นี้ ช่วยให้สามารถพัฒนาโมเดล Nemotron 3.5 Lightning NVFP4 ที่มีประสิทธิภาพสูง ใช้หน่วยความจำน้อย และยังคงความแม่นยำไว้ได้อย่างยอดเยี่ยม


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

QAD แตกต่างจาก PTQ อย่างไร?

A: PTQ เป็นการลดขนาดโมเดลหลังจากการฝึกฝนเสร็จสิ้นแล้ว ส่วน QAD เป็นกระบวนการที่ซับซ้อนกว่า โดยมีการฝึกฝนโมเดลที่ลดขนาดแล้วอีกครั้ง โดยใช้โมเดลต้นฉบับที่มีความละเอียดสูงเป็นต้นแบบ เพื่อชดเชยความแม่นยำที่สูญเสียไปจากการลดขนาด

Quantization แบบ W4A16 หมายถึงอะไร?

A: หมายถึงการลดขนาด Weight ให้เหลือ 4 บิต และ Activation ให้เหลือ 16 บิต ซึ่งเป็นการลดขนาดที่ค่อนข้างเข้มข้น

การใช้ Nemotron 3.5 Lightning NVFP4 เหมาะกับงานประเภทใด?

A: เหมาะสำหรับงานที่ต้องการประมวลผลเร็ว ใช้หน่วยความจำน้อย และยังคงต้องการความแม่นยำสูง เช่น การประมวลผลภาษาธรรมชาติ (NLP) หรือการสร้างสรรค์เนื้อหา (Generative AI)

NVIDIA Model Optimizer ช่วยอะไรในการทำ QAD?

A: ช่วยอำนวยความสะดวกในกระบวนการทำ QAD ตั้งแต่ต้นจนจบ รวมถึงการเลือกสูตรการฝึกฝน, การกำหนดค่า, และการส่งออก Checkpoint ทำให้การพัฒนาโมเดลมีประสิทธิภาพมากขึ้น

ขอบคุณ แหล่งข้อมูล
https://developer.nvidia.com/blog/developing-nemotron-3-5-lightning-nvfp4-with-qad-using-nvidia-model-optimizer/

พัฒนาโมเดล Nemotron 3.5 Lightning NVFP4 ด้วย QAD ผ่าน NVIDIA Model Optimizerการปรับแต่งโมเดล AI ให้มีประสิทธิภาพสูงสุดเป็นสิ่งสำคัญยิ่งสำหรับทีมพัฒนา เพื่อให้บรรลุเป้าหมายด้านความเร็ว, การใช้หน่วยความจำ, และพลังการประมวลผล ด้วยโมเดล Nemotron จาก NVIDIA ที่เปิดให้ใช้งานอย่างอิสระ นักพัฒนาสามารถค้นหาโมเดลที่เหมาะสมกับความต้องการเฉพาะของตนเองได้อย่างลงตัวหนึ่งในความก้าวหน้าล่าสุดคือ Nemotron 3.5 Lightning NVFP4 ที่สามารถรักษาความแม่นยำไว้ได้ใกล้เคียงกับต้นฉบับ BF16 แต่เพิ่ม Throughput ได้ถึง 4 เท่า และลดขนาดโมเดลจาก 66 GB เหลือเพียง 22 GB ซึ่งทั้งหมดนี้ทำได้ด้วยเทคนิคการลดขนาดโมเดล (Quantization) ที่เข้มข้นขึ้นQuantization-Aware Distillation (QAD) คืออะไร?QAD เป็นกระบวนการที่ช่วยให้โมเดลที่ถูกลดขนาด (Student Model) สามารถเรียนรู้และรักษาความแม่นยำใกล้เคียงกับโมเดลต้นฉบับที่มีความละเอียดสูง (Teacher Model) ได้ดียิ่งขึ้น โดยมีขั้นตอนหลัก 2 ระยะ:Post-Training Quantization (PTQ): ในขั้นตอนนี้ โมเดลต้นฉบับที่มีความละเอียดเต็ม (Full-Precision) จะถูกแปลงเป็นโมเดลที่มีความละเอียดต่ำ (Quantized Model) เพื่อสร้าง Student CheckpointQuantization-Aware Distillation (QAD): จากนั้น Student Model จะถูกฝึกฝนอีกครั้ง โดยใช้ Teacher Model แบบคงที่ (Frozen Teacher) เป็นต้นแบบในการเรียนรู้ ผ่านการเปรียบเทียบค่า Logits ด้วย KL Divergence Loss และการจำลองกระบวนการ Quantization เพื่อชดเชยความแม่นยำที่สูญเสียไปจากการลดขนาดอย่างเข้มข้นประโยชน์ของ QADเพิ่ม Throughput สูงสุด 4 เท่า: ทำให้การประมวลผลเร็วขึ้นอย่างเห็นได้ชัดลดขนาดโมเดลอย่างมาก: จาก 66 GB เหลือเพียง 22 GB ช่วยประหยัดพื้นที่จัดเก็บและหน่วยความจำรักษาความแม่นยำ: ชดเชยความผิดพลาดที่เกิดจากการลดขนาดอย่างเข้มข้น ทำให้ได้โมเดลที่มีคุณภาพใกล้เคียงต้นฉบับรองรับการ Quantization ที่เข้มข้น: สามารถใช้การ Quantization ที่มากกว่า PTQ ปกติได้ โดยไม่สูญเสียความแม่นยำจนยอมรับไม่ได้กระบวนการพัฒนา Nemotron 3.5 Lightning NVFP4 ด้วย QADNVIDIA Model Optimizer และ Megatron-Bridge เป็นเครื่องมือสำคัญที่ช่วยให้การทำ QAD กับ Nemotron 3.5 Lightning สามารถทำได้ตั้งแต่ต้นจนจบ ตั้งแต่การเลือกสูตร (Recipe) การฝึกฝน ไปจนถึงการส่งออก Checkpoint ทำให้การนำโมเดล LLM ไปใช้งานจริงที่ประหยัดหน่วยความจำและพลังการประมวลผลเป็นไปได้ง่ายขึ้นขั้นตอนที่ 1: การสร้าง PTQ Checkpoint (Student)เริ่มต้นด้วยโมเดลต้นฉบับ NVIDIA-Nemotron-3.5-Lightning-30B-A3B-BF16 ซึ่งจะทำหน้าที่เป็น Teacher Modelจากนั้นทำการ Quantization กับโมเดลเดียวกันเพื่อสร้าง Student Checkpoint โดยตั้งเป้าหมายการลดขนาดให้เข้มข้นขึ้น เช่น การ Quantize Mamba Linear Layers ไปที่ W4A16 แทน FP8 ซึ่งจะปลดล็อก Throughput ที่สูงขึ้นโดยไม่ทำให้ความแม่นยำลดลงมากนักเป้าหมายความแม่นยำ: ตั้งเป้าให้เกิดความแม่นยำลดลงเล็กน้อย (ประมาณ 95-99%) ในขั้นตอนนี้ เพราะ QAD จะช่วยกู้คืนความแม่นยำในขั้นตอนต่อไปการเลือก Recipe: มี PTQ Recipes ที่หลากหลายให้เลือก โดยพิจารณาจากรูปแบบของ Weight, วิธีการ Calibration, รูปแบบ Mamba In/Out Projection, และรูปแบบ KV Cacheการทดลอง: จากการทดลอง พบว่าสูตร "fouroversix" ที่มีการ Quantize Mamba Linears ไปที่ W4A16 ให้ผลลัพธ์ที่ดีที่สุดระหว่างความแม่นยำที่ลดลงกับการเพิ่มประสิทธิภาพ Inferenceขั้นตอนที่ 2: การฝึกฝนด้วย QADเมื่อได้ Student Checkpoint จาก PTQ แล้ว ขั้นตอนต่อไปคือการฝึกฝนด้วย QAD:Sequence Length: การใช้ Sequence Length ที่ยาวขึ้น (เช่น 522K Tokens) มีความสำคัญอย่างยิ่งในการรักษาประสิทธิภาพสำหรับงานที่ต้องการ Context ยาวชุดข้อมูล (Datasets): แนะนำให้เริ่มต้นจากชุดข้อมูลเปิดของ NVIDIA เช่น Nemotron-Post-Training v1 และ v2 ซึ่งมีลักษณะการกระจายข้อมูลคล้ายคลึงกับที่ใช้ในการพัฒนาDistillation Recipe:เริ่มต้นจาก PTQ Checkpointทำการ Distill จาก Teacher Model (BF16) ไปยัง Student Model (NVFP4) โดยใช้ KL Divergence Loss บน Logitsตั้งค่าการฝึกฝน: Learning Rate 5e-6, ไม่มี Warmup, ปิด Dropout, Gradient Clipping ที่ 1.0, ใช้ 2 Nodes x 8 GPUs (TP=2, EP=4)การจัดการ Quantization Scale: มี 2 กลยุทธ์หลัก ขึ้นอยู่กับวิธีการ Calibration ในขั้นตอน PTQ:Dynamic Scale QAD: เริ่มต้นจาก PTQ Checkpoint ที่ใช้ Max Calibration โดย Weight และ Scale จะถูกคำนวณใหม่ทุก StepFrozen Scale QAD: เริ่มต้นจาก PTQ Checkpoint ที่ใช้ MSE-based Calibration โดย Scale จะถูกล็อคไว้ตั้งแต่แรก และมีการอัปเดตเฉพาะ Weightการทำ QAD ด้วย NVIDIA Model Optimizer นี้ ช่วยให้สามารถพัฒนาโมเดล Nemotron 3.5 Lightning NVFP4 ที่มีประสิทธิภาพสูง ใช้หน่วยความจำน้อย และยังคงความแม่นยำไว้ได้อย่างยอดเยี่ยมคำถามที่พบบ่อย (FAQ)QAD แตกต่างจาก PTQ อย่างไร?A: PTQ เป็นการลดขนาดโมเดลหลังจากการฝึกฝนเสร็จสิ้นแล้ว ส่วน QAD เป็นกระบวนการที่ซับซ้อนกว่า โดยมีการฝึกฝนโมเดลที่ลดขนาดแล้วอีกครั้ง โดยใช้โมเดลต้นฉบับที่มีความละเอียดสูงเป็นต้นแบบ เพื่อชดเชยความแม่นยำที่สูญเสียไปจากการลดขนาดQuantization แบบ W4A16 หมายถึงอะไร?A: หมายถึงการลดขนาด Weight ให้เหลือ 4 บิต และ Activation ให้เหลือ 16 บิต ซึ่งเป็นการลดขนาดที่ค่อนข้างเข้มข้นการใช้ Nemotron 3.5 Lightning NVFP4 เหมาะกับงานประเภทใด?A: เหมาะสำหรับงานที่ต้องการประมวลผลเร็ว ใช้หน่วยความจำน้อย และยังคงต้องการความแม่นยำสูง เช่น การประมวลผลภาษาธรรมชาติ (NLP) หรือการสร้างสรรค์เนื้อหา (Generative AI)NVIDIA Model Optimizer ช่วยอะไรในการทำ QAD?A: ช่วยอำนวยความสะดวกในกระบวนการทำ QAD ตั้งแต่ต้นจนจบ รวมถึงการเลือกสูตรการฝึกฝน, การกำหนดค่า, และการส่งออก Checkpoint ทำให้การพัฒนาโมเดลมีประสิทธิภาพมากขึ้นhttps://developer.nvidia.com/blog/developing-nemotron-3-5-lightning-nvfp4-with-qad-using-nvidia-model-optimizer/
Shared content
DEVELOPER.NVIDIA.COM
Developing Nemotron 3.5 Lightning NVFP4 with QAD Using NVIDIA Model Optimizer
Teams customize their models to hit their targets for latency, speed, memory, and compute. With the open NVIDIA Nemotron family of models, developers can find the right-sized model for their needs.
6 Comments 0 Shares 994 Views 0 Reviews