Tracks
Qwen3.8-Flash-Next là một trong những mô hình cục bộ thú vị hơn mà tôi đã thử gần đây, đặc biệt cho các tác vụ lập trình và tác nhân. Tiết lộ trước: tôi đã rất bất ngờ với hiệu năng của mô hình.
Trong hướng dẫn này, chúng ta sẽ chạy bản định lượng GGUF Unsloth UD-Q4_K_XL trên một RTX PRO 6000 với 96GB VRAM, phục vụ nó cục bộ bằng llama.cpp, kiểm thử qua WebUI tích hợp sẵn, và cuối cùng kết nối với OpenCode để dùng như một tác nhân lập trình hoàn toàn cục bộ.
Qwen3.8-Flash-Next là gì?
Qwen3.8-Flash-Next được phát hành ngày 26 tháng 8 năm 2026. Đây là mô hình Mixture-of-Experts (MoE) mã mở trọng số mới từ đội ngũ Qwen và cũng là bản xem trước sớm của kiến trúc đang được phát triển cho Qwen4.
Để tìm hiểu sâu hơn về mô hình, bao gồm benchmark đầy đủ và tổng quan tính năng, thông tin về giá và khả dụng, cùng so sánh với các mô hình cạnh tranh, tôi khuyến nghị đọc hướng dẫn Qwen3.8-Flash-Next của chúng tôi.
Kiến trúc Qwen3.8-Flash-Next
Đây là mô hình MoE chính với 125 tỷ tham số, nhưng chỉ khoảng 6 tỷ tham số được kích hoạt trên mỗi token. Nó cũng bao gồm bổ sung 51 tỷ tham số trong n-gram embeddings.
Kiến trúc giới thiệu một số ý tưởng mà Qwen đang khám phá cho Qwen4:
- Gated DeltaNet + Qwen Sparse Attention (QSA) để xử lý ngữ cảnh dài hiệu quả hơn
- Kết nối Residual có cổng (Gated Residual) nhằm cải thiện luồng thông tin giữa các tầng
- N-gram embeddings giúp tăng dung lượng mô hình mà không cần tính toán chủ động tất cả các tham số đó

Nguồn: Qwen
Mô hình có độ dài cửa sổ ngữ cảnh gốc là 262.144 token và về lý thuyết có thể mở rộng lên 1 triệu token bằng YaRN.
Qwen3.8-Flash-Next lập trình tốt đến mức nào?
Mô hình cũng mạnh đáng ngạc nhiên ở mảng lập trình. Đây là một số kết quả do chính Qwen báo cáo so với Qwen3.8-27B:
|
Benchmark |
Qwen3.8-Flash-Next |
Qwen3.8-27B |
|
DeepSWE 1.1 |
58.7 |
42.2 |
|
SWE-bench Pro |
62.5 |
61.7 |
|
SWE-bench Multilingual |
81.0 |
73.8 |
|
Toolathlon Verified |
73.5 |
67.1 |
Đây là các đánh giá do Qwen tự thực hiện, vì vậy tôi vẫn coi chúng là kết quả do nhà cung cấp báo cáo, nhưng chúng khá phù hợp với trải nghiệm của tôi khi dùng mô hình cho lập trình.
Chuẩn bị máy chủ GPU cho Qwen3.8-Flash-Next
Tôi dùng RTX PRO 6000 với 96GB VRAM, nhưng bạn không nhất thiết cần nhiều VRAM đến vậy.

Đây thực sự là một phần thú vị của Qwen3.8-Flash-Next. Vì llama.cpp có thể offload một phần mô hình sang RAM hệ thống, bạn có thể dùng GPU với ít VRAM hơn miễn là bạn có nhiều RAM.
Bản định lượng Unsloth UD-Q4_K_XL mà chúng ta dùng khoảng 111GB và được chia thành bốn tệp GGUF.
Với thiết lập của tôi, tôi khuyến nghị nên có ít nhất 140GB tổng RAM và VRAM khả dụng để đảm bảo đủ chỗ cho mô hình, ngữ cảnh, KV cache và chi phí runtime.
Nếu bạn có H200 chẳng hạn, bạn có thể giữ hầu như mọi thứ trên GPU. Tôi chọn phương án trung dung.
Bắt đầu bằng cách kiểm tra GPU của bạn:
nvidia-smi

