Bài học cay đắng của browser agent: Để AI tự quyết định thay vì áp đặt giới hạn

Công nghệ15 tháng 9, 2026·6 phút đọc

Browser Use chia sẻ hành trình từ việc tự định nghĩa trạng thái và hành động cho AI đến việc để mô hình tự do chọn lựa qua giao thức CDP. Kết quả cho thấy cách tiếp cận này giúp giảm mạnh lượng token tiêu thụ và xử lý được những tình huống mà phương pháp cũ bó tay.

Bài học cay đắng của browser agent: Để AI tự quyết định thay vì áp đặt giới hạn

Khi Browser Use ra mắt vào tháng 11 năm 2024, GPT-4o hoàn toàn chưa được huấn luyện để sử dụng máy tính. Dựa trên cơ chế dự đoán token tiếp theo, mô hình không thực sự hiểu nó có thể làm gì trên một trang web. Đội ngũ phát triển buộc phải chỉ rõ từng bước.

Giao diện browser harness trên trình duyệtGiao diện browser harness trên trình duyệt

Khi các mô hình ngày càng giỏi lập trình, Browser Use chuyển từ việc định nghĩa sẵn trạng thái và hành động sang dùng code: đầu tiên mô hình tự viết hành động, sau đó tự viết cả phần quan sát. Hiện tại nó làm cả hai thông qua giao thức CDP thô, nằm trong một agent harness có sẵn.

Định nghĩa không gian trạng thái và hành động

Giai đoạn đầu, nhóm phát triển định nghĩa trạng thái: đây là những gì có trên trang, đây là những gì có thể click. Sau đó là không gian hành động: click, gõ phím, cuộn trang. Mọi tương tác đều phải tuân theo những quy tắc đó.

Vòng lặp ban đầu rất đơn giản: chúng tôi chọn những gì mô hình được thấy và được làm. Mô hình chọn một hành động, chúng tôi thực thi rồi gửi lại trạng thái tiếp theo.

Nhưng tự động hóa trình duyệt là một trò chơi của các trường hợp ngoại lệ. Mỗi ngoại lệ mới lại cần thêm một bản vá. Cách tiếp cận này nhanh chóng bộc lộ giới hạn.

Thay hành động cố định bằng code

Các mô hình đang tiến bộ vượt bậc về khả năng lập trình. Nhóm thử nghiệm thực thi JavaScript vào tháng 9 năm 2025 và notebook lưu trữ liên tục vào tháng 10. Thay vì chọn hành động, mô hình có thể viết hẳn một chương trình.

Mô hình tự viết code hành động thay vì chọn từ danh sách có sẵnMô hình tự viết code hành động thay vì chọn từ danh sách có sẵn

Nhờ đó, những tác vụ như vẽ chữ ký hay lặp qua danh sách bình luận không còn cần thêm hành động mới. Các biến được lưu trữ liên tục, cho phép mô hình kiểm tra kết quả và tiếp tục thực hiện.

Agent Hermes thay thế 12 công cụ trình duyệt bằng một lệnh browser_exec duy nhất, chạy trên Browser Use CLI. Lượng token trung bình giảm 60% với Opus 4.866% với Kimi K3. Cả hai phiên bản đều giải quyết thành công 18/18 lượt chạy cho mỗi mô hình, tương ứng sáu tác vụ nhân ba lần chạy.

Giới hạn của trạng thái định nghĩa sẵn

Hành động đã được mở, nhưng nhóm vẫn là bên quyết định mô hình được thấy gì. Đó trở thành vấn đề tiếp theo.

Một nút chấp nhận cookie có thể hiện rõ trên màn hình nhưng lại biến mất khỏi trạng thái được gửi đi. Có thể cây trợ năng không hiển thị nó, hoặc quá trình xử lý của hệ thống đã loại bỏ nó. Dù lý do là gì, mô hình không bao giờ nhìn thấy nút đó.

Điển hình là trường hợp dropdown trong hệ thống hồ sơ y tế điện tử (EHR) với cấu trúc DevTools rút gọn:

#shadow-root (open)
#document
#shadow-root (closed)
Choose...

Các thuật toán phỏng đoán trạng thái không thể lường trước mọi trang web. Mô hình đã được tự do hành động, nhưng vẫn phải nhìn qua lăng kính giả định của đội phát triển.

Loại bỏ trạng thái định nghĩa sẵn

Câu hỏi đặt ra: điều gì xảy ra nếu để mô hình tự viết cả phần quan sát?

Nhóm cấp cho LLM quyền truy cập trực tiếp vào CDP (Chrome DevTools Protocol). Không còn danh sách bắt buộc các phần tử có thể click. Mô hình có thể viết code để kiểm tra DOM, chụp ảnh màn hình hoặc nhìn vào bên trong một frame cụ thể.

Trình duyệt vẫn có trạng thái. Thứ biến mất là yêu cầu mọi thứ phải khớp với một cách biểu diễn định sẵn. Ảnh chụp màn hình có thể trả lời câu hỏi này, truy vấn DOM có thể trả lời câu hỏi khác. Mô hình tự quyết định nó cần thấy gì.

Tại sao chọn CDP thay vì Playwright?

CDP là giao thức điều khiển gốc của Chrome, cho phép mô hình sử dụng trực tiếp. Với Chrome, CDP mang lại quyền truy cập nằm dưới lớp API trình duyệt của Playwright.

Playwright bổ sung các giả định, chẳng hạn như locator không thể nhìn thấy các closed shadow root. CDP có thể kiểm tra trực tiếp những root này. Playwright cũng có expose CDP, nhưng Browser Use quyết định lấy quyền truy cập trực tiếp làm mặc định.

Một browser harness đơn giản

Pi, Codex và OpenCode đã xử lý vòng lặp agent. Các coding agent hiện có hàng triệu người dùng thử nghiệm đủ loại công việc. Chính quá trình kiểm thử đó là lý do để tái sử dụng harness của họ.

Một agent chạy QA suốt năm tiếng đồng hồ không nên thất bại chỉ vì một lỗi trong vòng lặp. Nhóm từng gặp tình huống nén ngữ cảnh tạo ra lượng context lớn đến mức kích hoạt nén ngay lập tức lần nữa. Khách hàng không nên phải tự phát hiện những lỗi như vậy.

Vòng lặp React trong kiến trúc agentVòng lặp React trong kiến trúc agent

Giải pháp là thêm một công cụ trình duyệt đơn giản: code lưu trữ liên tục, với văn bản, ảnh chụp màn hình và lỗi được trả về cho mô hình. Một lệnh CLI hoặc tool call kết nối agent với CDP.

Từ Agent SDK ra mắt tháng 1 năm 2026 đến Browser Harness tháng 4, đây đã trở thành hướng đi chính. Browser Harness, BrowserCode và Browser Use Pi có cách tiếp cận khác nhau, nhưng tất cả đều để mô hình tự chọn những gì nó muốn thấy và muốn làm.

Bài học cay đắng thực sự là gì?

Bài học cay đắng của Sutton ủng hộ các phương pháp tổng quát, có khả năng cải thiện khi được cung cấp thêm năng lực tính toán. Với Browser Use, điều đó được cụ thể hóa thành ba nguyên tắc:

  • Tái sử dụng một agent harness đã được chứng minh.
  • Phơi bày giao diện nền tảng đơn giản nhất mà mô hình có thể dùng tốt.
  • Để mô hình tự chọn quan sát và hành động của chính nó.

Trình duyệt, máy tính, văn bản, âm nhạc — cùng một nguyên tắc đều được áp dụng. Khi các mô hình thay đổi, hãy thiết kế lại harness.

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