18 คะแนน โดย GN⁺ 2025-09-09 | 3 ความคิดเห็น | แชร์ทาง WhatsApp
  • แนะนำกรณีศึกษา การตั้งค่าและการวัดประสิทธิภาพ ที่รวมบอร์ด Raspberry Pi ขนาดเล็ก 4 เครื่องเป็น โหนดอนุมานแบบกระจาย เพื่อรันโมเดลควอนไทซ์ A3B Q40 ของ Qwen3 30B MoE
  • โครงข่ายเครือข่ายประกอบด้วย ROOT 1 เครื่อง + WORKER 3 เครื่อง (ทั้งหมดเป็น Raspberry Pi 5 8GB) ผ่านสวิตช์เครือข่าย
  • วัดความเร็วการสร้างโทเค็นได้ 14.33 tok/s ในขั้นประเมินผล และ 13.04 tok/s ในขั้นพยากรณ์
  • โมเดลใช้สถาปัตยกรรม Qwen3 MoE และประกอบด้วย 48 เลเยอร์กับผู้เชี่ยวชาญ 128 ตัว
  • ทำให้สามารถรันโมเดลภาษาประสิทธิภาพสูงบนฮาร์ดแวร์ต้นทุนต่ำได้ เปิดโอกาสให้กับ คลัสเตอร์ Raspberry Pi และ งานวิจัย AI ที่คุ้มค่าใช้จ่าย

ภาพรวมโครงการ

  • ใช้ Distributed Llama v0.16.0 เพื่อรันโมเดล Qwen3 30B A3B Q40 บน Raspberry Pi 5 8GB จำนวน 4 เครื่อง
    • ออกแบบมาเพื่อให้สามารถรันโมเดลภาษาขนาดใหญ่บนอุปกรณ์ต้นทุนต่ำได้
    • เชื่อมต่อเครือข่ายด้วยสวิตช์ TP-Link LS1008G
  • เป้าหมายหลัก คือการทำให้โมเดล AI ทำงานได้อย่างมีประสิทธิภาพโดยไม่ต้องพึ่งทรัพยากรคอมพิวต์สมรรถนะสูง
    • กระจายงานไปยังอุปกรณ์ 4 เครื่อง (รูท 1 เครื่อง, เวิร์กเกอร์ 3 เครื่อง)
    • IP address: รูท (10.0.0.2), เวิร์กเกอร์ (10.0.0.1, 10.0.0.3, 10.0.0.4)

การตั้งค่าฮาร์ดแวร์และเครือข่าย

  • องค์ประกอบ: คลัสเตอร์ที่ประกอบด้วย Raspberry Pi 5 8GB จำนวน 4 เครื่อง
    • แต่ละอุปกรณ์เชื่อมต่อผ่านสวิตช์ TP-Link LS1008G
    • โหนดรูทและโหนดเวิร์กเกอร์ 3 ตัวสื่อสารกันผ่านเครือข่าย
  • การเริ่มต้นเครือข่าย: เชื่อมต่อกับโหนดเวิร์กเกอร์ทั้งหมดสำเร็จ (10.0.0.1:9999, 10.0.0.3:9999, 10.0.0.4:9999)
    • เครือข่ายทำงานในโหมดไม่บล็อก
    • การรับส่งข้อมูล: ระหว่างการประเมินผล ส่ง 12084kB, รับ 20085kB
  • การใช้ CPU: ประมวลผลที่ปรับแต่งด้วยการรองรับ Neon Dotprod FP16

รายละเอียดโมเดล

  • โมเดล: Qwen3 30B A3B Q40
    • สถาปัตยกรรม: Qwen3 MoE (Mixture of Experts)
    • จำนวนเลเยอร์: 48
    • จำนวนผู้เชี่ยวชาญ: 128, ผู้เชี่ยวชาญที่ใช้งานจริง 8
    • มิติ: Dim 2048, QDim 4096, KvDim 512, HiddenDim 6144
  • โทเค็นไนเซอร์: ขนาดคำศัพท์ 151669 ซึ่งไม่ตรงกับขนาดคำศัพท์ของโมเดล 151936 เล็กน้อย
    • ขนาดคำศัพท์ทั่วไป: 151643
    • ขนาดคำศัพท์พิเศษ: 26
  • ความต้องการหน่วยความจำ: 5513MB
    • ความยาวซีเควนซ์สูงสุด: 4096
    • NormEpsilon: 0.000001, RopeTheta: 10000000