Bạn sẽ thấy GPU, phiên bản driver, phiên bản CUDA và VRAM khả dụng.
Tiếp theo, cài đặt các gói cần thiết:
sudo apt update
sudo apt install -y \
git \
cmake \
build-essential \
curl \
libcurl4-openssl-dev \
python3-pip
Biên dịch llama.cpp với hỗ trợ Qwen3.8-Flash-Next
Qwen3.8-Flash-Next sử dụng kiến trúc qwen4_exp mới, rất khác so với chỉ đơn giản tải một mô hình Qwen3.8 khác.
Hỗ trợ vẫn còn rất mới, nên tôi dùng nhánh Qwen3.8-Flash-Next do Unsloth duy trì thay vì dựa vào bản dựng llama.cpp cũ hơn có thể không nhận diện được kiến trúc. Phần công việc tương ứng trong llama.cpp bổ sung kiến trúc qwen4exp mới, QSA, n-gram embeddings và các thành phần đặc thù của mô hình.
Di chuyển vào thư mục làm việc:
cd /workspace
Clone nhánh Unsloth:
git clone \
--branch qwen4exp/qwen3.8-flash-next \
https://github.com/unslothai/llama.cpp.git
Vào thư mục:
cd llama.cpp
Biên dịch llama.cpp với CUDA:
cmake -B build \
-DGGML_CUDA=ON \
-DCMAKE_BUILD_TYPE=Release
cmake --build build \
--config Release \
-j"$(nproc)"
Cuối cùng, xác nhận rằng llama-server đã được build đúng:
./build/bin/llama-server --version
Bản dựng của tôi trả về:
version: 0.3.0-dev (build 10656, commit 035e22731)
built with GNU 13.3.0 for Linux x86_64
Tải mô hình Qwen3.8-Flash-Next GGUF
Tải mô hình thực ra là một trong những phần khó chịu nhất của thiết lập này.
Tôi thử ModelScope trước, nhưng tốc độ không tốt. Trên Hugging Face, lúc đầu tốc độ tải khá ổn rồi đột ngột tụt xuống mức KB/s.
Hugging Face hiện dùng backend Xet cho tải mô hình lớn và thông thường tự động bật đồng thời thích ứng. Họ cũng cung cấp HF_HUB_DISABLE_XET để tắt Xet khi gặp sự cố.
Trong trường hợp của tôi, tắt Xet và tải song song bốn shard GGUF hoạt động tốt hơn nhiều.
Cài đặt Hugging Face CLI:
pip install -U huggingface_hub
Tắt Xet cho lần tải này:
export HF_HUB_DISABLE_XET=1
unset HF_XET_HIGH_PERFORMANCE
unset HF_XET_NUM_CONCURRENT_RANGE_GETS
unset HF_HUB_ENABLE_HF_TRANSFER
HF_HUB_ENABLE_HF_TRANSFER hiện đã ngừng dùng, vì Hugging Face đã chuyển các truyền tải lớn sang Xet.
Tạo thư mục mô hình:
cd /workspace
mkdir -p Qwen3.8-Flash-Next-GGUF
Giờ hãy tải cả bốn shard song song:
for i in 1 2 3 4; do
shard=$(printf "%05d" "$i")
hf download unsloth/Qwen3.8-Flash-Next-GGUF \
"UD-Q4_K_XL/Qwen3.8-Flash-Next-UD-Q4_K_XL-${shard}-of-00004.gguf" \
--local-dir Qwen3.8-Flash-Next-GGUF &
done
wait

Toàn bộ bản định lượng UD-Q4_K_XL khoảng 111GB.
Chạy Qwen3.8-Flash-Next với llama.cpp
Quay lại thư mục llama.cpp:
cd /workspace/llama.cpp
Khởi động máy chủ:
./build/bin/llama-server \
-m /workspace/Qwen3.8-Flash-Next-GGUF/UD-Q4_K_XL/Qwen3.8-Flash-Next-UD-Q4_K_XL-00001-of-00004.gguf \
--alias qwen3.8-flash-next \
--host 0.0.0.0 \
--port 8080 \
--ctx-size 131072 \
--parallel 1 \
--flash-attn on \
--fit on \
--fit-target 4096 \
--jinja \
--batch-size 1024 \
--ubatch-size 512 \
--temp 1.0 \
--top-p 0.95 \
--top-k 20 \
--min-p 0.0

