Phi-3 Mini và SmolLM: LLM siêu nhỏ chạy trên điện thoại mà không cần server

LLM chạy trực tiếp trên điện thoại đã ngừng là mơ và bắt đầu có mặt trong thực tế nhờ những mô hình siêu nhỏ như Phi-3 Mini (Microsoft) và SmolLM (Hugging Face). Hai mô hình này mang lại khả năng sinh văn bản, trả lời câu hỏi và hỗ trợ coding ngay trên thiết bị di động mà không cần kết nối internet hoặc server đắt tiền.

Phi-3 Mini là thành viên nhỏ nhất trong họ Phi-3 của Microsoft, với 3.8 tỷ tham số. SmolLM là bộ ba mô hình (135M, 360M, 1.7B) do Hugging Face huấn luyện từ bộ dữ liệu chất lượng cao. Kích thước nhỏ giúp chúng vừa nice vào bộ nhớ RAM của smartphone hiện đại, cho phép inference ngay trên CPU hoặc NPU mà không phụ thuộc vào GPU.

Phi-3 Mini: kiến trúc và điểm mạnh

Phi-3 Mini dựa trên kiến trúc Transformer decoder-only, được tối ưu hóa cho độ dài bối cảnh ngắn và tốc độ inference cao. Microsoft đào tạo trên một bộ dữ liệu tổng hợp (synthetic) chất lượng cao bao gồm code, sách giáo khoa và dữ liệu reasoning. Kết quả cho thấy mô hình này đạt điểm số cạnh tranh với các LLM 7B trong các tác vụ logic và toán học, mặc dù có ít hơn 10 lần tham số.

Một điểm nhấn của Phi-3 Mini là hỗ trợ quantization 4-bit (GGUF) nhờ sự hợp tác với llama.cpp. Điều này giảm kích thước xuống dưới 2GB, vừa đủ để tải vào RAM một chiếc điện thoạiAndroid middle-end. Các benchmark trên thiết bị thực cho thấy tốc độ sinh khoảng 15-20 token/giây trên chip Snapdragon 8 Gen 2.

Kiến trúc Transformer decoder-only của Phi-3 Mini

SmolLM: trio siêu nhỏ từ Hugging Face

SmolLM được phát hành bởi Hugging Face với ba quy mô: 135 triệu, 360 triệu và 1.7 tỷ tham số. Các mô hình này được huấn luyện trên SmolLM-Corpus, một bộ dữ liệu tổng hợp 28 tỷ token bao gồm Wikipedia, sách khoa học, code GitHub và dữ liệu reasoning. Tập trung vào chất lượng dữ liệu hơn là khối lượng giúp SmolLM đạt hiệu suất tốt bất chấp kích thước kecil.

SmolLM 1.7B tương đương với Phi-3 Mini về kích thước nhưng được đào tạo khác nhau: Hugging Face tập trung vào đa ngôn ngữ và khả năng adaptação nhanh qua fine-tuning. Các thử nghiệm trên điện thoại cho thấy SmolLM 1.7B có thể sinh văn bản tiếng Việt trôi chúc và trả lời câu hỏi dựa trên kiến thức trong bộ dữ liệu huấn luyện.

Biểu đồ so sánh hiệu suất Phi-3 Mini, SmolLM và LLM 7B

Cách chạy LLM trên điện thoại với llama.cpp

Để chạy Phi-3 Mini hoặc SmolLM trên Android/iOS, bạn cần biên dịch llama.cpp hoặc dùng sẵn các ứng dụng như Mammoth, Chatbot AI trên Play Store. Các bước cơ bản:

  1. Tải mô hình định dạng GGUF từ Hugging Face Hub (ví dụ: Phi-3-mini-4k-instruct-q4_0.gguf).
  2. Copy file vào bộ nhớ nội bộ điện thoại.
  3. Dùng ứng dụng client để load mô hình, thiết lập context length (2048 cho Phi-3 Mini) và bắt đầu trò chuyện.
  4. Tùy chọn: bật NPU delegate nếu chip hỗ trợ (Qualcomm Hexagon, Apple Neural Engine).

Phi-3 Mini quantization q4_0 chiếm khoảng 2.2GB trên đĩa. Khi load vào RAM, bộ nhớ tiêu thụ khoảng 2.5GB kể cả overhead. Điều này còn khả thi trên các thiết bị có 6GB RAM trở lên.

So sánh Phi-3 Mini và SmolLM với LLM lớn

Mô hình Tham số Kích thước GGUF Tốc độ trên điện thoại Điểm số MMLU
Phi-3 Mini 3.8B ~2.2GB (q4_0) 15-20 tok/s 69%
SmolLM 1.7B 1.7B ~1.0GB (q4_0) 25-30 tok/s 58%
Llama 3 8B 8B ~4.8GB (q4_0) 8-12 tok/s 66%
Mistral 7B 7B ~4.2GB (q4_0) 9-13 tok/s 63%

Dù chỉ có một phần tham số, Phi-3 Mini và SmolLM vẫn mang lại trải nghiệm sử dụng ổn định cho các tác vụ hỗ trợ coding, giải đáp toán học cơ bản và tạo nội dung ngắn. Việc không phụ thuộc vào internet cũng bảo vệ quyền riêng tư và cho phép làm việcoffline hoàn toàn.

Ứng dụng thực tế

  • Trợ lý coding Offline: Gợi ý completer trong VS Code hoặc Neovim mà không gửi code lên server.
  • Giải toán và lógica: Hỗ trợ học sinh làm bài toán đại số, hình học hoặc lógica cổ điển.
  • Tạo nội dung ngắn: Viết email, bài báo ngắn hoặc caption cho mạng xã hội.
  • Dịch thuật cơ bản: Dịch câu từ Anh sang Việt và ngược lại với độ accettável.

Nhờ sự phát triển của quantization và NPU trên chip di động, tương lai của LLM trên thiết bị sẽ còn szyb hơn và mang lại nhiều tính năng cao cấp hơn mà không mò vào đám đám đám.

Nguồn tham khảo: Phi-3 Mini trên Hugging Face, SmolLM 1.7B trên Hugging Face, llama.cpp repository.

Tôi là một lập trình viên IOS. Code chính là IOS nhưng thỉnnh thoảng vẫn đá sang Android hoặc web. Mặc dù không quá thông thạo nhưng tôi sẽ chia sẻ những kiến thức mà mình đã tìm hiểu, áp dụng qua.

Bài viết liên quan

GGUF Quantization cho LLM: Tối ưu bộ nhớ, tốc độ và chất lượng

GGUF Quantization cho LLM: Tối ưu bộ nhớ, tốc độ và chất lượng Khi triển khai Large Language Models trên máy tính cá nhân, giới hạn lớn nhất không phải…

Xem thêm

LoRA & QLoRA: Fine-tune LLM trên GPU consumer mà không cần server đắt

LoRA & QLoRA: Fine-tune LLM hiệu quả trên GPU consumer mà không cần server đắt tiền Trong thời đại AI sinh tạo ngày nay, việc fine-tune mô hình ngôn ngữ…

Xem thêm
Transformer model architecture diagram showing encoder-decoder with attention mechanism

Speculative Decoding: Tăng tốc inference LLM 2-3x với draft model

Speculative decoding là kỹ thuật tăng tốc độ inference của Large Language Models (LLM) lên 2-3x mà không làm giảm chất lượng đầu ra. Ý tưởng cốt lõi: sử dụng…

Xem thêm
0 0 đánh giá
Article Rating
Theo dõi
Thông báo của
guest
0 Comments
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất