Chuyển đến nội dung chính

Hướng dẫn cho người mới bắt đầu với LlaMA-Factory WebUI: Fine-Tuning LLMs

Tìm hiểu cách fine-tune LLMs trên bộ dữ liệu tùy chỉnh, đánh giá hiệu năng, và xuất/triển khai mô hình liền mạch bằng framework low/no-code của LLaMA-Factory.
Đã cập nhật 5 thg 10, 2026  · 12 phút đọc

Khám phá cùng AI

ChatGPTClaudePerplexity

Trong hướng dẫn này, chúng ta sẽ khám phá cách fine-tune mô hình Llama 3 8B bằng LlaMA-Factory WebUI trên bộ dữ liệu Wikipedia Q&A. Trước hết, chúng ta sẽ giới thiệu về LlaMA-Factory WebUI, sau đó thiết lập nó trong môi trường Google Colab. Khi cấu hình xong, chúng ta sẽ đi qua quy trình fine-tune mô hình Llama 3 8B trên bộ dữ liệu và đánh giá hiệu năng của mô hình thông qua giao diện trò chuyện.

Trong quá trình thực hiện, bạn cũng sẽ học cách nạp bộ dữ liệu tùy chỉnh, hợp nhất mô hình và xuất chúng lên Hugging Face. Cuối cùng, chúng ta sẽ đề cập cách triển khai mô hình đã fine-tune để truy cập qua OpenAI API.

Bạn có thể trang bị kiến thức thực hành về các chủ đề AI phổ biến như ChatGPT, mô hình ngôn ngữ lớn, generative AI và nhiều hơn nữa bằng cách tham gia AI Fundamentals skill track. 

Ảnh bìa Fine-Tuning LLMs bằng LlaMA-Factory WebUI

Ảnh: Tác giả | Canva

LlaMA-Factory là gì?

hiyouga/LLaMA-Factory là một dự án mã nguồn mở cho phép bạn fine-tune hơn 100 mô hình ngôn ngữ lớn (LLM) thông qua giao diện WebUI. Dự án cung cấp bộ công cụ và script toàn diện để fine-tune, tạo chatbot, phục vụ (serving) và benchmark các LLM. 

LLaMA-Factory được thiết kế đặc biệt cho người mới và các chuyên gia phi kỹ thuật muốn fine-tune LLM mã nguồn mở trên bộ dữ liệu tùy chỉnh mà không cần học các khái niệm AI phức tạp. Người dùng chỉ cần chọn mô hình, thêm bộ dữ liệu và điều chỉnh vài tham số để bắt đầu quá trình huấn luyện. 

Sau khi huấn luyện xong, bạn có thể dùng chính ứng dụng web đó để kiểm thử mô hình, sau đó xuất lên Hugging Face hoặc lưu cục bộ. Đây là cách nhanh và hiệu quả để fine-tune LLM ngay trên máy của bạn.

Bắt đầu với LlaMA-Factory WebUI

Trong phần này, chúng ta sẽ học cách cài đặt và khởi chạy LlaMA-Factory WebUI trên Google Colab và Microsoft Windows. 

Google Colab cung cấp quyền truy cập GPU miễn phí, vì vậy nếu laptop của bạn không có GPU hoặc chưa cài CUDA, tôi khuyến nghị bạn bắt đầu với notebook Colab. 

  1. Mở notebook Google Colab với loại runtime “T4 GPU”. 
  2. Trong ô mã, gõ lệnh sau để nhân bản (clone) kho GitHub LLaMA-Factory và cài đặt tất cả gói Python cần thiết. 
%cd /content/
%rm -rf LLaMA-Factory
!git clone https://github.com/hiyouga/LLaMA-Factory.git
%cd LLaMA-Factory
%ls
%pip install -e .[torch,bitsandbytes]
  1. Để truy cập mô hình và bộ dữ liệu, bạn cần đăng nhập vào CLI của Hugging Face. Bạn phải tạo access token mới bằng cách vào phần cài đặt của Hugging Face, nhấp “Access Tokens” và tạo token mới cho Google Colab.

Tạo access token mới của Hugging Face

  1. Tạo biến môi trường của Hugging Face bằng tính năng “Secrets” của Colab, cho phép chúng ta tạo biến môi trường và truy cập an toàn trong notebook.

Đặt biến môi trường trong Google Colab bằng Secrets.

  1. Đăng nhập vào Hugging Face Hub bằng access token của Hugging Face. 
