- Exo เป็นซอฟต์แวร์โอเพนซอร์สที่ช่วยให้คุณสามารถตั้งค่าคลัสเตอร์ได้ IA โดยใช้อุปกรณ์ทั่วไปในชีวิตประจำวัน เพื่อกระจายโมเดล LLM ไปยังคอมพิวเตอร์หลายเครื่องที่เชื่อมต่อกันในเครือข่าย
- แพลตฟอร์มนี้โดดเด่นด้วยการค้นหาอุปกรณ์อัตโนมัติ การรองรับ RDMA ผ่าน Thunderbolt 5 และการแบ่งพาร์ติชันโมเดลแบบไดนามิก ซึ่งช่วยเพิ่มประสิทธิภาพการใช้งาน CPU, GPU และหน่วยความจำ
- มันทำงานได้ดีเป็นพิเศษบน macOS ที่ใช้ GPU และ MLX ในขณะที่บน ลินุกซ์ ปัจจุบันระบบนี้ทำงานบน CPU โดยมีแผนงานเปิดกว้างเพื่อขยายการรองรับไปยังอุปกรณ์อื่นๆ ฮาร์ดแวร์.
- Exo เหมาะอย่างยิ่งสำหรับโครงการต่างๆ เช่น Home Assistant, ธุรกิจขนาดกลางและขนาดย่อม และนักพัฒนาที่ต้องการใช้งาน AI ขั้นสูงในพื้นที่โดยไม่ต้องพึ่งพาระบบคลาวด์หรือลงทุนใน GPU ระดับไฮเอนด์
การประมวลผลโมเดลภาษาขนาดใหญ่ในระดับท้องถิ่น (LLM) มักเกี่ยวข้องกับเครื่องจักรขนาดใหญ่ การ์ดจอราคาแพง และการใช้พลังงานที่ไม่เป็นมิตรต่อสิ่งแวดล้อม อย่างไรก็ตาม ในช่วงไม่กี่เดือนที่ผ่านมา มีทางเลือกใหม่เกิดขึ้นซึ่งกำลังได้รับความสนใจอย่างมาก: Exo คือซอฟต์แวร์ที่เปลี่ยนอุปกรณ์ภายในบ้านหลายชิ้นให้กลายเป็นคลัสเตอร์ AI สามารถรันโมเดลที่ต้องการประสิทธิภาพสูงได้โดยไม่ต้องพึ่งพาระบบคลาวด์
กับเอ็กโซ แนวคิดคือการรวมพลังของคอมพิวเตอร์เข้าด้วยกัน แบบพกพาโทรศัพท์มือถือและอุปกรณ์เชื่อมต่ออื่นๆ ดังนั้น ด้วยการรวมทรัพยากรเข้าด้วยกัน พวกเขาจึงสามารถใช้งาน LLM (Local Management System) ที่ปกติแล้วเราจะเห็นได้เฉพาะในศูนย์ข้อมูลระดับมืออาชีพเท่านั้น นี่เป็นการเปิดโอกาสให้สามารถสร้าง "ศูนย์ข้อมูลขนาดเล็ก" ที่บ้านได้ ซึ่งเหมาะสำหรับโครงการต่างๆ เช่น ผู้ช่วยส่วนตัวในบ้านอย่าง Home Assistant, ธุรกิจขนาดกลางและขนาดย่อมที่ต้องการทดลองใช้ AI โดยไม่ต้องเสียค่าใช้จ่ายสูง หรือนักพัฒนาที่อยากรู้อยากเห็นและต้องการทดสอบระบบคลาวด์ให้มากกว่าแบบเดิมๆ
Exo คืออะไร และมีเป้าหมายที่จะแก้ไขปัญหาอะไร?
Exo เป็นซอฟต์แวร์ทดลองแบบโอเพนซอร์สดูแลโดย Exo Labs ซึ่งมีเป้าหมายหลักคือการช่วยให้คุณสามารถสร้างของคุณเองได้ กลุ่มของ ปัญญาประดิษฐ์ ที่บ้าน โดยใช้อุปกรณ์ทั่วไปในชีวิตประจำวัน แทนที่จะพึ่งพา GPU ตัวเดียวที่มี VRAM จำนวนมาก Exo จะกระจายการประมวลผลโมเดลไปยังอุปกรณ์หลายตัวที่เชื่อมต่ออยู่ในเครือข่ายเดียวกัน
แนวคิดหลักของ Exo นั้นเรียบง่ายแต่ทรงพลังมากอุปกรณ์ที่คุณใช้เป็นประจำ—เช่น MacBook, iPhoneiPad, คอมพิวเตอร์ Linux หรือแม้แต่คอมพิวเตอร์แบบบอร์ดเดี่ยว (SBC) บางรุ่น สามารถทำงานร่วมกันเพื่อรันโมเดล AI ขนาดใหญ่ได้ โดยแต่ละอุปกรณ์จะให้หน่วยความจำและพลังการประมวลผล และซอฟต์แวร์จะประสานงานทุกอย่างให้ทำงานราวกับว่าเป็นเครื่องขนาดใหญ่เพียงเครื่องเดียว
วง Exo ถือกำเนิดขึ้นเพื่อตอบสนองต่อข้อจำกัดที่พบได้ทั่วไปไม่ใช่ทุกคนที่จะสามารถเข้าถึงการ์ดจอระดับไฮเอนด์ได้ เช่น... NVIDIA การ์ดจอ RTX 3090 ที่มี VRAM 24 GB และ RAM หลายสิบกิกะไบต์ การใช้งานซอฟต์แวร์รุ่น "ธรรมดา" อย่าง Llama 3.1 70B ที่ให้ประสิทธิภาพการทำงานที่ดีในระดับหนึ่งนั้น ต้องใช้ฮาร์ดแวร์ที่มีราคาสูงเกินงบประมาณของนักพัฒนา นักประดิษฐ์ หรือธุรกิจขนาดเล็กจำนวนมาก
แทนที่จะบังคับให้คุณลงทุนในอุปกรณ์ขนาดมหึมา หรือพึ่งพาระบบคลาวด์เพียงอย่างเดียว Exo เสนอให้รวมหน่วยความจำที่มีอยู่จากอุปกรณ์ขนาดเล็กหลายๆ เครื่องเข้าด้วยกัน เพื่อให้โมเดลทั้งหมดสอดคล้องกับกลุ่มโดยรวม ซึ่งจะช่วยส่งเสริมการเข้าถึงการทดลองใช้ AI ขั้นสูงอย่างเท่าเทียมกันมากขึ้น โดยเฉพาะอย่างยิ่งสำหรับสตาร์ทอัพและ SMEs