ประสิทธิภาพการทดสอบ

  • ขั้นประเมินผล
    • จำนวนแบตช์: 32
    • จำนวนโทเค็น: 19
    • ความเร็วการสร้างโทเค็น: 14.33 tok/s (69.80ms/tok)
  • ขั้นพยากรณ์
    • จำนวนโทเค็น: 109
    • ความเร็วการสร้างโทเค็น: 13.04 tok/s (76.69ms/tok)
  • บันทึกรายละเอียดการพยากรณ์:
    • ในแต่ละขั้นพยากรณ์ใช้เวลาประมาณ 49~70ms และมีเวลาซิงก์ 14~94ms
    • ข้อมูลที่ส่ง 636kB, ข้อมูลที่รับ 1057kB อย่างสม่ำเสมอ
    • ตัวอย่างโทเค็นที่สร้าง: "Of", "course", "Poland" เป็นต้น
    • จำนวนเธรด: 4
    • ชนิดบัฟเฟอร์ float: Q80
    • ความยาวซีเควนซ์สูงสุด: 4096

ข้อควรระวังและข้อจำกัด (Notes & Caveats)

  • มีคำเตือนเรื่องความไม่ตรงกันระหว่าง Tokenizer vocab size และ Model vocab size จึงจำเป็นต้อง ตรวจสอบความสอดคล้องของโทเค็นไนเซอร์
  • A3B Q40 เป็น การควอนไทซ์เชิงรุก จึงควรคำนึงถึงจุดแลกเปลี่ยนระหว่าง ความแม่นยำกับคุณภาพของคำตอบ
  • การตั้งค่าแบบ Pi 5 8GB × 4 มีข้อจำกัดด้านหน่วยความจำและการประมวลผล จึงอาจผันผวนมากตาม ความยาวพรอมป์ต์, การทำงานพร้อมกัน, และคุณภาพเครือข่าย

ความหมายในทางปฏิบัติ

  • เป็นโครงการที่แสดงให้เห็นถึงความเป็นไปได้ของ การรัน AI ต้นทุนต่ำ
  • เป็น กรณีศึกษาที่ทำซ้ำได้ ของการรัน โมเดล MoE ระดับ 30B แบบกระจายบน คลัสเตอร์ SBC ต้นทุนต่ำ ซึ่งอาจเป็นจุดอ้างอิงที่ช่วยลดข้อจำกัดในการทดลองสำหรับ งานอนุมานแบบเบาในองค์กรและการพัฒนา
  • มี บันทึกเครือข่ายและการซิงก์ต่อโทเค็น ทำให้ได้ข้อมูลที่มีความหมายสำหรับ การวัดและปรับจูนโอเวอร์เฮดของระบบกระจาย
  • การผสาน เฟรมเวิร์กแบบกระจาย + โมเดลควอนไทซ์ สามารถยกระดับ ประสิทธิภาพต่อ TCO ใน สภาพแวดล้อม edge/การวิจัยส่วนบุคคล ได้

3 ความคิดเห็น

 
seohc 2025-09-10

มินิพีซีซีรีส์ n ก็ราคาถูกเหมือนกัน แต่ถ้าจับ 16GB 4 ตัวมามัดรวมกัน... พอลองคิดดูแล้วก็คงได้ราคาเท่ากับ 8845 ที่อัปเป็น 32GB นั่นแหละ 555

 
ndrgrd 2025-09-10

น่าทึ่งมากครับ ช่วงนี้รู้สึกว่ามีข้อมูลเกี่ยวกับการใช้งาน LLM แบบโหลดต่ำออกมาเรื่อย ๆ ซึ่งดีมากเลยครับ

 
developerjhp 2025-09-09

สุดยอดมาก..