Colibri: chạy MoE lớn trên máy cá nhân bằng cách stream expert từ ổ đĩa
GLM-5.2 có 744B tham số nhưng chỉ dùng khoảng 40B cho mỗi token. Colibri tận dụng đặc tính MoE này: giữ phần thường trú trong RAM, đọc expert từ ổ đĩa khi cần và có thể chạy không cần GPU.
GLM-5.2 có 744B tham số, nhưng theo README của Colibri, mỗi token chỉ dùng khoảng 40B tham số. Colibri khai thác chính đặc điểm này: thay vì cố nhét toàn bộ model vào RAM hay VRAM, nó giữ phần cần thường trực trong bộ nhớ và đọc các expert được chọn từ ổ đĩa khi cần.
Đây là dự án đang xuất hiện trên GitHub Trending, với dữ liệu đầu vào ghi nhận 47.206 sao. Điểm đáng chú ý không phải là biến model khổng lồ thành model nhỏ, mà là thay đổi cách đặt trọng số giữa RAM, GPU và ổ đĩa.
Colibri hoạt động thế nào?
Colibri là engine viết bằng C, hướng đến việc chạy các model mở rất lớn trên máy sẵn có. GPU không phải điều kiện bắt buộc.
Trọng tâm của dự án là model Mixture-of-Experts (MoE). Với kiến trúc này, router chỉ chọn một phần expert phù hợp cho từng token thay vì kích hoạt toàn bộ tham số.
README dùng GLM-5.2 để minh họa:
Tổng cộng 744B tham số.
Khoảng 40B tham số được dùng cho mỗi token.
Khoảng 11 GB routed expert thay đổi giữa các token.
Colibri phân bổ trọng số theo cách sau:
Phần dense như attention, shared expert và embedding được giữ trong RAM.
Routed expert nằm trên ổ đĩa.
Engine đọc expert thông qua cache khi router yêu cầu.
Nếu có GPU, GPU có thể giữ dense layer và các expert được dùng nhiều nhất.
Vì vậy, trải nghiệm thực tế vẫn phụ thuộc vào RAM, dung lượng ổ đĩa, tốc độ lưu trữ, cache và backend đang dùng.
Model và backend được README nêu hỗ trợ
README liệt kê nhiều engine cho model ngôn ngữ, cùng một engine tạo ảnh và các model cho tác vụ quyết định. Danh sách có thể quét nhanh như sau:
| Nhóm | Model hoặc engine được nêu |
|---|---|
| Model ngôn ngữ | GLM-5.2/5.3, GLM-5.3-Flash, Inkling, Kimi K3, DeepSeek V4 Flash, DeepSeek V4.1 Flash, MiMo-V2.6 Flash/Pro, Qwen3.8-Flash-Next, Qwen3.6, OLMoE |
| Model chạy trên một số engine trên | Mistral-Large-4; Qwen3-Coder; Qwen3.8-27B dense; Flint; Muse Spark Open; LFM3-VL |
| Tạo ảnh | Qwen-Image-2.1 |
| Tác vụ quyết định | Laya, GLiNER2.5-Decide, Clef |
Khả năng đọc trực tiếp các file GGUF được README nói riêng cho các model ngôn ngữ. Những model này có thể chạy trên:
CPU
GPU qua Vulkan
GPU NVIDIA qua CUDA
Điều kiện tối thiểu để thử
Dự án nêu các yêu cầu khởi đầu:
8 GB RAM tối thiểu; 16 GB trở lên sẽ tốt hơn.
22 GB dung lượng trống cho model nhỏ nhất.
Kết nối Internet để tải model.
GPU là tùy chọn.
Đây chỉ là ngưỡng bắt đầu. Trình cài đặt sẽ xét phần model phải nằm thường trực trong RAM, cache expert tối thiểu và dung lượng tải về còn trống để đề xuất lựa chọn phù hợp.
Cài nhanh trên Windows, Linux và macOS
Windows
Trên GitHub, chọn Code → Download ZIP, giải nén rồi chạy:
text
START-HERE.bat
Theo README, nếu thiếu Python, script sẽ đề nghị cài đặt.
Linux
Với Ubuntu hoặc Debian:
bash
sudo apt install git python3 build-essential
git clone https://github.com/JustVugg/colibri
cd colibri
./start-here.sh
macOS
Với Homebrew:
bash
xcode-select --install
brew install libomp git python
git clone https://github.com/JustVugg/colibri
cd colibri
./start-here.sh
Ở lần đầu chạy, Colibri hỏi model muốn dùng. Bạn có thể nhấn Enter để nhận đề xuất của trình cài đặt.
Trình cài đặt tự động làm gì?
Theo README, quy trình thiết lập sẽ:
Kiểm tra RAM, dung lượng ổ đĩa, CPU và GPU.
Đề xuất model phù hợp với máy.
Build engine nếu có compiler, hoặc tải bản dựng sẵn.
Tải model với tiến trình hiển thị và khả năng tiếp tục khi bị gián đoạn.
Khởi động Colibri, mở dashboard trong trình duyệt và in các địa chỉ cục bộ cho ứng dụng khác.
Ví dụ đầu ra được README hiển thị:
text
Starting colibri
Browser: http://127.0.0.1:8000/
OpenAI base URL: http://127.0.0.1:8000/v1
Anthropic base URL: http://127.0.0.1:8000
stop: press Ctrl+C here (or close this window)
Dự án cung cấp base URL theo kiểu OpenAI và Anthropic. Việc một ứng dụng cụ thể dùng được đến đâu vẫn phụ thuộc vào yêu cầu tương thích của ứng dụng đó.
Các tùy chọn đáng biết
Liệt kê model có thể dùng trên máy hiện tại và lý do model không phù hợp:
bash
./start-here.sh --list
Chọn một model cụ thể:
bash
./start-here.sh --model ID
Chạy không cần trả lời câu hỏi, nhận đề xuất mặc định:
bash
./start-here.sh --yes
Chuyển nơi lưu model sang ổ khác:
bash
./start-here.sh --dir DIR
Dùng model đã tải sẵn:
bash
./start-here.sh --model-dir DIR
Chọn lại model:
bash
./start-here.sh --reconfigure
Buộc dùng CPU:
bash
./start-here.sh --no-gpu
Hoặc tự chọn backend:
bash
./start-here.sh --backend vulkan
./start-here.sh --backend cuda
Sau lần thiết lập đầu, chạy lại START-HERE.bat hoặc ./start-here.sh để khởi động. Nếu tải model bị dừng, hãy chạy lại cùng lệnh: README cho biết quá trình tải tiếp tục từ số byte đã có trên ổ đĩa.
Kiểm tra trạng thái và dừng dịch vụ trên Linux hoặc macOS:
bash
c/coli status
c/coli stop
Trên Windows:
text
c\coli.cmd status
c\coli.cmd stop
Khi gặp sự cố
Nếu server chạy nền, có thể xem các dòng log gần đây bằng:
bash
c/coli logs -n 50
Để xem log của quá trình cài đặt:
bash
c/coli logs --install
README cũng lưu ý: trên WSL, không nên đặt thư mục model trong /mnt/c. Thư mục Linux mặc định như ~/colibri-models được nêu là nhanh hơn đáng kể.
Nếu ổ mặc định không đủ dung lượng, dùng --dir để chuyển model sang ổ khác. Nếu build CUDA không phù hợp với GPU hoặc CUDA Toolkit hiện có, trình cài đặt có thể chuyển sang Vulkan, rồi CPU; người dùng cũng có thể ép backend bằng tùy chọn tương ứng.
Điều cần cân nhắc trước khi kỳ vọng về tốc độ
Ổ đĩa là một phần của đường đi suy luận: Colibri đọc expert từ đó khi cần. Vì vậy, chạy được không đồng nghĩa với tốc độ sẽ giống nhau giữa mọi máy.
GPU cũng không mặc định luôn tốt hơn. README cho biết với GPU tích hợp dùng chung RAM với CPU, dự án chỉ build GPU cho một số model đã được đo là nhanh hơn, gồm Qwen3.6, Qwen3-Coder và Qwen3.8-Flash-Next.
Ví dụ terminal trong README hiển thị GLM-5.2 sẵn sàng sau 32 giây với 9,9 GB resident memory. Đây là ví dụ minh họa của dự án, không phải benchmark áp dụng cho mọi phần cứng, model hay backend.
Colibri phù hợp với ai?
Colibri đáng thử nếu bạn muốn hiểu thực tế một model MoE lớn được vận hành trên máy cá nhân như thế nào: không chỉ nhìn vào tổng số tham số, mà còn cân nhắc phần thường trú trong RAM, cache expert, tốc độ ổ đĩa và backend.
Cách bắt đầu đơn giản là chạy trình cài đặt tự động, nhận model được đề xuất, sau đó thử bằng các tác vụ bạn thực sự quan tâm. Với MoE, câu hỏi hữu ích không chỉ là “model lớn bao nhiêu”, mà còn là “mỗi token cần phần nào của model, và máy của mình đặt phần đó ở đâu?”.