Tôi cố ý dùng cửa sổ ngữ cảnh 131.072 token thay vì toàn bộ 262K gốc.
Đối với tác nhân lập trình, 131K đã là rất lớn và cho OpenCode nhiều không gian cho mã nguồn, đầu ra công cụ, log terminal và hội thoại dài mà không lãng phí thêm bộ nhớ cho ngữ cảnh có lẽ tôi sẽ không dùng.
Các thiết lập quan trọng ở đây là:
-
--fit oncho phép llama.cpp tự động xác định bao nhiêu phần của mô hình nên giữ trên GPU. -
--fit-target 4096bảo nó để khoảng 4GB bộ nhớ GPU trống, giúp runtime có khoảng thở thay vì chạy sát giới hạn VRAM. llama.cpp chính thức hỗ trợ cả tự động fitting và biên độ bộ nhớ mục tiêu có thể cấu hình. -
Các thiết lập lấy mẫu cũng không ngẫu nhiên. Qwen khuyến nghị
temperature=1.0,top_p=0.95,top_k=20vàmin_p=0.0khi dùng mô hình ở chế độ tư duy.

Ngay cả sau khi nạp đầy đủ mô hình, tôi vẫn còn khá nhiều bộ nhớ, với khoảng 13GB VRAM trống cho cửa sổ ngữ cảnh, KV cache và ứng dụng khác.
Kiểm thử máy chủ Qwen3.8-Flash-Next bằng CURL
llama-server cung cấp API tương thích OpenAI.
Kiểm tra mô hình sẵn có:
curl http://127.0.0.1:8080/v1/models
Bạn sẽ thấy qwen3.8-flash-next.
Giờ, hãy thử tạo câu trả lời:
curl http://127.0.0.1:8080/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "qwen3.8-flash-next",
"messages": [
{
"role": "user",
"content": "Write a Python function that checks whether a number is prime."
}
]
}'
Nếu bạn nhận được phản hồi hợp lệ, máy chủ cục bộ đã sẵn sàng.

Trên thiết lập của tôi, ban đầu tôi thấy khoảng 80 token mỗi giây, điều này khiến tôi ngạc nhiên vì một phần mô hình đang nằm trong RAM hệ thống.
Khi ngữ cảnh lớn hơn, tôi bắt đầu thấy tốc độ gần 64 token mỗi giây.
Đó vẫn là mức rất dùng được đối với một mô hình cỡ này, và kiến trúc giúp giải thích điều đó. Dù mô hình có 125B tham số chính, chỉ khoảng 6B hoạt động mỗi token.
Kiểm thử Qwen3.8-Flash-Next với WebUI của llama.cpp
Một điều tôi thực sự thích ở llama.cpp là llama-server đã cung cấp sẵn một WebUI đơn giản.
Mở http://localhost:8080. Nếu mọi thứ chạy đúng, mô hình sẽ sẵn sàng.

Bài kiểm thử nghiêm túc đầu tiên của tôi: tôi yêu cầu nó xây dựng trọn vẹn một trang web cho phòng CNTT chính phủ trong một lần:
Create a modern, professional government IT department portfolio website in a single index.html file.
Use HTML, CSS, and JavaScript featuring a clean official design and responsive layout with smooth animations, interactive elements, and accessible government-style navigation.
It should display department overview, key services, digital transformation projects, achievements, technology initiatives, statistics, leadership/team section, latest updates, contact information,

Đây là một lần sinh rất lớn. Mô hình dành nhiều token để suy nghĩ, rồi tạo cả một trang web trong một tệp HTML duy nhất. Mất khoảng 13 phút để hoàn thành, và tốc độ sinh giảm dần khi ngữ cảnh lớn lên.
Nhưng kết quả tốt hơn nhiều so với mong đợi của tôi.

Nó bao gồm biểu đồ, hoạt ảnh, tab, các phần khác nhau, style responsive, tương tác JavaScript, và bố cục tổng thể trau chuốt đáng ngạc nhiên.

