ภาพรวม
วิธีแบ่งคณิตศาสตร์ภายในเลเยอร์โครงข่ายประสาทเทียมเดียวบน GPU หลายตัว เพื่อให้โมเดลที่ใหญ่เกินไปสำหรับอุปกรณ์หนึ่งเครื่องยังคงสามารถทำงานได้ สิ่งสำคัญคือเนื่องจากโมเดล Frontier มีพารามิเตอร์นับแสนล้านรายการที่ไม่มี GPU ตัวใดสามารถเก็บหรือประมวลผลได้เร็วพอเพียงลำพัง
Tensor Parallelism สำหรับโมเดลขนาดใหญ่เป็นองค์ประกอบทางเทคนิคที่ส่งผลต่อคุณภาพของโมเดล ต้นทุนโครงสร้างพื้นฐาน เวลาแฝง และความน่าเชื่อถือในวงกว้าง
เจาะลึก
ความเท่าเทียมของเทนเซอร์ (หรือที่เรียกว่าความเท่าเทียมของโมเดลภายในเลเยอร์) แบ่งส่วนเมทริกซ์น้ำหนักแต่ละรายการใน GPU แทนที่จะวางทั้งเลเยอร์บนอุปกรณ์แยกกัน ในหม้อแปลงไฟฟ้า การคูณเมทริกซ์ขนาดใหญ่—การฉายภาพความสนใจและ MLP แบบฟีดไปข้างหน้า—จะถูกแยกออก: ตัวอย่างเช่น เมทริกซ์น้ำหนักแรกของ MLP จะถูกแบ่งพาร์ติชันด้วยคอลัมน์ และเมทริกซ์ที่สองต่อแถว ดังนั้น GPU แต่ละตัวจะคำนวณชิ้นส่วนและการลดทั้งหมดเพียงครั้งเดียวจะรวมผลลัพธ์เข้าด้วยกัน ความสนใจจะถูกแยกออกไปตามหัวต่างๆ โดย GPU แต่ละตัวจะจัดการชุดย่อย เนื่องจาก GPU ทุกตัวเป็นส่วนหนึ่งของทุกเลเยอร์พร้อมกัน ความขนานของเทนเซอร์จึงลดหน่วยความจำต่อ GPU และเพิ่มความเร็วในการประมวลผล แต่ต้องใช้การสื่อสารที่มีแบนด์วิธสูงบ่อยครั้งระหว่าง GPU แต่ละเลเยอร์ ด้วยเหตุนี้จึงมักถูกจำกัดอยู่ภายในโหนดที่เชื่อมต่อด้วย NVLink และรวมกับไปป์ไลน์และความขนานของข้อมูลสำหรับการฝึกอบรมและงานเสิร์ฟที่มีขนาดใหญ่มาก
ข้อมูลเชิงลึกทางเทคนิค
เคล็ดลับที่ Megatron-LM ได้รับความนิยมคือการเลือกขนาดพาร์ติชันเพื่อให้การสื่อสารน้อยที่สุด การแยกเมทริกซ์ MLP แรกตามคอลัมน์จะทำให้ GPU แต่ละตัวใช้ความไม่เชิงเส้นในเครื่องโดยไม่มีการซิงค์ การแยกแถวที่สองออกหมายความว่าเอาต์พุตต้องลดทั้งหมดหนึ่งครั้งเพื่อรวมผลลัพธ์บางส่วน แต่ละชั้นจึงต้องมีการย่อทั้งหมดประมาณสองครั้ง (ไปข้างหน้า) และอีกสองครั้ง (ย้อนกลับ) เนื่องจากกลุ่มเหล่านี้เกิดขึ้นทุกเลเยอร์ เวลาแฝงจึงครอบงำ ดังนั้นความเท่าเทียมของเทนเซอร์จึงอยู่หลังลิงก์ภายในโหนดที่รวดเร็ว เช่น NVLink แทนที่จะเป็นเครือข่ายระหว่างโหนดที่ช้ากว่า
การเรียนรู้ความเท่าเทียมของเทนเซอร์สำหรับโมเดลขนาดใหญ่
วิธีแบ่งคณิตศาสตร์ภายในเลเยอร์โครงข่ายประสาทเทียมเดียวบน GPU หลายตัว เพื่อให้โมเดลที่ใหญ่เกินไปสำหรับอุปกรณ์หนึ่งเครื่องยังคงสามารถทำงานได้ สิ่งสำคัญคือเนื่องจากโมเดล Frontier มีพารามิเตอร์นับแสนล้านรายการที่ไม่มี GPU ตัวใดสามารถเก็บหรือประมวลผลได้เร็วพอเพียงลำพัง Tensor Parallelism สำหรับโมเดลขนาดใหญ่เป็นองค์ประกอบทางเทคนิคที่ส่งผลต่อคุณภาพของโมเดล ต้นทุนโครงสร้างพื้นฐาน เวลาแฝง และความน่าเชื่อถือในวงกว้าง หากต้องการสร้างความเข้าใจอย่างลึกซึ้ง ให้ถือว่า Tensor Parallelism สำหรับโมเดลขนาดใหญ่เป็นแบบจำลองการปฏิบัติงาน ไม่ใช่คุณลักษณะเดียว: กำหนดผลลัพธ์ที่ต้องการ ชี้แจงสมมติฐาน และแยกสิ่งที่ระบบสามารถทำได้อย่างน่าเชื่อถือจากสิ่งที่ยังต้องใช้วิจารณญาณจากผู้เชี่ยวชาญ
ในทางปฏิบัติ ทีมที่แข็งแกร่งที่ใช้ Tensor Parallelism สำหรับโมเดลขนาดใหญ่จะปรับสถาปัตยกรรม ข้อมูล และตัวเลือกโครงสร้างพื้นฐานให้เหมาะสมโดยเทียบกับความน่าเชื่อถือและต้นทุน โดยจะบันทึกเกณฑ์ความสำเร็จที่ชัดเจน ทดสอบกับข้อมูลและขั้นตอนการทำงานที่สมจริง และทำซ้ำตามรูปแบบความล้มเหลวที่สังเกตได้ แทนที่จะชนะการวัดประสิทธิภาพเพียงครั้งเดียว นี่คือจุดที่ความเข้าใจทางทฤษฎีกลายเป็นความสามารถที่คงทนของผลิตภัณฑ์ นโยบาย และการดำเนินงาน
การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี ในเวลาเดียวกัน การเพิ่มประสิทธิภาพเกณฑ์มาตรฐานหนึ่งรายการสามารถซ่อนจุดอ่อนของระบบในวงกว้างได้ แนวทางที่ยืดหยุ่นที่สุดคือการรวมความเร็วของการทดลองเข้ากับวินัยในการกำกับดูแล: ดำเนินการนำร่อง จับหลักฐาน เผยแพร่บันทึกการตัดสินใจ และอัปเดตการป้องกันอย่างต่อเนื่องเมื่อพฤติกรรมของโมเดล ความคาดหวังของผู้ใช้ และข้อกำหนดด้านกฎระเบียบมีการเปลี่ยนแปลง
ผลกระทบเชิงกลยุทธ์
การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี
การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี ในการปรับใช้คุณภาพสูง สิ่งนี้จะถูกแปลเป็นกฎการปฏิบัติงานที่วัดผลได้ ขอบเขตความเป็นเจ้าของ และขั้นตอนการตรวจสอบที่เกิดซ้ำ เพื่อให้ทีมสามารถปรับขนาดความมั่นใจแทนที่จะปรับขนาดความคลุมเครือ
การศึกษาด้านเทคนิคช่วยให้ทีมเลือกกลุ่มที่เหมาะสม ไม่ใช่แค่กลุ่มใหม่ล่าสุด
การศึกษาด้านเทคนิคช่วยให้ทีมเลือกกลุ่มที่เหมาะสม ไม่ใช่แค่กลุ่มใหม่ล่าสุด ในการปรับใช้คุณภาพสูง สิ่งนี้จะถูกแปลเป็นกฎการปฏิบัติงานที่วัดผลได้ ขอบเขตความเป็นเจ้าของ และขั้นตอนการตรวจสอบที่เกิดซ้ำ เพื่อให้ทีมสามารถปรับขนาดความมั่นใจแทนที่จะปรับขนาดความคลุมเครือ
ตัวเลือกทางวิศวกรรมที่ดีกว่าจะช่วยลดเหตุการณ์ด้านความน่าเชื่อถือในการผลิต
ตัวเลือกทางวิศวกรรมที่ดีกว่าจะช่วยลดเหตุการณ์ด้านความน่าเชื่อถือในการผลิต ในการปรับใช้คุณภาพสูง สิ่งนี้จะถูกแปลเป็นกฎการปฏิบัติงานที่วัดผลได้ ขอบเขตความเป็นเจ้าของ และขั้นตอนการตรวจสอบที่เกิดซ้ำ เพื่อให้ทีมสามารถปรับขนาดความมั่นใจแทนที่จะปรับขนาดความคลุมเครือ
การใช้งานจริงในโลกแห่งความเป็นจริง
ฝึกฝนโมเดลพารามิเตอร์ 175B โดยการแบ่งส่วนเมทริกซ์น้ำหนักของแต่ละเลเยอร์บน GPU 8 ตัวในโหนดที่เชื่อมต่อกับ NVLink หนึ่งโหนดโดยใช้ Megatron-LM
ให้บริการโมเดลการแชทแบบพารามิเตอร์ 70B ใน vLLM ด้วย tensor_parallel_size=4 เพื่อให้น้ำหนักพอดีกับ GPU สี่ตัวและตอบสนองแบบเรียลไทม์
การแยกความสนใจของหม้อแปลงไปยัง GPU เพื่อให้แต่ละอุปกรณ์คำนวณชุดย่อย จากนั้นจึงต่อเอาต์พุตสำหรับเลเยอร์ถัดไป
การผสมผสานความขนานของเทนเซอร์ภายในโหนดและความขนานของไปป์ไลน์ข้ามโหนดเพื่อฝึกโมเดลล้านล้านพารามิเตอร์บนคลัสเตอร์ GPU ขนาดใหญ่
รูปแบบการดำเนินงาน
ความเท่าเทียมของเทนเซอร์สำหรับโมเดลขนาดใหญ่ในทางปฏิบัติ
ฝึกฝนโมเดลพารามิเตอร์ 175B โดยการแบ่งส่วนเมทริกซ์น้ำหนักของแต่ละเลเยอร์บน GPU 8 ตัวในโหนดที่เชื่อมต่อกับ NVLink หนึ่งโหนดโดยใช้ Megatron-LM
การฝึกแบบจำลองพารามิเตอร์ 175B โดยการแบ่งส่วนเมทริกซ์น้ำหนักของแต่ละเลเยอร์บน GPU 8 ตัวในโหนดที่เชื่อมต่อกับ NVLink หนึ่งโหนดโดยใช้ Megatron-LM ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป
ความเท่าเทียมของเทนเซอร์สำหรับโมเดลขนาดใหญ่ในทางปฏิบัติ
ให้บริการโมเดลการแชทแบบพารามิเตอร์ 70B ใน vLLM ด้วย tensor_parallel_size=4 เพื่อให้น้ำหนักพอดีกับ GPU สี่ตัวและตอบสนองแบบเรียลไทม์
ให้บริการโมเดลการแชทแบบพารามิเตอร์ 70B ใน vLLM ด้วย tensor_parallel_size=4 เพื่อให้น้ำหนักพอดีกับ GPU สี่ตัวและตอบสนองแบบเรียลไทม์ ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป
ความเท่าเทียมของเทนเซอร์สำหรับโมเดลขนาดใหญ่ในทางปฏิบัติ
การแยกความสนใจของหม้อแปลงไปยัง GPU เพื่อให้แต่ละอุปกรณ์คำนวณชุดย่อย จากนั้นจึงต่อเอาต์พุตสำหรับเลเยอร์ถัดไป
การแยกความสนใจของหม้อแปลงจะมุ่งไปที่ GPU เพื่อให้แต่ละอุปกรณ์คำนวณเซ็ตย่อย จากนั้นจึงต่อเอาต์พุตสำหรับเลเยอร์ถัดไป ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป
ความเท่าเทียมของเทนเซอร์สำหรับโมเดลขนาดใหญ่ในทางปฏิบัติ
การผสมผสานความขนานของเทนเซอร์ภายในโหนดและความขนานของไปป์ไลน์ข้ามโหนดเพื่อฝึกโมเดลล้านล้านพารามิเตอร์บนคลัสเตอร์ GPU ขนาดใหญ่
การผสมผสานความเท่าเทียมของเทนเซอร์ภายในโหนดและความขนานของไปป์ไลน์ระหว่างโหนดเพื่อฝึกฝนโมเดลล้านล้านพารามิเตอร์บนคลัสเตอร์ GPU ขนาดใหญ่ ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป
ความเสี่ยงและรั้ว
การเพิ่มประสิทธิภาพเกณฑ์มาตรฐานหนึ่งรายการสามารถซ่อนจุดอ่อนของระบบในวงกว้างได้
ต้นทุนโครงสร้างพื้นฐานและการบำรุงรักษามักถูกประเมินต่ำไป
ช่องว่างด้านความปลอดภัยและความสามารถในการสังเกตสามารถเพิ่มขึ้นได้เมื่อระบบมีความซับซ้อนมากขึ้น
แผนงานการดำเนินงาน
กำหนดเป้าหมายเวลาแฝง คุณภาพ และต้นทุนก่อนนำไปใช้งาน
กำหนดเป้าหมายเวลาแฝง คุณภาพ และต้นทุนก่อนนำไปใช้งาน ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น
เกณฑ์มาตรฐานภายใต้สภาวะโหลดและข้อมูลจริง
เกณฑ์มาตรฐานภายใต้สภาวะโหลดและข้อมูลจริง ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น
การตรวจสอบเครื่องมือเพื่อหาข้อผิดพลาด การเบี่ยงเบน และผลกระทบต่อผู้ใช้
การตรวจสอบเครื่องมือเพื่อหาข้อผิดพลาด การเบี่ยงเบน และผลกระทบต่อผู้ใช้ ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น
เตรียมเส้นทางการย้อนกลับและการตอบสนองต่อเหตุการณ์ก่อนปรับขนาด
เตรียมเส้นทางการย้อนกลับและการตอบสนองต่อเหตุการณ์ก่อนปรับขนาด ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น