from huggingface_hub import login
from google.colab import userdata
hf_token = userdata.get("HUGGINGFACE_TOKEN")
login(token = hf_token)
  1. Khởi chạy LLaMA-Factor WebUI bằng llamafactory-cli. Chúng ta đặt GRADIO_SHARE=1 để tạo liên kết công khai truy cập ứng dụng web. 
%cd /content/LLaMA-Factory/
!GRADIO_SHARE=1 llamafactory-cli webui
  1. Nhấn vào URL công khai để mở WebUI trong tab mới. 

URL công khai của Llama factor webui

Giao diện LLAMA-Factory WebUI trông đơn giản nhưng có rất nhiều tùy chọn và tab. Chúng ta sẽ khám phá ở phần tiếp theo. 

Llama Factory WebUI chạy trên Google Colab

Nếu bạn gặp vấn đề khi khởi chạy LlaMA-Factory WebUI của riêng mình, vui lòng tham khảo notebook Google Colab.

Chạy LlaMA-Factory WebUI trên Windows

Nếu bạn muốn chạy LlaMA-Factory WebUI cục bộ trên Windows, bạn cần cài phiên bản dựng sẵn của thư viện bitsandbytes. Thư viện hỗ trợ CUDA 11.1 đến 12.2, vì vậy hãy chọn phiên bản phát hành phù hợp với phiên bản CUDA của bạn.

  1. Mở terminal Windows và gõ lệnh Git để clone kho LLaMA-Factory từ GitHub.
  2. Cài đặt tất cả gói Python cần thiết.
  3. Cài thư viện bitsandbytes cho Windows.
$ git clone https://github.com/hiyouga/LLaMA-Factory.git

$ cd LLaMA-Factory

$ pip install -e .[torch,bitsandbytes]

$ pip install https://github.com/jllllll/bitsandbytes-windows-webui/releases/download/wheels/bitsandbytes-0.41.2.post2-py3-none-win_amd64.whl
  1. Khởi chạy LLaMA-Factory WebUI.
$ llamafactory-cli webui
  1. Đừng quên đăng nhập Hugging Face bằng CLI và cung cấp access token. 
$ huggingface-cli login

Fine-tune LlaMA-3 8B Chat bằng LlaMA-Factory WebUI

Phần này không có mã nguồn. Chúng ta sẽ chọn mô hình và bộ dữ liệu để fine-tune, thay đổi một số tham số và bấm vài nút để huấn luyện nhanh hơn. 

Để hiểu lý thuyết đằng sau việc fine-tune các mô hình ngôn ngữ lớn, hãy xem hướng dẫn toàn diện này: Fine-Tuning Large Language Models.

Chọn bộ dữ liệu và mô hình

Chúng ta sẽ fine-tune mô hình unsloth/llama-3-8b-bnb-4bit trên bộ dữ liệu Microsoft/wiki_qa. Bộ dữ liệu có nhiều cột như bên dưới, nhưng chúng ta sẽ dùng cột “question” và “answer” để fine-tune mô hình. 

Kho dữ liệu Wiki_QA trên Hugging Face Hub.

Nguồn: microsoft/wiki_qa | Tập liệu Hỏi Đáp Wiki của Microsoft

Chúng ta không thể nạp đầy đủ mô hình LLaMA-3-8B instruction trên bản miễn phí của Google Colab. Thay vào đó, chúng ta sẽ nạp phiên bản lượng tử hóa 4-bit của cùng mô hình do Unsloth cung cấp. 

Để làm điều này, chọn tên mô hình “Custom” và dán liên kết kho “unsloth/llama-3-8b-bnb-4bit” vào đường dẫn mô hình.

Thiết lập mô hình và bộ dữ liệu trên LlaMA-Factory WebUI

Chúng ta có thể chọn nhiều bộ dữ liệu để fine-tune mô hình. Tuy nhiên, trong hướng dẫn này, chúng ta chỉ dùng bộ dữ liệu “Wikiqa”, bạn có thể dễ dàng chọn từ danh sách có sẵn như trên. 

Điều chỉnh tham số huấn luyện 

Cuộn xuống để điều chỉnh các tham số huấn luyện mô hình. Chúng ta sẽ đặt các tham số sau:

  • Learning rate: 4e-5
  • Epochs: 1.0
  • Max samples: 1000 để tăng tốc huấn luyện

Các tham số còn lại giữ mặc định. Bạn có thể thay đổi các giá trị này để điều chỉnh hành vi của mô hình đã fine-tune. 