Điều thú vị là đây gần như là một lần sinh one-shot. Tôi không yêu cầu rõ ràng nhiều chi tiết nhỏ đó.
Đó là lúc đầu tiên tôi nhận ra mô hình này có thể đặc biệt tốt cho các tác vụ lập trình nơi bạn cho nó chút tự do thay vì chỉ định mọi chi tiết triển khai.
Kết nối Qwen3.8-Flash-Next với OpenCode
Trò chuyện thì tốt, nhưng tôi chủ yếu muốn thử Qwen3.8-Flash-Next như một mô hình tác nhân lập trình.
Vì vậy, tôi dùng OpenCode. Cài đặt trước:
curl -fsSL https://opencode.ai/install | bash
Khởi động lại terminal và kiểm tra cài đặt:
opencode --version
Trường hợp của tôi là phiên bản 1.18.23.
Giờ tạo cấu hình OpenCode:
mkdir -p ~/.config/opencode
Thêm nhà cung cấp llama.cpp cục bộ mà ta đã build trước đó:
printf '%s\n' '{"$schema":"https://opencode.ai/config.json","model":"llama.cpp/qwen3.8-flash-next","provider":{"llama.cpp":{"npm":"@ai-sdk/openai-compatible","name":"Qwen3.8 Flash Next Local","options":{"baseURL":"http://127.0.0.1:8080/v1"},"models":{"qwen3.8-flash-next":{"name":"Qwen3.8 Flash Next","limit":{"context":65536,"output":32768}}}}}}' > ~/.config/opencode/opencode.json
Phần quan trọng nhất là http://127.0.0.1:8080/v1.
OpenCode hỗ trợ nhà cung cấp tùy chỉnh tương thích OpenAI thông qua @ai-sdk/openai-compatible, giúp kết nối llama.cpp rất dễ dàng.
Tôi đặt OpenCode ở ngữ cảnh làm việc 65K dù máy chủ llama.cpp có sẵn 131K.
Điều này để lại nhiều khoảng trống cho đầu ra dài và giúp phiên tác nhân không lấp đầy toàn bộ ngữ cảnh máy chủ quá nhanh.
Dùng Qwen3.8-Flash-Next như một tác nhân lập trình cục bộ
Đi tới thư mục dự án và khởi động OpenCode:
cd /workspace/my-project
opencode

Giờ bạn có thể giao cho mô hình các tác vụ tác nhân lập trình thông thường. Ví dụ, tôi bảo Qwen xây dựng một dashboard phân tích:
Build a modern system analytics and task-management dashboard.
It should monitor CPU, RAM, VRAM, GPU usage, temperatures, disk usage, running processes, and temporary files.
Users should be able to safely terminate tasks, free unused RAM/VRAM, clear caches, and clean temporary files from one interface.

Mô hình bắt đầu bằng cách tạo danh sách việc cần làm và lập kế hoạch ứng dụng trước khi viết mọi thứ.

Trong vài phút, nó đã cho ra bản dashboard hoạt động đầu tiên. Tôi không thật sự thích UI đầu tiên. Nó cảm giác quá dàn trải và có vài vấn đề về khả dụng.
Vì vậy tôi chỉ cần nói với tác nhân điều tôi không thích và yêu cầu xây lại giao diện thành một trung tâm lệnh hệ thống gọn hơn.
Phiên bản thứ hai tốt hơn nhiều.

