browser-use là gì: AI agent tự điều khiển trình duyệt
browser-use là gì, cài thế nào: thư viện Python mã nguồn mở cho AI agent tự bấm, gõ, đọc web. Bản 0.1.29 chạy được với DeepSeek-R1.

Thử hình dung thế này. Mỗi sáng thứ Hai, chị nhân viên phòng mua hàng mở năm trang web nhà cung cấp, gõ mã hàng, chép giá vào Excel. Mất trọn buổi sáng, và tuần nào cũng y như vậy. Chị từng nghĩ "giá mà có ai làm hộ", nhưng nhờ IT viết công cụ thì trang web đổi giao diện một cái là công cụ hỏng.
browser-use là gì? browser-use là thư viện Python mã nguồn mở giúp AI agent tự điều khiển trình duyệt: mở trang, bấm nút, gõ ô tìm kiếm, đọc kết quả rồi báo lại. Dự án do Magnus Müller và Gregor Žunič làm, ra mắt với bản 0.1.0 ngày 06/11/2024. Bài này viết về bản 0.1.29 phát hành ngày 26/01/2025, bản giúp browser-use chạy được với DeepSeek-R1.
Đọc nhanh trong 30 giây
- browser-use là thư viện Python mã nguồn mở (giấy phép MIT) cho AI tự bấm, gõ, đọc trên trình duyệt.
- Anh chị viết việc bằng một câu, agent tự chia thành từng thao tác. Bản 0.1.29 (26/01/2025) chạy được với DeepSeek-R1.
- Cài bằng
pip install browser-usevàplaywright install, cần Python 3.11 trở lên.- Hợp với việc lặp lại trên web như tra giá, thu thập thông tin, với điều kiện có người biết Python cơ bản trông coi.
browser-use là gì, làm được việc gì?
browser-use là cầu nối giữa mô hình ngôn ngữ và trình duyệt. README tóm gọn: cho AI điều khiển trình duyệt của anh chị.
Ví von thế này: một chuyến xe cần người cầm lái và người chỉ đường. Mô hình AI (GPT-4o, Claude, Gemini, DeepSeek) là người ngồi ghế phụ đọc bản đồ, quyết định rẽ trái hay rẽ phải. browser-use là đôi tay trên vô lăng, làm đúng thao tác được bảo. Trước đây muốn tự động hóa web, người làm kỹ thuật phải vẽ sẵn lộ trình từng mét; đường đổi một chút là xe đâm vào lề. Giờ người chỉ đường nhìn đường thật mà quyết.

Mỗi vòng là một lần hỏi mô hình "giờ bấm gì tiếp?".
Các ví dụ trong README lúc này:
- Viết thư trong Google Docs rồi lưu thành PDF.
- Đọc CV, tìm việc phù hợp, lưu danh sách ra file rồi mở từng tab để nộp.
- Tìm chuyến bay trên trang đặt vé theo ngày đi, ngày về.
- Lọc mô hình trên Hugging Face theo giấy phép, sắp theo lượt thích, lưu 5 kết quả đầu.
Bản 0.1.29 có gì mới?
Bản 0.1.29 cho phép browser-use dùng DeepSeek-R1 làm bộ não. Ghi chú phát hành nói rõ R1 chưa được làm để gọi công cụ (tool calling), nên nhóm phát triển viết thêm phần đọc câu trả lời của R1 để agent vẫn chạy được. Giống thuê một phiên dịch đứng giữa: người chỉ đường nói kiểu của mình, phiên dịch chuyển thành lệnh mà tay lái hiểu.
Tài liệu "Supported Models" cùng thời điểm liệt kê các nhóm mô hình:

GPT-4o được khuyên dùng; hai bản DeepSeek phải tắt chế độ nhìn ảnh.
| Mô hình | Ghi chú theo tài liệu |
|---|---|
| OpenAI GPT-4o | Được khuyên dùng để có kết quả tốt nhất |
| Anthropic, Azure OpenAI, Gemini | Có ví dụ khởi tạo sẵn |
| DeepSeek-V3 | Tắt chế độ nhìn ảnh (use_vision=False) |
| DeepSeek-R1 | Không hỗ trợ nhìn ảnh; tài liệu nói có thể chạy qua Ollama nhưng nhóm chưa thử |
| Ollama | Chạy mô hình trên máy riêng |
Vài bản ngay trước đó cũng đáng biết. Bản 0.1.27 (22/01/2025) thêm "initial actions" để agent mở sẵn một trang trước khi hỏi mô hình, thêm callback theo dõi từng bước và cho phép loại bỏ một số thao tác. Bản 0.1.24 (20/01/2025) tự chọn cách gọi công cụ phù hợp với từng mô hình. Nếu chưa rõ R1 là gì, anh chị đọc bài DeepSeek-R1 là gì.
Cài browser-use và chạy agent đầu tiên trong 5 phút
Các bước dưới đây chép từ README tại bản 0.1.29. Cần Python 3.11 trở lên, theo file pyproject.toml.