đặt tham số huấn luyện trên LlaMA-Factory WebUI

Chúng ta cũng có thể thay đổi hạng LoRa và các cấu hình liên quan đến LoRa. Trong hướng dẫn này, chúng ta giữ nguyên mặc định cho các thiết lập còn lại.

Thiết lập cấu hình LoRA trên LlaMA-Factory WebUI

Bắt đầu quá trình huấn luyện

Cuộn tiếp xuống để xem cấu hình huấn luyện. Hãy cung cấp thư mục đầu ra và đường dẫn cấu hình, sau đó nhấn nút “Start”. Biểu đồ loss sẽ mất chút thời gian để hiển thị vì LlaMA-Factor sẽ tải mô hình và bộ dữ liệu trước, rồi mới nạp cả hai, có thể mất ít nhất 5 phút.

Bắt đầu quá trình huấn luyện trong LlaMA-Factory WebUI

Khi mô hình được nạp đầy đủ và huấn luyện bắt đầu, bạn sẽ thấy các trực quan hóa trên biểu đồ loss. Như quan sát, loss giảm dần theo số bước, rất tích cực.

Giữa quá trình huấn luyện mô hình trên LlaMA-Factory WebUI

Khi huấn luyện hoàn tất, bạn sẽ thấy thông báo kết thúc ở góc dưới bên trái. Như quan sát, loss giảm dần và đi ngang sau 45 bước.

Hoàn tất fine-tune mô hình trên LlaMA-Factory WebUI

Nếu bạn là nhà khoa học dữ liệu hoặc lập trình viên, bạn sẽ thấy việc fine-tune mô hình bằng Python khá dễ dàng. 

Chúng tôi có hướng dẫn chi tiết cho người kỹ thuật muốn huấn luyện LlaMA-3 tại đây: Fine-Tuning Llama 3 and Using It Locally: A Step-by-Step Guide.

Đánh giá mô hình đã fine-tune

Để đánh giá mô hình đã fine-tune, chúng ta chuyển menu từ “Train” sang “Chat”. Sau đó, vào “Checkpoint path” và nạp adapter đã fine-tune đã lưu. 

thiết lập Checkpoint path trong LlaMA-Factory WebUI

Tiếp đó, nhấn nút “Load model” và chờ vài giây cho đến khi mô hình được nạp thành công. 

nạp mô hình đã fine-tune đã lưu

Cuộn xuống để thấy ô nhập chat và đặt một câu hỏi chung về dãy núi. 

Gõ câu hỏi đơn giản vào hộp chat.

Kết quả là bạn sẽ nhận được câu trả lời ngắn gọn, tương tự như bộ dữ liệu "wiki_qa".

Câu trả lời do mô hình Llama-3 đã fine-tune tạo ra

Hãy thử hỏi một câu khác. Ta có thể thấy mô hình hoạt động rất tốt. Trong vòng 30 phút, chúng ta đã fine-tune xong mô hình — điều mà dùng thư viện Transformers có thể mất hơn 4 giờ. Thật ấn tượng. 

Câu trả lời do mô hình Llama-3 đã fine-tune tạo ra

Đôi khi, fine-tune không phải là lời giải cho mọi vấn đề của LLM. Vì vậy, bạn nên đọc RAG vs Fine-Tuning: A Comprehensive Tutorial with Practical Examples để tìm hiểu phương án phù hợp nhất với bạn.

Các tính năng bổ sung của LlaMA-Factory WebUI

Ngoài fine-tune và kiểm thử mô hình, hệ sinh thái LLaMA-Factory còn cung cấp một số tính năng cốt lõi như dùng dữ liệu tùy chỉnh để fine-tune, hợp nhất và xuất mô hình, cũng như triển khai mô hình đã fine-tune bằng VLLM. 

Bộ dữ liệu tùy chỉnh

Để thêm bộ dữ liệu tùy chỉnh, chỉ cần sửa file data/dataset_info.json, và nó sẽ khả dụng trong LLaMA-Factory WebUI. 

Để biết chi tiết về định dạng tệp dữ liệu yêu cầu và cách sửa file dataset_info.json, vui lòng tham khảo tài liệu data/README.md. 

Bạn có thể chọn dùng bộ dữ liệu từ các hub Hugging Face hoặc ModelScope, hoặc nạp từ đĩa cục bộ.

mở file dataset_info.json trong Google Colab.

Xem trước file data/dataset_info.json

Hợp nhất và xuất mô hình 

