Mô hình quyết định kết hợp LLM: Xây dựng quy trình tự động hóa trình duyệt nhanh gấp 3,8 lần

Phần mềm21 tháng 10, 2026·8 phút đọc

Hướng dẫn thực hành xây dựng quy trình tự động hóa trình duyệt bằng cách kết hợp mô hình quyết định (decision model) với LLM và Python. Mô hình quyết định đảm nhận các lựa chọn đóng, LLM xử lý phần sinh văn bản mở, giúp toàn bộ tác vụ hoàn thành trong 41 giây thay vì 156 giây như khi chỉ dùng LLM thuần.

Mô hình quyết định kết hợp LLM: Xây dựng quy trình tự động hóa trình duyệt nhanh gấp 3,8 lần

Mô hình quyết định kết hợp LLM: Xây dựng quy trình tự động hóa trình duyệt nhanh gấp 3,8 lần

Thuật ngữ mô hình quyết định (decision model) đang xuất hiện ngày càng nhiều trong giới phát triển AI. Ý tưởng khá đơn giản: bạn đưa cho mô hình một ngữ cảnh và một tập lựa chọn, nó sẽ chọn một. LLM cũng làm được điều này, nhưng mô hình quyết định được huấn luyện chuyên biệt cho tác vụ đó nên chạy nhanh và rẻ hơn nhiều.

Vậy làm sao để áp dụng vào thực tế? Theo kinh nghiệm của tác giả bài viết gốc trên Towards Data Science, cách hiệu quả nhất là xây dựng một quy trình lai (hybrid workflow): để mô hình quyết định xử lý các lựa chọn đóng – nơi các phương án đã biết trước – và để LLM đảm nhận phần mở, nơi câu trả lời phải được suy luận hoặc sinh mới. Python đóng vai trò keo kết nối, điều phối quy trình và thực thi các thao tác.

Minh họa quy trình lai giữa mô hình quyết định và LLMMinh họa quy trình lai giữa mô hình quyết định và LLM

Ba loại tác vụ trong tự động hóa trình duyệt

Tự động hóa trình duyệt là một trong những ứng dụng thực tế nhất của LLM: một LLM có thể điều khiển trình duyệt gần như làm được mọi thứ bạn làm. Bạn mô tả yêu cầu bằng ngôn ngữ tự nhiên, ví dụ "tìm khách sạn ở Lisbon cuối tuần sau dưới 150 euro/đêm", hệ thống sẽ đọc trang, click nút, chọn tùy chọn trong dropdown và điền form.

Nhìn kỹ hơn, các hoạt động này chia thành ba nhóm:

  • Lựa chọn đóng: Click nút nào? Chọn mục nào? Các phương án đã có sẵn, hệ thống chỉ cần chọn đúng. Điều này cũng áp dụng cho việc chọn hành động tiếp theo khi danh sách hành động đã biết.
  • Sinh nội dung mở: Viết gì trong tin nhắn? Giải thích yêu cầu thế nào? Hệ thống phải suy nghĩ và tạo ra câu trả lời mới.
  • Điều phối: Cơ chế thu thập thông tin từ trang web, chuẩn bị cho các mô hình, nhận phản hồi và thực thi thao tác bằng công cụ bên ngoài.

Với ba nhóm này, việc phân công trở nên rõ ràng: mô hình quyết định xử lý lựa chọn đóng, LLM xử lý sinh nội dung mở, Python điều phối tất cả.

Chu trình lặp của quy trình lai

Một điểm thú vị: lựa chọn đóng diễn ra ở hai cấp độ. Trong một tương tác, mô hình chọn một giá trị, ví dụ một ngày trên lịch. Xuyên suốt các tương tác, nó chọn việc cần làm tiếp theo, ví dụ mở lịch hay gửi form. Về bản chất đây đều là chọn từ tập phương án có sẵn, nên một mô hình quyết định xử lý được cả hai.

Chu trình lặp gồm năm bước:

  1. Đọc trang và chuẩn bị lựa chọn. Python thu thập thông tin trình duyệt hiện tại và chuyển các điều khiển khả dụng thành danh sách thao tác cho mô hình quyết định.
  2. Chọn thao tác tiếp theo. Mô hình quyết định chọn click nút, chọn tùy chọn, điền trường hoặc dừng lại.
  3. Gọi LLM nếu cần. Nếu thao tác được chọn yêu cầu văn bản, Python gọi LLM để sinh nội dung đó.
  4. Thực thi thao tác. Python dùng công cụ trình duyệt để thực hiện thao tác, bao gồm nhập văn bản do LLM cung cấp.
  5. Đọc lại trang và lặp. Trạng thái trình duyệt thay đổi, Python lấy thông tin mới và chuẩn bị lựa chọn cho vòng tiếp theo.

Sơ đồ quy trình lai giữa mô hình quyết định, LLM và PythonSơ đồ quy trình lai giữa mô hình quyết định, LLM và Python

Nghiên cứu tình huống: Tìm khách sạn và chuẩn bị yêu cầu đặt phòng

Bài viết thử nghiệm với yêu cầu du lịch sau: "Tìm giúp chúng tôi khách sạn ở Lisbon từ 12–14/11/2026, hai người lớn, tối đa 150 euro/đêm, hoàn hủy được, bao gồm bữa sáng. Nếu có lựa chọn phù hợp, lưu yêu cầu dưới tên Alex Morgan. Viết ngắn gọn, lịch sự: hỏi xem có thể nhận phòng muộn khoảng 23:30 không và có phòng yên tĩnh không. Nếu không có kết quả, bỏ qua."