Hai lệnh cài, một file khóa, mười dòng Python.
- Cài thư viện:
pip install browser-use
- Cài trình duyệt đi kèm cho Playwright, công cụ điều khiển trình duyệt mà browser-use dùng bên dưới:
playwright install
- Tạo file
.envchứa khóa API:
OPENAI_API_KEY=
- Viết file Python chạy agent:
from langchain_openai import ChatOpenAI
from browser_use import Agent
import asyncio
from dotenv import load_dotenv
load_dotenv()
async def main():
agent = Agent(
task="Go to Reddit, search for 'browser-use' in the search bar, click on the first post and return the first comment.",
llm=ChatOpenAI(model="gpt-4o"),
)
result = await agent.run()
print(result)
asyncio.run(main())
Mẹo
Muốn có giao diện để thử thay vì viết code, README trỏ tới repo browser-use/web-ui. Đây là đường vào nhẹ nhàng hơn cho người chưa quen Python, dù vẫn phải cài trên máy.
Giao việc tra giá cho DeepSeek-R1 ra sao?
Thư mục examples/models của bản 0.1.29 có file deepseek-r1.py. Phần chính như sau:
agent = Agent(
task=('go to amazon.com, search for laptop, sort by best rating, and give me the price of the first result'),
llm=ChatOpenAI(
base_url='https://api.deepseek.com/v1',
model='deepseek-reasoner',
api_key=SecretStr(api_key),
),
use_vision=False,
max_failures=2,
max_actions_per_step=1,
)
Khóa đặt trong biến môi trường DEEPSEEK_API_KEY. Quay lại chị phòng mua hàng ở đầu bài: chỉ cần đổi câu task thành "Vào trang nhà cung cấp, tìm mã hàng A123, chép giá và tình trạng tồn kho."
Một tình huống nữa: dùng trình duyệt đã đăng nhập sẵn. Tài liệu "Connect to your Browser" cho phép agent mở Chrome thật của anh chị, kèm mọi tài khoản đã đăng nhập, bằng cách khai báo chrome_instance_path trong BrowserConfig. Tài liệu nhắc phải đóng hết cửa sổ Chrome đang chạy trước.
Lưu ý
- Tài khoản thật là rủi ro thật: agent dùng trình duyệt đã đăng nhập có thể bấm nhầm, gửi nhầm. Thử trên tài khoản phụ hoặc trang không có thanh toán.
- Chi phí API: mỗi bước agent gửi trạng thái trang cho mô hình. Tài liệu không ghi chi phí trung bình mỗi việc.
- DeepSeek-R1 không nhìn ảnh: agent chỉ đọc cấu trúc trang, nên trang nhiều hình hoặc giao diện lạ dễ làm agent lạc.
- Còn non: phiên bản vẫn ở 0.1, phát hành dồn dập (từ 0.1.18 tới 0.1.29 chỉ trong tháng 1/2025). Danh sách việc cần làm còn có cải thiện bộ nhớ, tự sửa lỗi, cho người duyệt giữa chừng.
- Điều khoản trang web: nhiều trang cấm truy cập tự động. Đọc kỹ trước khi cho agent chạy hàng loạt.
Nhận xét của chuyên gia
browser-use đáng chú ý vì nó biến việc "dặn AI làm trên web" từ demo thành vài dòng Python. Kịch bản giờ là một câu tiếng Anh hoặc tiếng Việt, mô hình tự tìm nút, nên trang đổi giao diện không còn là thảm họa như trước.
Hợp với ai: phòng mua hàng tra giá nhà cung cấp; phòng kinh doanh thu thập thông tin công khai; bộ phận vận hành phải vào nhiều cổng quản trị không có API. Điều kiện là có một người biết Python cơ bản để dựng và trông.
Chưa hợp với ai: việc cần chính xác tuyệt đối mỗi lần như nộp tờ khai thuế, chuyển tiền; việc đã có API chính thức, vì gọi API rẻ và ổn định hơn nhiều; doanh nghiệp chưa có ai đọc được log khi agent chạy sai.
Cách bắt đầu của tôi: chỉ cho agent làm việc đọc (tra cứu, chép số liệu), chưa cho gửi hay xác nhận gì. Chọn một việc lặp lại hằng tuần, chạy song song với người làm tay trong hai tuần, so kết quả rồi mới mở rộng.
Một câu để nhớ: cho AI cầm vô lăng thì được, nhưng chặng đầu anh chị vẫn nên ngồi ghế phụ.
Câu hỏi thường gặp
browser-use có miễn phí không?
Thư viện browser-use miễn phí theo giấy phép MIT. Anh chị trả tiền cho mô hình AI dùng làm bộ não, ví dụ API của OpenAI hoặc DeepSeek, trừ khi chạy mô hình trên máy riêng qua Ollama.
browser-use dùng được với DeepSeek-R1 không?
Được, từ bản 0.1.29 phát hành ngày 26/01/2025. Cần tắt chế độ nhìn ảnh vì DeepSeek-R1 không đọc ảnh, ví dụ mẫu dùng model='deepseek-reasoner' qua API của DeepSeek.
Không biết lập trình có dùng được browser-use không?
Khó. browser-use là thư viện Python, cần viết vài dòng code. Người không lập trình có thể thử repo browser-use/web-ui có giao diện, nhưng vẫn phải cài đặt trên máy.
browser-use có dùng Chrome đang đăng nhập của tôi được không?
Được. Tài liệu hướng dẫn khai báo đường dẫn Chrome trong BrowserConfig và đóng hết cửa sổ Chrome trước khi chạy agent.
Các mốc tiếp theo của agent tự động hóa nằm trong chuỗi dòng thời gian AI.
Nguồn tham khảo: https://github.com/browser-use/browser-use/releases/tag/0.1.29


