โครงการโอเพนซอร์ส llama.cpp ได้ขยายขีดความสามารถอย่างมีนัยสำคัญด้วยการเพิ่มการรองรับวิชันแบบมัลติโมดัลอย่างครอบคลุมให้กับทั้งเซิร์ฟเวอร์และเครื่องมือคอมมานด์ไลน์อินเตอร์เฟซ การผสานรวมนี้ช่วยให้ผู้ใช้สามารถรันโมเดลภาษา-วิชันบนฮาร์ดแวร์ของตัวเองได้ ทำให้สามารถอธิบายและวิเคราะห์ภาพได้โดยไม่ต้องพึ่งพาบริการคลาวด์
การใช้งานมัลติโมดัลแบบรวม
การพัฒนาใหม่นี้ได้รวมฟังก์ชันวิชันที่แยกกันก่อนหน้านี้ให้อยู่ภายใต้กรอบการทำงานเดียวกัน ตามการสนทนาในชุมชน นักพัฒนาที่ชื่อ ngxson มีบทบาทสำคัญในความพยายามนี้ โดยเริ่มจากการเพิ่มการรองรับโมเดลวิชันต่างๆ ด้วยโปรแกรม CLI แยกกัน จากนั้นรวมเข้าด้วยกันภายใต้เครื่องมือคอมมานด์ไลน์เดียวที่เรียกว่า llama-mtmd-cli และในที่สุดก็นำความสามารถนี้มาสู่ส่วนเซิร์ฟเวอร์ การรองรับมัลติโมดัลทำงานผ่านไลบรารีที่เรียกว่า libmtmd
ซึ่งจัดการการประมวลผลก่อนแปลงภาพเป็นเอมเบดดิ้งแยกต่างหากจากโมเดลภาษาหลัก
แนวทางสถาปัตยกรรมนี้สะท้อนถึงวิธีที่การประมวลผลข้อความพัฒนาในระบบนิเวศทรานส์ฟอร์มเมอร์ โดยมีไลบรารีเฉพาะทางจัดการการแปลงเป็นโทเค็นแยกต่างหากจากโมเดลหลัก การแยกส่วนนี้ช่วยให้สามารถปรับแต่งประสิทธิภาพเฉพาะสำหรับการประมวลผลภาพ ในขณะที่ยังคงความเข้ากันได้กับกรอบการทำงาน llama.cpp โดยรวม
โมเดลที่รองรับและประสิทธิภาพ
การพัฒนานี้รองรับโมเดลมัลติโมดัลที่น่าประทับใจหลายตัว รวมถึง Gemma 3 (ในรุ่น 4B, 12B และ 27B), โมเดล SmolVLM, Pixtral 12B, Qwen2 VL, Qwen2.5 VL และ Mistral Small 3.1 ผู้ใช้รายงานประสบการณ์ที่ดีเป็นพิเศษกับโมเดล Gemma 3 4B ซึ่งแม้จะมีขนาดค่อนข้างเล็กแต่ให้คำอธิบายภาพที่น่าประทับใจ
รายงานประสิทธิภาพจากชุมชนระบุว่าบน M1 MacBook Pro ที่มี RAM 64GB โมเดล Gemma 3 4B ประมวลผลพรอมต์ที่ประมาณ 25 โทเค็นต่อวินาที และสร้างโทเค็นที่ 63 โทเค็นต่อวินาที การประมวลผลภาพใช้เวลาประมาณ 15 วินาทีไม่ว่าภาพจะมีขนาดเท่าใด ระดับประสิทธิภาพนี้ทำให้โมเดลเหล่านี้สามารถใช้งานได้จริงสำหรับแอปพลิเคชันในโลกแห่งความเป็นจริงบนฮาร์ดแวร์ระดับผู้บริโภค
โมเดลมัลติโมดัลที่รองรับ
-
Gemma 3 Series
- ggml-org/gemma-3-4b-it-GGUF
- ggml-org/gemma-3-12b-it-GGUF
- ggml-org/gemma-3-27b-it-GGUF
-
SmolVLM Series
- ggml-org/SmolVLM-Instruct-GGUF
- ggml-org/SmolVLM-256M-Instruct-GGUF
- ggml-org/SmolVLM-500M-Instruct-GGUF
- ggml-org/SmolVLM2-2.2B-Instruct-GGUF
- ggml-org/SmolVLM2-256M-Video-Instruct-GGUF
- ggml-org/SmolVLM2-500M-Video-Instruct-GGUF
-
Pixtral
- ggml-org/pixtral-12b-GGUF
-
Qwen 2 VL
- ggml-org/Qwen2-VL-2B-Instruct-GGUF
- ggml-org/Qwen2-VL-7B-Instruct-GGUF
-
Qwen 2.5 VL
- ggml-org/Qwen2.5-VL-3B-Instruct-GGUF
- ggml-org/Qwen2.5-VL-7B-Instruct-GGUF
- ggml-org/Qwen2.5-VL-32B-Instruct-GGUF
- ggml-org/Qwen2.5-VL-72B-Instruct-GGUF
-
Mistral Small
- ggml-org/Mistral-Small-3.1-24B-Instruct-2503-GGUF
การประยุกต์ใช้งานจริง
สมาชิกในชุมชนได้เริ่มนำความสามารถเหล่านี้ไปใช้งานจริงแล้ว ผู้ใช้รายหนึ่งอธิบายถึงการสร้างระบบเพื่อสร้างคำสำคัญและคำอธิบายสำหรับภาพถ่ายวันหยุด โดยสังเกตว่าโมเดล Gemma 3 4B สามารถดึงข้อมูลที่มีความหมายรวมถึงการทำ OCR (การรู้จำอักขระด้วยแสง) พื้นฐานจากภาพที่มีข้อความและระบุข้อมูลตำแหน่งตามบริบทได้
ชุดโมเดล SmolVLM ได้รับการเน้นย้ำว่าเหมาะสำหรับแอปพลิเคชันแบบเรียลไทม์เช่นการเฝ้าระวังวิดีโอภายในบ้านเนื่องจากมีขนาดเล็กและเวลาตอบสนองที่รวดเร็ว โมเดลเหล่านี้มีขนาดตั้งแต่เพียง 256MB ไปจนถึง 2.2GB ทำให้สามารถเข้าถึงได้แม้บนอุปกรณ์ที่มีทรัพยากรจำกัด
ประสิทธิภาพการทำงาน (Gemma 3 4B บน M1 MacBook Pro 64GB)
- การประมวลผลคำสั่ง: 25 โทเค็นต่อวินาที
- การสร้างโทเค็น: 63 โทเค็นต่อวินาที
- เวลาในการประมวลผลรูปภาพ: ประมาณ 15 วินาทีต่อรูป (ไม่ขึ้นกับขนาดรูปภาพ)
การติดตั้งและการใช้งาน
การเริ่มต้นใช้งานความสามารถมัลติโมดัลนั้นไม่ซับซ้อน ผู้ใช้สามารถดาวน์โหลดไบนารีที่คอมไพล์ไว้แล้วจากหน้า GitHub releases ของ llama.cpp หรือติดตั้งผ่านตัวจัดการแพ็คเกจเช่น Homebrew เครื่องมือสามารถรันด้วยคำสั่งง่ายๆ ที่ระบุโมเดลที่จะใช้ พร้อมตัวเลือกในการควบคุมการโอนงานไปยัง GPU เพื่อปรับปรุงประสิทธิภาพ
สำหรับผู้ที่ใช้ macOS ที่ใช้ Homebrew แพ็คเกจจะได้รับการอัปเดตเพื่อรวมความสามารถใหม่เหล่านี้ ช่วยให้ผู้ใช้สามารถรัน brew upgrade llama.cpp
เพื่อรับฟีเจอร์ล่าสุดได้อย่างง่ายดาย การพัฒนานี้ใช้ประโยชน์จากการเร่งความเร็ว GPU โดยอัตโนมัติเมื่อมี โดยผู้ใช้ Metal backend จะได้รับประโยชน์จากการโอนเลเยอร์โดยอัตโนมัติ
การพัฒนานี้เป็นก้าวสำคัญสำหรับความสามารถของ AI ที่ทำงานบนอุปกรณ์ปลายทาง นำโมเดลภาษา-วิชันที่ทรงพลังมาสู่อุปกรณ์ท้องถิ่นโดยไม่จำเป็นต้องเชื่อมต่อกับคลาวด์หรือบริการสมัครสมาชิก เมื่อเครื่องมือเหล่านี้ยังคงพัฒนาต่อไป เราคาดว่าจะเห็นแอปพลิเคชันที่ใช้ประโยชน์จาก AI แบบมัลติโมดัลสำหรับกรณีการใช้งานส่วนตัวและมืออาชีพเพิ่มมากขึ้น
อ้างอิง: Multimodal