Exo ทำงานอย่างไรในระดับเทคนิค
หัวใจสำคัญของ Exo อยู่ที่ความสามารถในการเผยแพร่โมเดล LLM ใช้งานได้กับอุปกรณ์ทุกชนิดที่มีอยู่ในเครือข่ายบ้านหรือสำนักงาน แทนที่จะโหลดโมเดลทั้งหมดลงในเครื่องเดียว Exo จะแบ่งโมเดลออกเป็นส่วนๆ และกระจายไปยังอุปกรณ์ต่างๆ โดยใช้ประโยชน์จากหน่วยความจำและพลังการประมวลผลของแต่ละโหนด
เพื่อทำมัน, Exo ใช้แนวทางหน่วยความจำร่วมแบบกระจายโดยปรับส่วนของโมเดลที่วางอยู่บนแต่ละอุปกรณ์ให้เหมาะสมกับปริมาณหน่วยความจำ (RAM และใน macOS คือ GPU VRAM) ที่มีอยู่ ดังนั้น โมเดลที่ปกติแล้วต้องการ GPU ที่ทรงพลังมาก ก็สามารถทำงานได้บนแล็ปท็อป เดสก์ท็อป และแม้แต่อุปกรณ์อื่นๆ ตราบใดที่หน่วยความจำคลัสเตอร์โดยรวมเพียงพอ
กระบวนการเริ่มต้นด้วยการติดตั้ง Exo บนอุปกรณ์ที่รองรับในหลายกรณี จำเป็นต้องมี หลาม 3.12 หรือสูงกว่า รวมถึงเครื่องมืออื่นๆ เช่น ตัวจัดการการพึ่งพาและคอมไพเลอร์ เมื่อบริการทำงานแล้ว อุปกรณ์ที่ใช้งาน Exo พวกเขาจะค้นพบกันและกันโดยอัตโนมัติ ภายในเครือข่ายเดียวกัน โดยที่คุณไม่ต้องตั้งค่า IP หรือพอร์ตด้วยตนเอง
การสื่อสารภายในระหว่างโหนดต่างๆ นั้นอาศัยการเชื่อมต่อเป็นหลัก เพียร์ทูเพียร์สถาปัตยกรรมแบบนี้เอื้อต่อการที่แต่ละเครื่องสามารถทำงานตามความสามารถของตนได้โดยไม่ต้องพึ่งพาเซิร์ฟเวอร์กลางที่ตายตัวเพียงเครื่องเดียว จากโครงสร้างแบบนี้ Exo จะทำการวิเคราะห์ทรัพยากรและเวลาแฝงเพื่อตัดสินใจว่าจะแบ่งโมเดลอย่างไรและจะวางแต่ละส่วนไว้ที่ใด
หนึ่งในองค์ประกอบสำคัญคือการแบ่งส่วนโมเดลแบบไดนามิกExo สามารถรับข้อมูลแบบเรียลไทม์เกี่ยวกับโครงสร้างของคลัสเตอร์ ทรัพยากรของแต่ละอุปกรณ์ (หน่วยความจำ, CPU, GPU) และคุณภาพของลิงก์เครือข่าย (ความหน่วงแฝง, แบนด์วิดท์ระหว่างโหนด) ด้วยข้อมูลนี้ Exo จะตัดสินใจโดยอัตโนมัติว่าจะแบ่งโมเดลอย่างไรเพื่อให้เกิดความสมดุลของภาระงานและลดปัญหาคอขวดให้เหลือน้อยที่สุด
คุณสมบัติทางเทคนิคหลักของ Exo
โครงการ Exo ได้รวมเอาคุณสมบัติหลายอย่างที่ออกแบบมาเพื่อให้ได้ประโยชน์สูงสุด ใช้ประโยชน์จากฮาร์ดแวร์ที่มีอยู่และทำให้ชีวิตของผู้ใช้ง่ายขึ้น ตัวอย่างที่โดดเด่นที่สุด ได้แก่:
การค้นหาอุปกรณ์อัตโนมัติอุปกรณ์ที่ใช้ Exo สามารถค้นหากันได้โดยที่คุณไม่ต้องไปยุ่งเกี่ยวกับการตั้งค่าเครือข่าย ซึ่งจะช่วยหลีกเลี่ยงปัญหาที่มักเกิดขึ้นกับการตั้งค่า IP แบบคงที่ พอร์ตแบบกำหนดเอง หรือสคริปต์ที่กำหนดเองเพื่อให้โหนดต่างๆ มองเห็นกันได้
รองรับ RDMA ผ่าน Thunderboltหนึ่งในจุดเด่นที่สุดก็คือ Exo มาพร้อมกับ รองรับการใช้งานร่วมกับ RDMA (Remote Direct Memory Access) ผ่าน Thunderbolt 5 ตั้งแต่วันแรกวิธีการนี้ช่วยลดเวลาแฝงระหว่างอุปกรณ์ได้มากถึง 99% เมื่อเทียบกับวิธีการสื่อสารแบบดั้งเดิม ซึ่งเป็นสิ่งสำคัญอย่างยิ่งเมื่อต้องกระจายชิ้นส่วนของรุ่นเดียวกันไปยังเครื่องหลายเครื่อง
ความขนานของเทนเซอร์Exo นำเทคนิคต่างๆ มาใช้ ความขนานของเทนเซอร์กล่าวอีกนัยหนึ่งคือ มันจะแบ่งเทนเซอร์ของโมเดลออกไปประมวลผลบนอุปกรณ์หลายเครื่อง ด้วยเหตุนี้ ในบางการตั้งค่า จึงมีการรายงานว่าความเร็วเพิ่มขึ้นถึง 1,8 เท่าเมื่อใช้สองอุปกรณ์ และสูงสุดถึง 3,2 เท่าเมื่อใช้สี่อุปกรณ์ เมื่อเทียบกับการประมวลผลโมเดลบนอุปกรณ์เพียงเครื่องเดียวด้วยทรัพยากรเท่ากัน
โครงสร้างเชิงพื้นที่ที่มีสติและการขนานตัวเองระบบจะคำนวณวิธีการแบ่งพาร์ติชันโมเดลและกระจายไปยังคลัสเตอร์โดยอัตโนมัติอย่างเหมาะสมที่สุด โดยคำนึงถึงทั้งประสิทธิภาพของแต่ละโหนดและคุณภาพของการเชื่อมต่อระหว่างกัน คุณสมบัตินี้ของ “การประมวลผลแบบขนานอัตโนมัติที่คำนึงถึงโทโพโลยี” ช่วยลดความจำเป็นที่ผู้ใช้จะต้องปรับแต่งทุกอย่างด้วยตนเอง
การผสานรวม MLX และการรองรับ GPU บน macOSบน macOS โปรแกรม Exo ใช้ MLX เป็นแบ็กเอนด์สำหรับการอนุมาน และ MLX Distributed สำหรับการสื่อสารแบบกระจายศูนย์ ซึ่งช่วยให้สามารถใช้ประโยชน์จาก GPU ที่รวมอยู่ในชิป Apple Silicon ได้อย่างเต็มที่ ซึ่งเป็นสิ่งที่น่าสนใจเป็นพิเศษในอุปกรณ์ต่างๆ เช่น Mac MacBook Pro รุ่น Studio หรือรุ่นล่าสุด
ตัวอย่างการใช้งานจริงและประสิทธิภาพบนเครื่อง Mac
Exo ได้รับการทดสอบในสถานการณ์ที่ท้าทายอย่างมาก โดยการรวมเครื่อง Mac ระดับไฮเอนด์หลายเครื่องเข้าด้วยกัน โดยใช้ประโยชน์จากทั้งการประมวลผลแบบขนานเทนเซอร์และ RDMA ผ่าน Thunderbolt 5 ในการตั้งค่าเหล่านี้ สามารถรันโมเดลขนาดใหญ่มากได้ ซึ่งโดยปกติแล้วเราจะเห็นได้เฉพาะในสภาพแวดล้อมของศูนย์ข้อมูลเท่านั้น
ตัวอย่างหนึ่งที่กล่าวถึงในชุมชนคือการใช้ Mac Studio จำนวน 4 เครื่อง พร้อมชิป M3 Ultra เชื่อมต่อด้วย Thunderbolt 5 และ RDMA โดยรวมแล้วจะมี VRAM ที่ใช้งานได้จริงประมาณ 15 TB เพื่อรองรับโมเดลขนาดใหญ่มาก ๆ
ในบรรดารูปแบบต่างๆ ที่ถูกนำไปใช้ในระบบประเภทนี้ รูปแบบต่อไปนี้มีความโดดเด่น: Qwen3-235B ในรูปแบบ 8 บิต, ดีปซีค v3.1 671B ยังถูกแปลงเป็น 8 บิตด้วย หรือแม้กระทั่ง คิมิ เค2 คิดด้วยภาษา 4 บิตดั้งเดิมในทุกกรณีนี้ Mac แต่ละเครื่องจะทำหน้าที่เป็นส่วนหนึ่งของโมเดล และการสื่อสารระหว่างโหนดต่างๆ จะได้รับการปรับให้เหมาะสมที่สุดโดยใช้ RDMA
การทดลองเหล่านี้ได้รับการบันทึกไว้โดยผู้สร้างผลงาน เช่น เจฟฟ์ เกียร์ลิงซึ่งแสดงให้เห็นถึงความเป็นไปได้ในการตั้งค่าระบบภายในบ้านที่มีหน่วยความจำวิดีโอที่มีประสิทธิภาพจำนวนมหาศาล ในสถานการณ์นี้ Exo ทำหน้าที่เป็นเลเยอร์ควบคุมที่ช่วยให้โมเดลทำงานได้อย่างสอดคล้องกันแม้ว่าจะกระจายอยู่บนเครื่องหลายเครื่องก็ตาม
นอกเหนือจากการกำหนดค่าสุดขั้วเหล่านี้แล้ว หลักการเดียวกันนี้สามารถนำไปใช้กับงานที่มีงบประมาณจำกัดได้เช่นกันตัวอย่างเช่น เพื่อป้อนข้อมูลให้กับแบบจำลองภาษาขนาดใหญ่ซึ่งทำหน้าที่เป็นสมองของระบบบ้านอัจฉริยะขั้นสูง ผู้ช่วยสนทนาส่วนตัว หรือเครื่องมือวิเคราะห์ข้อความภายในธุรกิจขนาดเล็ก
การใช้งาน Exo ร่วมกับ Home Assistant และระบบบ้านอัจฉริยะขั้นสูง
กลุ่มผู้ใช้งาน Home Assistant เริ่มพูดคุยเกี่ยวกับ Exo กันแล้ว เป็นทางเลือกในการเรียกใช้ LLM ขนาดใหญ่ในพื้นที่ ซึ่งทำหน้าที่เป็นกลไกการให้เหตุผลสำหรับระบบบ้านอัจฉริยะ แม้ว่าหลายคนยังไม่ได้ลองใช้โดยตรง แต่โครงการนี้ได้รับความสนใจเพราะสัญญาว่าจะช่วยให้ โมเดลขนาดใหญ่มากบนฮาร์ดแวร์ที่ค่อนข้างธรรมดาโดยมีเงื่อนไขว่าต้องมีการรวมกลุ่มทีมเข้าด้วยกันมากพอ
แนวคิดก็คือว่า แทนที่จะพึ่งพา GPU ที่ทรงพลังหรือระบบคลาวด์คุณสามารถตั้งค่าคลัสเตอร์ด้วยคอมพิวเตอร์หลายเครื่องได้ แม้ว่าเครื่องเหล่านั้นจะไม่มี GPU โดยเฉพาะก็ตาม Exo จะจัดการการกระจายโมเดลไปยังเครื่องทั้งหมด ทำให้ Home Assistant สามารถปรึกษา LLM ในแต่ละเครื่องเพื่อทำการตัดสินใจที่ซับซ้อนมากขึ้นหรือให้คำตอบที่เป็นธรรมชาติมากขึ้นได้
แนวทางนี้เป็นที่น่าสนใจเป็นพิเศษสำหรับผู้ที่ให้ความสำคัญกับความเป็นส่วนตัวเนื่องจากข้อมูลครัวเรือนไม่จำเป็นต้องส่งออกจากเครือข่ายภายใน ดังนั้นการอนุมานและการประมวลผลภาษาธรรมชาติทั้งหมดจึงดำเนินการภายในคลัสเตอร์ที่คุณตั้งค่าไว้ โดยไม่ต้องพึ่งพาเซิร์ฟเวอร์ภายนอก
โครงการนี้ได้รับความสนใจจากบล็อกด้านเทคโนโลยีต่างๆ เช่น CNX Software ซึ่ง... มีการเน้นย้ำว่า Exo สามารถทำงานบนคลัสเตอร์คอมพิวเตอร์ สมาร์ทโฟน หรือบอร์ดพัฒนาได้อีกด้วยอย่างไรก็ตาม ในทางปฏิบัติ ระบบที่รองรับได้ดีที่สุดคือ macOS และ Linux แต่ก็ยังมีข้อจำกัดบางประการอยู่ iOS.
สำหรับผู้ที่ชื่นชอบระบบบ้านอัจฉริยะจำนวนมาก การใช้งานร่วมกันระหว่าง Exo และ Home Assistant นี่อาจเป็นชิ้นส่วนที่ขาดหายไปที่จะทำให้เรามีผู้ช่วยสนทนาอัจฉริยะที่ล้ำสมัย พร้อมใช้งานตลอดเวลา และทำงานในพื้นที่ได้อย่างสมบูรณ์ โดยไม่ต้องเสียค่าใช้จ่ายสำหรับโทเค็นบนคลาวด์หรือพึ่งพาบุคคลที่สาม
โมเดล AI ที่เข้ากันได้และข้อจำกัดของโมเดลที่เป็นกรรมสิทธิ์
Exo สามารถใช้งานร่วมกับโมเดล AI ยอดนิยมจำนวนมากได้โดยเฉพาะอย่างยิ่งซอฟต์แวร์ที่เป็นส่วนหนึ่งของระบบนิเวศแบบเปิด และสามารถดาวน์โหลดและใช้งานได้ในเครื่อง ซึ่งรวมถึงตระกูลซอฟต์แวร์ต่างๆ เช่น LLaMA, Mistral, LLaVA, Qwen และ DeepSeek เป็นต้น
ในกรณีเฉพาะของ ลามะ 3 ของเมตาExo ทำงานได้ดีเป็นพิเศษกับสถาปัตยกรรมเหล่านี้ โดยอนุญาตให้มีเวอร์ชันที่มีขนาดแตกต่างกันขึ้นอยู่กับทรัพยากรของคลัสเตอร์ ทำให้ทั้งนักทดลองรายบุคคลและธุรกิจขนาดเล็กสามารถเข้าถึงโมเดลภาษาที่ทันสมัยได้ง่ายขึ้น โดยไม่ต้องเสียค่าใช้จ่ายด้านลิขสิทธิ์หรือพึ่งพา API ของบุคคลที่สาม
ข้อดีที่น่าสนใจอีกประการหนึ่งคือความเป็นไปได้ในการเปิดเผย API ที่เข้ากันได้กับ ChatGPTด้วยการปรับแต่งเล็กน้อย Exo ช่วยให้โมเดลที่ทำงานบนคลัสเตอร์ของคุณสามารถรับคำขอในรูปแบบที่คล้ายกับ API ของ OpenAIซึ่งช่วยลดความซับซ้อนในการผสานรวมกับแอปพลิเคชันที่ใช้งานมาตรฐานนั้นอยู่แล้วได้อย่างมาก
อย่างไรก็ตาม มีข้อจำกัดที่ชัดเจนเมื่อเราพูดถึงโมเดลที่เป็นกรรมสิทธิ์ เช่น GPT-4GPT-4 เป็นโมเดลแบบปิด ซึ่งจัดเก็บอยู่บนโครงสร้างพื้นฐานของ OpenAI และไม่สามารถดาวน์โหลดได้ นั่นหมายความว่า ตามคำจำกัดความแล้ว ไม่สามารถใช้งานบน Exo หรือสภาพแวดล้อมภายในเครื่องอื่นใดนอกเหนือจาก OpenAI ได้
ดังนั้น เมื่อทำงานร่วมกับ Exo คุณต้องยึดตามโมเดลโอเพนซอร์สหรือโมเดลที่สามารถใช้งานได้ในท้องถิ่นสำหรับการใช้งานจริงส่วนใหญ่ (แชทบอท ผู้ช่วย การวิเคราะห์ข้อความ การให้เหตุผลขั้นพื้นฐานและขั้นสูง) มีแคตตาล็อกโมเดลโอเพนซอร์สที่มีประสิทธิภาพเพียงพออยู่แล้ว โดยเฉพาะอย่างยิ่งกับการพัฒนาล่าสุดของโมเดลต่างๆ เช่น Llama 3.x, Qwen หรือ DeepSeek
ข้อดีหลักของการใช้คลัสเตอร์ Exo
ข้อได้เปรียบที่สำคัญที่สุดของ Exo คือช่วยลดการลงทุนด้านฮาร์ดแวร์ได้อย่างมากแทนที่จะต้องซื้อเวิร์กสเตชันที่มีการ์ดจอขนาดใหญ่ คุณสามารถนำคอมพิวเตอร์และอุปกรณ์ที่มีอยู่แล้วที่บ้านหรือที่ทำงานมาใช้ใหม่ได้ ผู้ใช้หลายคนสามารถตั้งค่าคลัสเตอร์ได้ง่ายๆ โดยใช้ Mac, PC รุ่นเก่า และอุปกรณ์อื่นๆ ที่ไม่ได้ใช้งานแล้ว
แนวทางนี้ ทำให้การเข้าถึง AI ขั้นสูงเป็นไปอย่างเท่าเทียมกันมากขึ้นสิ่งนี้ช่วยให้สตาร์ทอัพและ SME ที่มีงบประมาณจำกัดสามารถแข่งขันในระดับที่ก่อนหน้านี้สงวนไว้สำหรับบริษัทขนาดใหญ่ที่มีทรัพยากรมากมาย ไม่ใช่ทุกโครงการที่จะคุ้มค่ากับการเช่า GPU ราคาแพงในระบบคลาวด์ และนั่นคือเหตุผลที่คลัสเตอร์ในพื้นที่จึงเป็นทางเลือกที่เหมาะสม
นอกจากนี้ Exo มีความยืดหยุ่นสูงในแง่ของประเภทอุปกรณ์แม้ว่าปัจจุบันการรองรับที่สมบูรณ์ที่สุดจะอยู่บน macOS (ใช้ GPU) และ Linux (ปัจจุบันใช้ CPU) แต่โครงการนี้มีเป้าหมายที่จะบูรณาการฮาร์ดแวร์ประเภทอื่น ๆ และปรับปรุงความเข้ากันได้อย่างมีกลยุทธ์ ความสามารถในการผสมผสานโปรไฟล์เครื่องที่แตกต่างกันนี้ช่วยให้คุณสามารถออกแบบคลัสเตอร์ตามความต้องการเฉพาะของคุณได้
ข้อได้เปรียบที่สำคัญอีกประการหนึ่งคือ ด้วยสถาปัตยกรรมแบบกระจายศูนย์ คลัสเตอร์นี้สามารถปรับขนาดได้ค่อนข้างง่ายหากคุณต้องการประสิทธิภาพการทำงานที่มากขึ้นในบางช่วงเวลา เพียงแค่เพิ่มอุปกรณ์ที่ใช้งาน Exo อีกตัว ระบบจะตรวจจับโหนดใหม่แต่ละตัวโดยอัตโนมัติและเพิ่มทรัพยากรเข้าไปในส่วนรวม โดยที่คุณไม่ต้องออกแบบระบบใหม่ตั้งแต่เริ่มต้น
ในที่สุด การแบ่งพาร์ติชันแบบไดนามิกและการรับรู้โครงสร้างทางโทโพโลยี พวกเขาการันตีว่าแม้แต่อุปกรณ์ที่มีฮาร์ดแวร์ธรรมดาก็สามารถมีส่วนช่วยได้อย่างมีประโยชน์ ถึงแม้แล็ปท็อปรุ่นเก่าจะไม่สามารถรันระบบทั้งหมดได้ด้วยตัวเอง แต่ก็สามารถช่วยจัดการงานบางส่วนหรือทำการคำนวณบางอย่าง ซึ่งจะช่วยเพิ่มประสิทธิภาพโดยรวมได้
ข้อจำกัดในปัจจุบันและประเด็นที่ควรพิจารณา
ทุกอย่างย่อมไม่สมบูรณ์แบบ และ Exo ก็ยังคงเป็นซอฟต์แวร์ที่อยู่ในขั้นตอนการทดลองอย่างชัดเจนนั่นหมายความว่า ข้อผิดพลาด พฤติกรรมที่ไม่เสถียร หรือการเปลี่ยนแปลงบ่อยครั้งในการตั้งค่าและการทำงานของระบบ อาจยังคงเกิดขึ้นได้ มันไม่ใช่โซลูชันแบบ "ตั้งค่าแล้วไม่ต้องดูแลอีกต่อไป" ในระดับผลิตภัณฑ์เชิงพาณิชย์ที่พัฒนาเต็มที่แล้ว
บนอุปกรณ์ iOS เช่น iPhone และ iPad การสนับสนุนยังคงมีจำกัด และยังต้องมีการพัฒนาเพิ่มเติมเพื่อให้สามารถใช้งานได้อย่างแท้จริงสำหรับประชาชนทั่วไป แม้ว่าโครงการนี้จะตั้งเป้าที่จะใช้ประโยชน์จากอุปกรณ์เหล่านี้ด้วย แต่ในปัจจุบันประสบการณ์การใช้งานที่ราบรื่นส่วนใหญ่พบได้ในคอมพิวเตอร์
ปัจจัยสำคัญอีกประการหนึ่งคือ ประสิทธิภาพโดยรวมของระบบคลัสเตอร์จะขึ้นอยู่กับเครือข่ายภายในบ้านเป็นอย่างมากหากเครือข่าย Wi-Fi ของคุณแออัด เราเตอร์ล้าสมัย หรือการเชื่อมต่อช้า การกระจายโมเดลขนาดใหญ่ไปยังหลายโหนดอาจกลายเป็นปัญหาคอขวดอย่างมาก ในสภาพแวดล้อมที่จริงจัง การใช้การเชื่อมต่อแบบใช้สายคุณภาพสูง หรือในกรณีของ Mac ก็คือ Thunderbolt 5 พร้อม RDMA เป็นสิ่งที่หลีกเลี่ยงไม่ได้
นอกจากนี้ แม้ว่าการรวมอุปกรณ์ธรรมดาหลายๆ ชิ้นเข้าด้วยกันจะทำให้ได้หน่วยความจำที่น่าประทับใจก็ตาม พวกมันอาจไม่สามารถแข่งขันด้านประสิทธิภาพโดยรวมกับกลุ่ม GPU ระดับไฮเอนด์ได้เสมอไปต้องคำนึงถึงความสมดุลที่ละเอียดอ่อนระหว่างต้นทุนการประสานงาน ความหน่วงของเครือข่าย และกำลังการประมวลผลที่มีประสิทธิภาพ
กับทุกๆอย่าง, จุดเด่นของ Exo ยังคงน่าสนใจมาก: การเปลี่ยนอุปกรณ์ที่มีอยู่ให้กลายเป็นคลัสเตอร์ที่สามารถรันโมเดลต่างๆ ซึ่งก่อนหน้านี้ดูเหมือนจะเป็นทรัพยากรเฉพาะของศูนย์ข้อมูลเฉพาะทาง โดยแทบไม่มีค่าใช้จ่ายด้านฮาร์ดแวร์เลย
การติดตั้ง Exo, ข้อกำหนด และวิธีการดำเนินการ
วิธีติดตั้งและใช้งาน Exo บน macOS เป็นเรื่องปกติที่จะใช้เครื่องมือต่างๆ เช่น Homebrew สำหรับการจัดการแพ็กเกจ รวมถึง uv สำหรับการจัดการการพึ่งพาของ Python, macmon สำหรับการตรวจสอบฮาร์ดแวร์บนชิป Apple Silicon, Node.js สำหรับการสร้างแผงควบคุมบนเว็บ และ Rust (ปัจจุบันอยู่ในเวอร์ชัน nightly) สำหรับการคอมไพล์ส่วนเชื่อมต่อบางอย่าง
ขั้นตอนการทำงานทั่วไปใน macOS มีดังนี้ โคลนที่เก็บข้อมูล GitHub อย่างเป็นทางการติดตั้งส่วนประกอบที่จำเป็นและเรียกใช้คำสั่งที่เกี่ยวข้องเพื่อเริ่มต้น Exo ขั้นตอนนี้จะเปิดใช้งานทั้ง API และแดชบอร์ดบนเว็บที่สามารถเข้าถึงได้จากภายในเครื่อง ที่อยู่ดังกล่าว http://localhost:52415จากตรงนั้น คุณสามารถดูสถานะของคลัสเตอร์ โมเดล อินสแตนซ์ ฯลฯ ได้
นอกเหนือจากการดำเนินการโดย สถานีปลายทาง, Exo มีแอปพลิเคชันสำหรับ macOS โดยเฉพาะ แอปนี้ทำงานอยู่เบื้องหลัง ต้องใช้ macOS Tahoe เวอร์ชัน 26.2 หรือใหม่กว่า และเผยแพร่ในรูปแบบไฟล์ .dmg (ตัวอย่างเช่น ในชื่อ EXO-latest.dmg) ระหว่างการติดตั้ง อาจขออนุญาตแก้ไขการตั้งค่าระบบบางอย่างและเพิ่มโปรไฟล์เครือข่าย ซึ่งจำเป็นสำหรับการเปิดใช้งานคุณสมบัติขั้นสูง เช่น RDMA
ในสภาพแวดล้อมของ Linux การติดตั้งมักจะเกี่ยวข้องกับการใช้ตัวจัดการแพ็กเกจของระบบ (เช่น apt บน Debian/Ubuntu) หรือผ่าน Homebrew สำหรับ Linux หากคุณต้องการ โปรดทราบว่ายูทิลิตี้บางอย่าง เช่น macmon นั้นมีเฉพาะใน macOS และไม่สามารถใช้บน Linux ได้
ในขณะนี้ ใน Linux นั้น Exo ทำงานบน CPUในปัจจุบัน ยังไม่รองรับการ์ดเร่งความเร็ว GPU อย่างเต็มรูปแบบ ทีมพัฒนาอยู่ระหว่างดำเนินการขยายความเข้ากันได้กับแพลตฟอร์มฮาร์ดแวร์ต่างๆ ดังนั้นจึงแนะนำให้ตรวจสอบปัญหาและคำขอคุณสมบัติบน GitHub หากคุณต้องการทราบว่าอุปกรณ์ของคุณอาจได้รับการสนับสนุนในอนาคตหรือไม่
การกำหนดค่า RDMA ผ่าน Thunderbolt บน macOS
หนึ่งในคุณสมบัติใหม่ที่โดดเด่นที่สุดของ macOS เวอร์ชันล่าสุด จุดเด่นคือการเพิ่มการรองรับ RDMA โดยเฉพาะอย่างยิ่งผ่านพอร์ต Thunderbolt 5 คุณสมบัตินี้มีความสำคัญอย่างยิ่งในการลดความหน่วงระหว่างเครื่อง Mac ที่เชื่อมต่อกันทางกายภาพ ซึ่งมีประโยชน์มากเมื่อจัดจำหน่ายโมเดล LLM
RDMA สามารถใช้งานได้ตั้งแต่ macOS 26.2 เป็นต้นไป ใช้งานได้กับอุปกรณ์ที่มี Thunderbolt 5 เช่น Mac mini รุ่น M4 Pro, Mac Studio รุ่น M4 Max, MacBook Pro รุ่น M4 Max หรือ Mac Studio รุ่น M3 Ultra อย่างไรก็ตาม ในกรณีของ Mac Studio โดยเฉพาะ คุณควรหลีกเลี่ยงการใช้พอร์ต Thunderbolt 5 ที่อยู่ถัดจากพอร์ต Ethernet เนื่องจากมีข้อจำกัดบางประการสำหรับ RDMA
เพื่อเปิดใช้งาน RDMA จำเป็นต้องทำตามขั้นตอนในโหมดกู้คืนขั้นตอนพื้นฐานคือการปิดเครื่อง Mac จากนั้นเปิดเครื่องใหม่โดยกดปุ่มเปิด/ปิดค้างไว้ประมาณ 10 วินาทีจนกว่าเมนูจะปรากฏขึ้น รองเท้าเลือกตัวเลือก “Options” เพื่อเข้าสู่สภาพแวดล้อมการกู้คืน และเปิด Terminal จากเมนู Utilities
ภายในเทอร์มินัลกู้คืนนั้น คำสั่งที่ระบุไว้ในเอกสารของ Exo จะถูกดำเนินการ เพื่อเปิดใช้งาน RDMA ในระดับระบบ หลังจากกด Enter และรีสตาร์ท Mac ฟังก์ชันนี้จะเปิดใช้งาน และ Exo สามารถใช้ฟังก์ชันนี้เพื่อสร้างการเชื่อมต่อที่มีความหน่วงต่ำมากระหว่าง Mac ต่างๆ ที่เชื่อมต่อผ่าน Thunderbolt 5 ได้
จากที่นั่น, Exo จัดการส่วนที่ซับซ้อนให้การใช้ประโยชน์จาก RDMA เพื่อลดความล่าช้าในการถ่ายโอนข้อมูลระหว่างโหนด การปรับปรุงการสื่อสารภายในนี้มีความสำคัญอย่างยิ่งเมื่อทำงานกับโมเดลที่มีพารามิเตอร์หลายแสนล้านตัวซึ่งกระจายอยู่ทั่วเครื่องหลายเครื่อง
ติดต่อสื่อสารกับ Exo ผ่านทาง API และแผงควบคุมบนเว็บ
นอกเหนือจากแดชบอร์ดแบบกราฟิกที่ http://localhost:52415 แล้วExo มี REST API ที่ช่วยให้คุณจัดการวงจรชีวิตของโมเดลได้เกือบทั้งหมด ตั้งแต่การเลือกตำแหน่งที่จะวาง การสร้างอินสแตนซ์ การเปิดคำขอแชท และการปล่อยทรัพยากรเมื่อไม่จำเป็นอีกต่อไป
ขั้นตอนการทำงานโดยทั่วไปอาจเริ่มต้นด้วยการสอบถามข้อมูลจากปลายทาง /อินสแตนซ์/พรีวิวเมื่อคุณส่งพารามิเตอร์ของโมเดลที่คุณต้องการใช้งาน บริการนี้จะส่งคืนค่ากลับมา ตำแหน่งที่เหมาะสมทั้งหมดสำหรับโมเดลนั้นในคลัสเตอร์ของคุณมันจะเป็นเหมือนรายการ "แผนการใช้งาน" ที่เป็นไปได้ โดยอิงจากโครงสร้างพื้นฐานและทรัพยากรที่มีอยู่ในปัจจุบัน
อ้างอิงจากผลตอบรับจากตัวอย่างที่ให้ไว้ คุณเลือกรูปแบบที่เหมาะสมกับคุณที่สุดได้เลย (ตัวอย่างเช่น ตัวเลือกแรกในรายการ ซึ่งคุณสามารถเลือกได้ด้วยเครื่องมืออย่าง jq จากเทอร์มินัล) และใช้ตัวเลือกนั้นในการส่งคำขอ POST ไปยังปลายทาง /ตัวอย่างข้อมูลที่ส่งสำหรับคำขอนี้ต้องเป็นไปตามประเภทที่กำหนดไว้ใน CreateInstanceParams รวมถึงพารามิเตอร์ต่างๆ เช่น รุ่น การกำหนดค่าฮาร์ดแวร์ และโหนดที่กำหนด
เมื่อสร้างอินสแตนซ์เสร็จแล้ว คุณสามารถโต้ตอบกับมันได้โดยใช้เอนด์พอยต์ที่เข้ากันได้กับ OpenAI APIตัวอย่างเช่น /v1/แชท/การเติมคำอัตโนมัติโครงสร้างของคำขอ JSON นั้นแทบจะเหมือนกับที่ใช้กับ API ของ ChatGPT ทำให้การปรับแอปพลิเคชันที่มีอยู่ให้ชี้ไปยังคลัสเตอร์ Exo ของคุณแทนที่จะเป็นคลาวด์นั้นทำได้ง่ายมาก
เมื่อคุณไม่ต้องการใช้รุ่นใดรุ่นหนึ่งอีกต่อไป คุณสามารถปล่อยอินสแตนซ์ได้โดยส่งคำขอ DELETE พร้อมระบุ ID ของอินสแตนซ์ซึ่งคุณสามารถค้นหาได้โดยการสอบถามปลายทางต่างๆ เช่น /สถานะ o /ตัวอย่างในทางกลับกัน การมีสัญญาณที่รวดเร็วและเข้าใจง่ายติดตัวไว้ก็เป็นประโยชน์ เช่น /โมเดลซึ่งจะแสดงรายการโมเดลทั้งหมดที่มีอยู่ในเครื่อง หรือคำสั่ง /state เอง ซึ่งจะแสดงรายละเอียดสถานะการใช้งานในปัจจุบัน
สถานะโครงการและชุมชนผู้พัฒนา
Exo ถูกโฮสต์อยู่บน GitHub ภายใต้ repository ชื่อ exo-explore/exo ซอฟต์แวร์นี้ได้รับการพัฒนาอย่างเปิดกว้าง โดยได้รับการสนับสนุนจากทั้งทีมหลักของ Exo Labs และชุมชน ไฟล์ CONTRIBUTING.md ระบุแนวทางสำหรับการมีส่วนร่วม การส่งคำขอแก้ไข (pull request) การรายงานข้อบกพร่อง และการเสนอคุณสมบัติใหม่
ที่กำหนดว่า นี่คือโครงการที่มีชีวิตชีวาและพัฒนาอย่างต่อเนื่องเป็นเรื่องปกติที่จะมีการออกเวอร์ชันใหม่ การปรับปรุงความเข้ากันได้กับฮาร์ดแวร์และแพลตฟอร์มรุ่นต่างๆ และการเปลี่ยนแปลงวิธีการกำหนดค่าส่วนประกอบบางอย่าง ดังนั้นจึงควรตรวจสอบเอกสารและแจ้งปัญหาอย่างสม่ำเสมอ
ในส่วนของความเข้ากันได้กับตัวเร่งความเร็ว ปัจจุบัน macOS ได้รับการสนับสนุนที่ก้าวหน้ายิ่งขึ้นเนื่องจากการใช้ GPU และ MLXขณะที่ทำงานบน Linux โปรแกรมนี้ทำงานบน CPU ทีมงานได้สนับสนุนให้ผู้ใช้ที่สนใจเห็นการรองรับฮาร์ดแวร์ประเภทใหม่ๆ เปิดหรือสนับสนุนคำขอที่มีอยู่แล้วด้วยการแสดงความคิดเห็นบน GitHub เพื่อให้พวกเขาสามารถจัดลำดับความสำคัญว่าแพลตฟอร์มใดมีความต้องการมากที่สุด
จากมุมมองทางเศรษฐกิจ Exo เป็นซอฟต์แวร์โอเพนซอร์สและใช้งานได้ฟรีโดยสมบูรณ์ซอฟต์แวร์นี้ไม่มีค่าลิขสิทธิ์ใดๆ จึงเหมาะอย่างยิ่งสำหรับโครงการส่วนตัว การศึกษา หรือธุรกิจขนาดเล็กที่ต้องการทดลองใช้ AI อย่างจริงจังโดยไม่ต้องใช้งบประมาณมาก
Exo กำลังสร้างชื่อเสียงให้ตัวเองในฐานะผู้เล่นสำคัญในการทำให้ปัญญาประดิษฐ์ขั้นสูงเข้าถึงได้ง่ายขึ้นสำหรับทุกคนสิ่งนี้ช่วยให้ทุกคนที่มีอุปกรณ์หลายเครื่องที่บ้านหรือที่ทำงานสามารถตั้งค่าคลัสเตอร์โมเดลภาษาของตนเองได้ แม้ว่ามันจะยังต้องพัฒนาอีกมาก แต่ความเป็นไปได้ที่เปิดกว้างนั้นมีมากมายสำหรับระบบบ้านอัจฉริยะ ผู้ช่วยส่วนตัว การวิเคราะห์ข้อมูล และสภาพแวดล้อมการทดสอบสำหรับโมเดลสมัยใหม่
นักเขียนผู้หลงใหลเกี่ยวกับโลกแห่งไบต์และเทคโนโลยีโดยทั่วไป ฉันชอบแบ่งปันความรู้ผ่านการเขียน และนั่นคือสิ่งที่ฉันจะทำในบล็อกนี้ เพื่อแสดงให้คุณเห็นสิ่งที่น่าสนใจที่สุดเกี่ยวกับอุปกรณ์ ซอฟต์แวร์ ฮาร์ดแวร์ แนวโน้มทางเทคโนโลยี และอื่นๆ เป้าหมายของฉันคือการช่วยคุณนำทางโลกดิจิทัลด้วยวิธีที่เรียบง่ายและสนุกสนาน