Cuối cùng tôi có một dashboard gọn, nơi tôi có thể giám sát CPU, RAM, VRAM, mức dùng GPU, lưu trữ, hoạt động mạng và tiến trình đang chạy theo thời gian thực. Nó cũng thêm điều khiển để xóa cache, dọn tệp tạm và quản lý tiến trình.
Điều thú vị là cách Qwen tiếp cận triển khai. Tôi thử trên hai ứng dụng khác nhau, và nó thường ưu tiên HTML, CSS và JavaScript thuần đơn giản thay vì lập tức cài React, các gói Node, hay framework lớn khác.
Tôi thực sự thích hành vi này. Nếu tôi không chỉ định framework, nó cố tìm kiến trúc đơn giản nhất để giải quyết vấn đề thay vì thêm phụ thuộc không cần thiết.
Điểm trừ là nó khá tốn thời gian. Có nhiều suy luận, nhiều token sinh ra, và đôi khi kha khá gỡ lỗi. Bạn chắc chắn cảm nhận được mô hình đang tiêu tốn token để suy nghĩ về vấn đề.
Nhưng các dự án cuối cùng nhìn chung đầy đủ hơn nhiều so với những gì tôi thường nhận từ các mô hình cục bộ nhỏ hơn.
Lời kết
Sau khi thử Qwen3.8-Flash-Next cho sinh trang web và tác nhân lập trình, tôi nghĩ đây là một bước tiến rõ rệt so với Qwen3.8-27B. Khác biệt lớn nhất là cách nó tiếp cận dự án. Nó chú ý hơn đến cấu trúc, chi tiết, và triển khai thực tế thay vì chỉ sinh mã. Nếu bạn quan tâm chạy mô hình này cục el cục bộ, hãy đọc hướng dẫn Qwen3.8-27B của chúng tôi.
Tôi cũng thích việc nó thường dựa vào HTML, CSS, JavaScript và Python đơn giản thay vì thêm framework và phụ thuộc không cần thiết.
Điểm trừ chính là kích thước. Bản GGUF UD-Q4_K_XL khoảng 111GB, và mô hình có thể dùng nhiều token suy luận và đầu ra, đặc biệt trong khi gỡ lỗi.
Ngoài ra, quá trình thiết lập khá đơn giản bất ngờ. Nếu bạn có đủ RAM và VRAM, Qwen3.8-Flash-Next là một trong những mô hình lập trình cục bộ mạnh nhất mà tôi đã thử cho đến nay.
Câu hỏi thường gặp
Cần phần cứng gì để chạy Qwen3.8-Flash-Next cục bộ?
Bảng phần cứng của Unsloth cho biết bản định lượng nhỏ nhất 1-bit là 75GB và bản 4-bit là 112GB, đo theo tổng bộ nhớ (kết hợp VRAM và RAM hệ thống, hoặc bộ nhớ hợp nhất trên Mac). Bạn không cần GPU 96GB: llama.cpp chia mô hình giữa VRAM và RAM, vì thế một card nhỏ hơn nhưng có nhiều RAM hệ thống vẫn chạy được, chỉ là chậm hơn ở phần bị offload.
Nên chọn định lượng nào của Qwen3.8-Flash-Next?
UD-Q4_K_XL là điểm ngọt ở mức 111,3GB, giữ khoảng 93% mức trùng khớp token hàng đầu so với mô hình độ chính xác đầy đủ. Nếu bạn bị hạn chế bộ nhớ, UD-IQ4_XS (93,7GB) và UD-Q3_K_XL (90GB) vẫn trên 90%, và UD-IQ1_S vẫn giữ 80% ở 72,5GB. Lưu ý rằng các bản định lượng bit thấp lớn hơn bạn mong đợi đối với mô hình 125B, vì các lớp n-gram embedding không bao giờ được định lượng dưới 4-bit.
Bạn có thể dùng Qwen3.8-Flash-Next với Claude Code hoặc Codex thay cho OpenCode không?
Có, với bất kỳ công cụ nào chấp nhận base URL tương thích OpenAI tùy chỉnh. Trỏ công cụ tới http://127.0.0.1:8080/v1 và dùng --alias bạn đã đặt cho máy chủ làm ID mô hình. Claude Code mong đợi yêu cầu theo định dạng Anthropic, vì vậy nó cần một proxy chuyển đổi thay vì chỉ thay base URL trực tiếp. Dù bạn dùng tác nhân nào, hãy đặt giới hạn ngữ cảnh rõ ràng dưới --ctx-size của máy chủ để các phiên dài không vượt quá.
Làm sao để ngăn Qwen3.8-Flash-Next tiêu tốn quá nhiều token để suy nghĩ?
Mức nỗ lực suy luận mặc định là xhigh. Truyền --chat-template-kwargs '{"reasoning_effort":"medium"}' cho llama-server để giảm, với các mức low và none cũng khả dụng. Mô hình cũng giữ dấu vết suy nghĩ từ các lượt trước theo mặc định (preserve thinking), nên đặt preserve_thinking thành false sẽ giảm tiêu thụ token hơn nữa trong các phiên tác nhân dài.
Là một nhà khoa học dữ liệu được chứng nhận, tôi đam mê tận dụng công nghệ tiên tiến để tạo ra các ứng dụng học máy đổi mới. Với nền tảng vững chắc về nhận dạng giọng nói, phân tích và báo cáo dữ liệu, MLOps, AI hội thoại và NLP, tôi đã rèn giũa kỹ năng phát triển các hệ thống thông minh có thể tạo ra tác động thực sự. Bên cạnh chuyên môn kỹ thuật, tôi cũng là một người truyền đạt tốt, có khả năng chắt lọc các khái niệm phức tạp thành ngôn ngữ rõ ràng, súc tích. Nhờ đó, tôi trở thành một blogger được nhiều người quan tâm trong lĩnh vực khoa học dữ liệu, chia sẻ góc nhìn và kinh nghiệm với cộng đồng các chuyên gia dữ liệu ngày càng lớn. Hiện tại, tôi tập trung vào sáng tạo và biên tập nội dung, làm việc với các mô hình ngôn ngữ lớn để phát triển nội dung mạnh mẽ và hấp dẫn, giúp doanh nghiệp và cá nhân tận dụng tối đa dữ liệu của mình.
