ByteDance-Tsinghua เปิดตัว CUDA Agent ระบบ RL สร้างเคอร์เนล
ByteDance Seed และ Tsinghua AIR เปิดตัว CUDA Agent ระบบ Reinforcement Learning ขนาดใหญ่สำหรับสร้าง CUDA Kernel พร้อมชุดข้อมูล CUDA-Agent-Ops-6K

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
- ByteDance Seed และ Tsinghua AIR เปิดตัว CUDA Agent ระบบสร้าง CUDA Kernel
- สร้างขึ้นบนโมเดล Seed1.6 (23B active, 230B total parameters) เปิดเผยชุดข้อมูล CUDA-Agent-Ops-6K
- ระบบ Sandbox ใช้การ์ดจอ NVIDIA H20 ถึง 128 ตัว ทำผลงานอัตราความสำเร็จสูงถึง 98.8%
- ช่วยเร่งความเร็วกว่า torch.compile เฉลี่ย 2.11 เท่า พร้อมมาตรการป้องกัน Reward Hacking 5 ชั้น
การร่วมมือครั้งสำคัญระหว่าง ByteDance Seed และ Tsinghua AIR ได้นำเสนอ CUDA Agent ระบบ Agentic Reinforcement Learning ขนาดใหญ่ที่ออกแบบมาเพื่อการสร้าง CUDA Kernel โดยเฉพาะ แม้ว่าตัวโมเดลที่ผ่านการฝึกฝนแล้วจะไม่ได้ถูกเผยแพร่สู่สาธารณะ เนื่องจากสร้างขึ้นบน Seed1.6 ซึ่งเป็นโมเดล MoE แบบกรรมสิทธิ์ที่มีพารามิเตอร์ใช้งาน 23 พันล้าน และพารามิเตอร์รวม 230 พันล้าน แต่ทางคณะผู้จัดทำได้เปิดให้สาธารณชนเข้าถึงชุดข้อมูล CUDA-Agent-Ops-6K, ข้อมูลจำเพาะ SKILL.md รวมถึงสูตรการให้รางวัลและการอุ่นเครื่อง (warm-up)
ในแง่ของโครงสร้างพื้นฐาน ระบบ Sandbox สำหรับการประเมินประสิทธิภาพ (profiling) จำเป็นต้องใช้การ์ดจอ NVIDIA H20 จำนวนถึง 128 ตัว ซึ่งทำให้การจำลองระบบแบบเต็มรูปแบบทำได้เฉพาะในห้องปฏิบัติการแนวหน้า, ระบบคลาวด์ GPU และทีมโครงสร้างพื้นฐานขนาดใหญ่เท่านั้น อย่างไรก็ตาม ทีมงานขนาดกลางยังสามารถนำส่วนประกอบต่างๆ เช่น ชุดข้อมูล, รางวัลตามเป้าหมาย, ข้อจำกัดป้องกัน Reward Hacking และข้อมูลจำเพาะของทักษะ ไปปรับใช้ร่วมกับโมเดลพื้นฐานแบบเปิดได้
เทคโนโลยีนี้มีประโยชน์อย่างมากในอุตสาหกรรมและแอปพลิเคชันที่ต้องการความหน่วงต่ำ (latency-critical) เช่น โครงสร้างพื้นฐาน AI และระบบอนุมาน, คลาวด์ GPU, การขับขี่อัตโนมัติ, การซื้อขายเชิงปริมาณ (quantitative trading), การถ่ายภาพทางการแพทย์ และระบบแนะนำ โดยมีการใช้งานรวมถึงการหลอมรวมโอเปอเรเตอร์ที่ torch.compile ทำได้ไม่ดีนัก, การลดต้นทุนต่อโทเค็น และการปรับแต่งเคอร์เนลใหม่ข้ามรุ่นของ GPU

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
กระบวนการทำงานของตัวแทน (Agent Loop) มีรูปแบบจำลองมาจากเครื่องมือ OpenHands ซึ่งทำงานภายใต้รูปแบบ ReAct (Bash, Read/Write, Edit/MultiEdit, Glob, Grep, NotebookEdit, BashOutput, KillBash) และส่งคำสั่ง CUDA ในรูปแบบ Agent Skills โดยไฟล์ SKILL.md จะสั่งให้โมเดลประเมินประสิทธิภาพโมเดล PyTorch, เขียนทับไฟล์ model_new.py ด้วยเคอร์เนลแบบกำหนดเอง, คอมไพล์ใน GPU Sandbox และวนซ้ำจนกว่าเคอร์เนลจะทำงานเร็กว่า torch.compile อย่างน้อย 5% ที่ค่า atol=1e-2 และ rtol=1e-2
ระบบยังมีมาตรการป้องกันการแฮกรางวัล (Reward Hacking) ถึง 5 แนวทาง ได้แก่ สคริปต์การตรวจสอบและประเมินผลที่ล็อกสิทธิ์การเข้าถึง, context manager ที่ห้ามใช้ฟังก์ชันสำรองอย่าง torch.nn.functional, การตรวจสอบกับอินพุตสุ่ม 5 รายการ, การประเมินประสิทธิภาพพร้อมการซิงโครไนซ์อุปกรณ์และการอุ่นเครื่อง และการไม่มีเครื่องมือค้นหาบนเว็บ โดยการให้รางวัลจะเป็นแบบไม่ต่อเนื่อง (discrete) r ∈ {-1, 1, 2, 3} คือ -1 เมื่อความถูกต้องล้มเหลว, 3 หากผ่านทั้งโหมด eager และ torch.compile มากกว่า 5%, 2 หากผ่านเฉพาะโหมด eager และ 1 ในกรณีอื่นๆ
การพัฒนา CUDA Kernel มักเป็นคอขวดสำคัญในการประมวลผลโมเดลภาษาขนาดใหญ่และโครงข่ายประสาทเทียมเชิงลึก เนื่องจากวิศวกรต้องเขียนโค้ดภาษาต่ำที่ซับซ้อนเพื่อให้รีดประสิทธิภาพฮาร์ดแวร์ออกมาได้สูงสุด การนำ Reinforcement Learning เข้ามาช่วยสร้างและปรับแต่งเคอร์เนลอัตโนมัติผ่าน Agent จึงเป็นก้าวกระโดดครั้งสำคัญที่จะช่วยลดภาระของมนุษย์ และทำให้การปรับปรุงความเร็วระดับมิลลิวินาทีทำได้อย่างเป็นระบบ แต่อย่างไรก็ตาม ความต้องการฮาร์ดแวร์ระดับสูงอย่าง NVIDIA H20 จำนวน 128 ตัว ก็ยังเป็นกำแพงใหญ่ที่จำกัดการใช้งานให้จำกัดอยู่เพียงกลุ่มองค์กรขนาดใหญ่เท่านั้น
ผลการทดสอบในตารางหลักระบุว่า ระบบทำอัตราความสำเร็จภาพรวมได้ 98.8% เร็กว่าโหมด eager 98.4% และเร็กว่า torch.compile 96.8% โดยกรณีศึกษาแสดงให้เห็นว่านโยบายที่เรียนรู้สามารถนำการคูณเมทริกซ์ทแยงมุมมาเขียนใหม่เป็นการปรับขนาดแบบแถว ซึ่งเร็วกว่า torch.compile ถึง 73.31 เท่าเลยทีเดียว
ที่มา: MarkTechPost
พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้
ความคิดเห็น
แสดงความคิดเห็น