Hướng dẫn Gemma 4
DiffusionGemma có hoạt động với llama.cpp không? Tình trạng thực tế

Câu trả lời ngắn: llama.cpp tiêu chuẩn không thể chạy DiffusionGemma. Hỗ trợ tồn tại trong pull request #24423, chưa được merge tính đến thời điểm viết bài này. PR này thêm một file nhị phân chuyên dụng mới tên llama-diffusion-cli — chạy llama-cli tiêu chuẩn với GGUF của DiffusionGemma sẽ thất bại với lỗi: error loading model: unknown model architecture: 'diffusion-gemma'.
Tại sao DiffusionGemma cần file nhị phân riêng
DiffusionGemma không chỉ là checkpoint Gemma 4 đổi tên. Nó sử dụng khuếch tán văn bản rời rạc: thay vì dự đoán từng token từ trái sang phải, nó bắt đầu với canvas 256 token được mask hoàn toàn và lặp đi lặp lại denoising toàn bộ khối song song. Điều này đòi hỏi attention hai chiều trong quá trình sinh, hành vi sampling tùy chỉnh ở mỗi bước denoising, và một model runner hoàn toàn khác — không có cái nào tồn tại trong đường dẫn tự hồi quy tiêu chuẩn của llama.cpp.
PR #24423 triển khai điều này dưới dạng file nhị phân riêng biệt (llama-diffusion-cli) thay vì vá llama-cli hiện có. Cho đến khi PR này được merge vào main, không có bản phát hành llama.cpp chính thức nào sẽ chứa nó.
PR #24423 là gì và cách sử dụng
PR #24423 được tác giả là danielhanchen (người sáng lập Unsloth) viết và thêm kiến trúc diffusion-gemma vào codebase llama.cpp. PR đã hoạt động từ khi DiffusionGemma ra mắt vào ngày 10 tháng 6 năm 2026, và các thành viên cộng đồng đã phát hành các file nhị phân prebuilt không chính thức cho Linux/WSL2 CUDA và Windows CPU trong khi PR đang chờ.
Để tự build từ branch PR:
# Clone llama.cpp
git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp
# Fetch và checkout branch PR
git fetch origin pull/24423/head:diffusion-gemma-pr
git checkout diffusion-gemma-pr
# Build (ví dụ CUDA)
cmake -B build -DGGML_CUDA=ON
cmake --build build --config Release -j
# File nhị phân mới sẽ nằm ở:
./build/bin/llama-diffusion-cli
Với build chỉ CPU, bỏ flag -DGGML_CUDA=ON.
Chạy model
Tải GGUF DiffusionGemma đáng tin cậy (Unsloth phát hành phiên bản được sử dụng rộng rãi nhất tại unsloth/diffusiongemma-26B-A4B-it-GGUF trên Hugging Face), sau đó:
./build/bin/llama-diffusion-cli \
-m ./diffusiongemma-26B-A4B-it-Q4_K_M.gguf \
-p "Giải thích sự khác biệt giữa sinh văn bản khuếch tán và tự hồi quy." \
--diffusion-steps 128
Tham số --diffusion-steps kiểm soát số lần denoising pass mà model thực hiện. Nhiều bước hơn = chất lượng cao hơn, sinh chậm hơn. Bắt đầu với 128 và điều chỉnh.
Yêu cầu bộ nhớ
Model dựa trên kiến trúc Gemma 4 26B A4B MoE, vì vậy yêu cầu bộ nhớ giống nhau:
- Q4_K_M: khoảng 14,4–18 GB (đo thực tế của Unsloth là 18 GB)
- Q8: khoảng 28 GB
- BF16: khoảng 52–58 GB
Model chỉ kích hoạt ~3,8B tham số mỗi lần forward pass mặc dù có 26B tham số tổng cộng được tải vào bộ nhớ.
Tốc độ: ý nghĩa thực sự của các con số
Google tuyên bố tốc độ sinh nhanh hơn tới 4 lần so với Gemma 4 tiêu chuẩn và hơn 1.000 token/giây trên một H100 đơn lẻ. Những con số này là thực tế trên phần cứng được mô tả. Điều chúng không nói là:
Lợi thế tốc độ có điều kiện. Việc sinh song song của DiffusionGemma thay đổi profile tính toán từ bị giới hạn bởi băng thông bộ nhớ (đặc trưng của model tự hồi quy) sang bị giới hạn bởi khả năng tính toán (đặc trưng của model khuếch tán). Trên GPU NVIDIA cao cấp với tài nguyên tính toán dồi dào — RTX 3090, 4090, A100, H100 — điều này có lợi cho DiffusionGemma. Trên GPU thấp hơn (RTX 3060, 4060) và Apple Silicon, khoảng cách tính toán đảo ngược và lợi thế tốc độ có thể biến mất hoàn toàn. Kiểm tra benchmark trên phần cứng của bạn trước khi kỳ vọng những con số headline.
Chất lượng thấp hơn. Google nêu rõ rằng chất lượng đầu ra tổng thể của DiffusionGemma thấp hơn Gemma 4 tiêu chuẩn. Đây không phải là hạn chế tạm thời — đây là sự đánh đổi cơ bản giữa tốc độ và chất lượng của phương pháp khuếch tán.
Bảng so sánh runtime
| Runtime | Trạng thái DiffusionGemma (tháng 6/2026) |
|---|---|
| llama.cpp (main) | Không hỗ trợ. unknown model architecture: 'diffusion-gemma' |
| llama.cpp (PR #24423) | Hỗ trợ qua llama-diffusion-cli. Phải build từ branch PR. |
| Unsloth Studio | Hỗ trợ từ v0.1.463-beta / 2026.6.6. Con đường cục bộ dễ nhất. |
| Ollama | Không hỗ trợ. Issue #16664 đang mở. |
| LM Studio | Không hỗ trợ. Runtime đi kèm không có PR #24423. |
| vLLM | Hỗ trợ đầy đủ từ 10/6/2026. Tốt nhất để serving. |
| HF Transformers | Hỗ trợ qua bản phát hành chính thức của Google. |
Nên dùng con đường nào
Muốn GUI cục bộ với thiết lập tối thiểu: Dùng Unsloth Studio. Hỗ trợ DiffusionGemma natively từ bản phát hành 12 tháng 6 và tự động xử lý các tham số suy luận.
Quen với dòng lệnh: Build từ PR #24423 và dùng llama-diffusion-cli trực tiếp. Cho phép kiểm soát tốt nhất các tham số khuếch tán.
Môi trường Python: Dùng HuggingFace Transformers với trọng số chính thức google/diffusiongemma-26B-A4B-it.
Cần phục vụ nhiều người dùng: vLLM có hỗ trợ natively là engine suy luận đầu tiên tích hợp đầy đủ DiffusionGemma.
Dùng Ollama hoặc LM Studio tiêu chuẩn: Hãy đợi. Cả hai phụ thuộc vào cùng PR cơ bản và không có cách giải quyết nào mà không phải build binary tùy chỉnh.
Câu hỏi thường gặp
Tôi có thể cập nhật llama.cpp lên phiên bản mới nhất để có hỗ trợ DiffusionGemma không?
Không. PR #24423 chưa được merge vào main. Cập nhật từ repo chính thức sẽ không thêm hỗ trợ kiến trúc diffusion-gemma.
Có file nhị phân llama-diffusion-cli prebuilt để tải về không?
Có các prebuilt không chính thức của cộng đồng cho Linux/WSL2 CUDA (sm_86, RTX série 30) và Windows CPU. Tìm kiếm "llama-diffusion-cli-prebuilt" trên GitHub. Đây không phải bản phát hành chính thức của Anthropic hay ggml-org.
DiffusionGemma có tạo ra đầu ra tốt hơn Gemma 4 thông thường không?
Không. Google nêu rõ chất lượng đầu ra thấp hơn Gemma 4 tiêu chuẩn. Lợi thế là tốc độ, đặc biệt cho các workflow code infilling và chỉnh sửa nội tuyến khi chấp nhận sự đánh đổi chất lượng.
Tại sao Ollama thất bại dù dựa trên llama.cpp?
Ollama đi kèm với phiên bản llama.cpp riêng của mình, thường đi sau upstream. Dù cập nhật Ollama, runtime đi kèm không chứa PR #24423.
Hướng dẫn liên quan:
Hướng dẫn liên quan
Tiếp tục khám phá cụm nội dung Gemma 4 với bài hướng dẫn tiếp theo phù hợp với quyết định hiện tại của bạn.

Sửa lỗi "unknown model architecture" cho gemma4 và diffusion-gemma trong llama.cpp
Lỗi kiến trúc gemma4 và diffusion-gemma có nguyên nhân khác nhau và cách sửa khác nhau. Áp dụng cùng một cách sửa cho cả hai sẽ lãng phí thời gian.

DiffusionGemma có hoạt động trong LM Studio không? Tình trạng hiện tại (tháng 6/2026)
Cả engine llama.cpp và MLX của LM Studio đều thất bại khi tải DiffusionGemma vào tháng 6/2026. Giải thích ý nghĩa các lỗi, nơi chúng được theo dõi, và công cụ nào thực sự hoạt động.

llama.cpp có hỗ trợ Gemma 4 không? Trạng thái GGUF, các bản sửa lỗi và những gì hoạt động
Một câu trả lời thực tế cho câu hỏi liệu llama.cpp có hỗ trợ Gemma 4 hay không, kèm theo các liên kết GGUF chính thức, trạng thái hỗ trợ hiện tại và ý nghĩa thực sự của việc 'được hỗ trợ'.
Vẫn chưa biết nên đọc gì tiếp theo?
Quay lại trung tâm hướng dẫn để duyệt các bài so sánh model, hướng dẫn cài đặt và trang lập kế hoạch phần cứng.