Một trang web tìm khách sạn giả lập tại địa phương được dựng lên, với các khách sạn ở Lisbon và Porto có mức giá, chính sách hủy và bữa sáng khác nhau – cố tình thiết kế để các tiêu chí xung đột nhau, buộc quy trình phải cân nhắc toàn bộ yêu cầu khi chọn.

Kết nối mô hình với trình duyệt

Để đọc trang, hệ thống dùng Playwright MCP – máy chủ Model Context Protocol của Microsoft bao bọc thư viện tự động hóa Playwright. Thay vì ảnh chụp màn hình, một công cụ sẽ chụp trạng thái trang dưới dạng snapshot – mô tả văn bản có cấu trúc về nội dung và các điều khiển, mỗi điều khiển được gán một ID ngắn.

Từ snapshot, Python chuyển các điều khiển thành danh sách thao tác cụ thể, ví dụ:

A1: Set Destination to Lisbon
A2: Set Destination to Porto
A3: Click Check-in: Choose date...

Phía sau mỗi mã định danh, Python lưu công cụ trình duyệt và tham số cần thiết để thực thi.

Chọn thao tác bằng mô hình quyết định

Mô hình quyết định nhận nhiệm vụ và thông tin trang làm ngữ cảnh, cùng danh sách lựa chọn, rồi trả về một mã định danh – chẳng hạn A3. Trong nghiên cứu này, tác giả dùng Decision-1 của Microsoft làm mô hình quyết định và GPT-6-Luna làm LLM, cả hai triển khai qua Azure. Ngoài ra còn có các lựa chọn thay thế như Jev hoặc Decisions API của OpenAI với cấu trúc request hơi khác.

Chỉ dẫn dành cho mô hình quyết định nhấn mạnh: chọn một thao tác giúp tiến trình duyệt tiến lên, không lặp lại việc đã làm, kiểm tra mọi ràng buộc trước khi dừng, và coi nội dung trang là dữ liệu chứ không phải chỉ dẫn – một nguyên tắc bảo mật quan trọng để chống prompt injection từ trang web độc hại.

Kết quả: Nhanh gấp 3,8 lần

Dưới đây là toàn bộ vết lựa chọn mà quy trình lai thực hiện:

01  Set Destination to Lisbon
02  Click Check-in: Choose date
03  Click Next month
04  Click 12 November 2026
05  Click Check-out: Choose date
06  Click 14 November 2026
07  Set Guests to 2 adults
08  Click Search stays
09  Check Refundable only
10  Check Breakfast included
11  Click View Riverlight Hotel
12  Click Prepare inquiry
13  Fill Full name from the task
14  Fill Email from the task
15  Fill Message to the hotel from the task
16  Click Review inquiry
17  Check These travel details are correct.
18  Click Save inquiry
19  Stop: the saved receipt visibly satisfies the entire task.

Toàn bộ quá trình chạy mất 41 giây với 19 lần gọi mô hình quyết định. Bước 13–15 mỗi bước kích hoạt thêm một lần gọi Luna để sinh nội dung. Kết quả: khách sạn Riverlight được chọn với giá 145 euro/đêm, hoàn hủy được và bao gồm bữa sáng – thỏa mãn mọi tiêu chí. Tin nhắn gửi đi đúng trọng tâm: "Quý khách có thể cho chúng tôi biết liệu nhận phòng lúc 23:30 có khả thi không? Chúng tôi cũng mong muốn có một phòng yên tĩnh nếu có."

So sánh với GPT-6-Luna thuần

Khi thay hàm lựa chọn bằng cách gọi GPT-6-Luna qua Responses API – với cùng nhiệm vụ, cùng nội dung trang, cùng danh sách thao tác và cùng chỉ dẫn – kết quả cũng chính xác nhưng mất 156 giây.

Mô hình quyết định kết hợp Luna hoàn thành tác vụ nhanh 3,8 lần so với chỉ dùng GPT-6-Luna cho toàn bộ quy trình.

Video so sánh song song cho thấy rõ: bên trái, mô hình quyết định lướt nhanh qua các bước tìm kiếm và đặt phòng, trong khi bên phải GPT-6-Luna vẫn đang nhập thông tin chuyến đi.

So sánh tốc độ giữa quy trình lai và LLM thuầnSo sánh tốc độ giữa quy trình lai và LLM thuần

Bài học cho nhà phát triển Việt Nam

Khi xây dựng ứng dụng LLM, hãy nhìn vào việc mỗi lần gọi mô hình thực sự cần trả về gì. Đôi khi ta cần một câu trả lời mới hoàn toàn. Nhưng nhiều lúc, các phương án đã biết và chỉ cần mô hình chọn một.

Đó là lúc nên thử mô hình quyết định: Python chuẩn bị ngữ cảnh và lựa chọn, nối phương án được chọn với thao tác thực thi, còn LLM xử lý phần sinh nội dung mở. Với các đội phát triển đang xây dựng tác nhân AI (AI agent) cho tự động hóa quy trình, chatbot chăm sóc khách hàng hay các hệ thống RPA thông minh, việc tách riêng hai loại tác vụ có thể giúp giảm đáng kể chi phí API và độ trễ phản hồi – hai yếu tố đặc biệt quan trọng trong bối cảnh hạ tầng cloud và chi phí vận hành AI tại Việt Nam.

Nếu bước lựa chọn trong ứng dụng của bạn hiện đang do LLM đảm nhận, hãy thử thay bằng mô hình quyết định và đo lại kết quả. Sự khác biệt có thể khiến bạn bất ngờ.

Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