Chúng ta có thể dễ dàng hợp nhất bộ điều hợp LoRA đã fine-tune với mô hình đầy đủ và xuất lên Hugging Face Hub bằng cách nhấp tab “Export”. 

Điều chỉnh kích thước shard tối đa, đặt đường dẫn thư mục xuất, và chỉ định ID kho trên Hugging Face Hub cùng thiết bị xuất. Quá trình sẽ mất vài phút để hợp nhất mô hình và tải tất cả tệp mô hình lên Hugging Face Hub.

Lưu ý: Bản miễn phí của Colab chỉ có 12GB RAM, trong khi hợp nhất LoRA của mô hình 8 tỷ tham số cần tối thiểu 16GB RAM. Do đó, thao tác này không thể thực hiện trên bản miễn phí của Colab.

Hợp nhất và xuất mô hình lên Hugging Face Hub

Hợp nhất và xuất mô hình đã fine-tune lên Hugging Face Hub

Triển khai với API kiểu OpenAI và vLLM

LlaMA-Factory đi kèm framework vLLM để phục vụ và triển khai mô hình. Bằng cách gõ lệnh sau, chúng ta có thể phục vụ mô hình Llama-3-8B-Instruct và truy cập nó qua OpenAI Python API hoặc RestAPI. 

$ API_PORT=8000 llamafactory-cli api examples/inference/llama3_vllm.yaml

Bạn thậm chí có thể sửa file hoặc tạo file .yaml của riêng mình để phục vụ mô hình đã fine-tune trong môi trường production. Tất cả những gì cần làm là cung cấp đường dẫn đến thư mục mô hình cục bộ hoặc trên Huggin Face Hub. 

Nội dung file llama3_vllm.yaml.

Nguồn: hiyouga/LLaMA-Factory (github.com)

Nếu bạn đang tìm giải pháp low-code tương tự để fine-tune LLMs, đặc biệt là mô hình độc quyền GPT-4o, chúng tôi có hướng dẫn toàn diện dành cho bạn. Xem hướng dẫn từng bước tại đây: Fine-Tuning OpenAI's GPT-4: A Step-by-Step Guide.

Kết luận

LLaMA-Factory WebUI đơn giản hóa quy trình cho cả người mới và chuyên gia. Bạn chỉ cần điều chỉnh vài tham số để fine-tune mô hình trên bộ dữ liệu tùy chỉnh. Với cùng giao diện, bạn có thể kiểm thử mô hình và xuất lên Hugging Face hoặc lưu cục bộ. Nhờ đó, bạn có thể triển khai mô hình vào production sau này bằng lệnh CLI api của LLaMA-Factory. Đơn giản là vậy. 

Thay vì viết hàng trăm dòng mã và xử lý sự cố khi fine-tune, bạn có thể đạt kết quả tương tự chỉ với vài cú nhấp chuột.

Trong hướng dẫn này, chúng ta đã tìm hiểu về LLaMA-Factory WebUI, cách fine-tune mô hình LLaMA-3-8B-Instruct trên bộ dữ liệu Wikipedia Q&A bằng framework này. Ngoài ra, chúng ta đã kiểm thử mô hình đã fine-tune bằng menu chatbot tích hợp và khám phá các tính năng bổ sung mà LLaMA-Factory cung cấp.

Học cách fine-tune LLMs bằng Python bằng cách đăng ký miễn phí Webinar sắp tới Fine-Tuning Your Own Llama 3 Model.


Abid Ali Awan's photo
Author
Abid Ali Awan
LinkedIn
Twitter

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.

Chủ đề
Trí tuệ Nhân tạo
Mô hình Ngôn ngữ Lớn

Các khóa học LLM hàng đầu trên DataCamp

Khóa học

Phát triển ứng dụng LLM với LangChain

3 giờ
51.9K
Khám phá cách xây dựng các ứng dụng tích hợp AI bằng cách sử dụng LLM, prompt, chain và agent trong LangChain.
Xem chi tiếtRight Arrow
Bắt Đầu Khóa Học
Xem thêmRight Arrow
Liên quan

blog

Claude Opus 4.6: Tính năng, Điểm chuẩn, Bài kiểm tra thực hành và hơn thế nữa

Mô hình mới nhất của Anthropic dẫn đầu ở mã hóa tác tử và lập luận phức tạp. Thêm vào đó, nó có cửa sổ ngữ cảnh 1M.
Matt Crabtree's photo

Matt Crabtree

10 phút

Xem ThêmXem Thêm