5 điểm bởi darjeeling 2 giờ trước | 2 bình luận | Chia sẻ qua WhatsApp

Google đã gỡ tính năng MTP khỏi bản phát hành công khai của Gemma 4 dù mô hình này được huấn luyện với MTP, rồi chỉ bắt đầu hỗ trợ muộn màng dưới dạng mô hình phụ trợ bên ngoài sau khi bị cộng đồng phát hiện thông qua reverse engineering.

Trong lúc phân tích các tệp .litertlm (dựa trên TFLite) do Google phát hành cho thiết bị di động/edge, các nhà phát triển mã nguồn mở đã phát hiện một sự thật gây sốc. Kiến trúc MTP (Multi-Token Prediction, dự đoán đa token) vốn không tồn tại trong trọng số mô hình tiêu chuẩn công khai trên HuggingFace lại chỉ xuất hiện trong các tệp biên dịch dành cho edge.

Khi vấn đề này được nêu ra công khai, phía Google đã thừa nhận và trả lời như sau:

> "Các đầu dự đoán liên quan đến MTP đã được cố ý loại khỏi mô hình công khai để đảm bảo tương thích với API HuggingFace Transformers. Chúng được giữ lại trong runtime LiteRT để cải thiện hiệu năng on-device."

MTP là gì

LLM thông thường tạo token tuần tự từng cái một. MTP là kỹ thuật dự đoán nhiều token cùng lúc trong một forward pass; khi kết hợp với speculative decoding, nó có thể tăng mạnh tốc độ suy luận mà không làm thay đổi chất lượng đầu ra. Về lý thuyết, đây là một tối ưu hóa không mất mát (lossless).

Nỗ lực reverse engineering của cộng đồng

Người đầu tiên phát hiện đã trích xuất thành công nhiều tệp .tflite từ tệp .litertlm, rồi công bố các tệp đã trích xuất cùng quy trình tái hiện lên HuggingFace và kêu gọi sự hợp tác từ những người có khả năng C++. Sau đó, các thành viên đóng góp trong cộng đồng đã bắt tay vào reverse engineering một cách bài bản.

Khó khăn kỹ thuật: cấu trúc kernel TFLite cực kỳ khó chịu. Vector attention rộng 1024 được lượng tử hóa sang INT8 → nhân với trọng số INT8 → lượng tử hóa lại kết quả → rồi lại giải lượng tử hóa.

Kết quả: sau vài ngày làm việc tập trung, họ đã tái dựng thành công các thành phần sau:

  • Cấu trúc GQA(Grouped-Query Attention) và ánh xạ KV cache bên ngoài
  • Cơ chế sliding local window
  • Đường đi lượng tử hóa của pre_project / q_proj / MLP / o_proj / post_project
  • Hoạt động RoPE từng phần
  • đạt parity TFLite end-to-end với 20/20 top-1 match

Giấy phép là Apache 2.0 nên không có vấn đề pháp lý.

Hiệu năng thực tế: nhanh đến mức nào

Kết quả đo thực tế của cộng đồng (trên Strix Halo):

Tác vụ Trước đây Sau khi áp dụng MTP
Sinh mã 8 tps 25 tps (khoảng 3x)
Viết nội dung thông thường 7~8 tps 11~14 tps

So với speculative decoding trên các dòng LLaMA/Qwen3 hiện có thường chỉ đạt khoảng 1.5~1.7x, tối đa 2x, thì mức 3x trong tác vụ code là con số rất khác thường. Phân tích cho rằng do đặc tính sinh mã có nhiều boilerplate lặp lại nên tỷ lệ chấp nhận draft token cao.

Phản ứng và nghi vấn từ cộng đồng

Chỉ trích chủ yếu đổ dồn theo hai hướng.

① Chỉ trích vì không tài liệu hóa (Undocumented): Google đã huấn luyện bằng MTP nhưng cố ý loại khỏi bản phát hành công khai mà không hề nhắc đến.

② Nghi vấn động cơ thương mại: có ý kiến cho rằng "nếu mô hình mã nguồn mở 31B chạy cục bộ trở nên quá nhanh thì sẽ đe dọa sức cạnh tranh của API thương mại của họ (như Flash Lite), nên họ cố tình nerf nó". Mô hình 122B từng bị rò rỉ rồi xóa cũng được nhắc tới trong cùng ngữ cảnh.

Lựa chọn cấu trúc của Google

Kênh phân phối Có MTP hay không
Trọng số công khai trên HuggingFace ❌ cố ý loại bỏ
LiteRT (edge/di động) ✅ tích hợp sẵn
gemma4_assistant (mới ngày 5/5) ✅ hỗ trợ vòng qua mô hình phụ trợ bên ngoài

Phản ứng chính thức muộn màng của Google (ngày 5~6 tháng 5)

Khi sức ép từ cộng đồng gia tăng, ngày 5 tháng 5 Google đã phát hành riêng mô hình phụ trợ gemma4_assistant trên HuggingFace và công bố MTP drafter cho Gemma 4 qua blog chính thức. Đây là cách hỗ trợ vòng bằng việc tách một tính năng vốn nên nằm bên trong mô hình thành mô hình bên ngoài.

  • Tốc độ: tăng tối đa 3 lần tốc độ suy luận mà không giảm chất lượng
  • Mô hình assistant: drafter hạng nhẹ cỡ khoảng 500M tham số
  • Cách dùng: chỉ cần truyền qua đối số assistant_model= của hàm generate() là chạy, không cần tự triển khai MTP tùy chỉnh
  • Môi trường hỗ trợ: HuggingFace Transformers, vLLM, MLX(Apple Silicon), LiteRT-LM

> 💡 Tóm tắt một dòng: Google đã gỡ MTP khỏi bản phát hành công khai của Gemma 4 dù mô hình được huấn luyện với tính năng này, rồi chỉ hỗ trợ trở lại theo cách vòng qua mô hình phụ trợ bên ngoài sau khi bị cộng đồng phát hiện bằng reverse engineering.