Một Agent trong một cửa sổ là đủ để trình diễn. Trong môi trường vận hành, hàng chục tác vụ đồng thời cần các môi trường tách biệt; nếu dùng chung, phiên đăng nhập sẽ lẫn nhau, tab tranh quyền điều khiển và lỗi trở nên khó xác định.
Một cửa sổ trình duyệt là đủ để trình diễn AI Agent có thể làm gì. Khi đưa vào quy trình kinh doanh thực tế, nhu cầu nhanh chóng tăng thành hàng chục cửa sổ và chúng phải không can thiệp lẫn nhau. Nguyên nhân không nằm ở chính Agent mà ở môi trường trình duyệt bên dưới nó.
Điều gì xảy ra khi dùng chung một môi trường
Vấn đề dễ thấy nhất là cookie và trạng thái đăng nhập làm nhiễu lẫn nhau. Trong cùng một thư mục dữ liệu trình duyệt, nếu hai tác vụ lần lượt đăng nhập các tài khoản khác nhau, phiên đăng nhập sau có thể ghi đè phiên trước. Nếu một tác vụ xóa bộ nhớ đệm, trạng thái trang của tác vụ khác cũng có thể mất theo.
Tiếp theo là tranh chấp tài nguyên. Trong một phiên bản trình duyệt, tab, tiêu điểm, thư mục tải xuống và cửa sổ bật lên đều là tài nguyên dùng chung. Khi hai tác vụ cùng mở tab mới, việc xác định tác vụ nào đang điều khiển trang nào trở nên không rõ ràng. Một hộp thoại do tác vụ này mở có thể làm script của tác vụ kia bị kẹt. Xung đột trạng thái đăng nhập, ghi đè dữ liệu và can thiệp lẫn nhau gần như là hệ quả tất yếu của việc chạy đồng thời.
Vấn đề thứ ba xuất hiện sau khi có lỗi. Khi đó rất khó biết logic script sai hay môi trường đã bị một tác vụ khác tác động ở một bước nào đó. Nếu nhiều tác vụ dùng chung một tiến trình và một nhật ký, biểu hiện lỗi cũng có thể không nhất quán, khiến chi phí khắc phục tăng mạnh.
Còn một rủi ro ít trực quan hơn: nhiều danh tính chạy lâu dài trong cùng một môi trường sẽ để lại tín hiệu liên kết. Tham số thiết bị, trạng thái lưu trữ và điểm ra mạng đều giống nhau, nên nền tảng dễ xem đây là hoạt động hàng loạt từ cùng một thiết bị. Nếu một tài khoản bị đánh dấu bất thường, các tài khoản khác cũng có thể bị ảnh hưởng.
Mở nhiều cửa sổ không đồng nghĩa với cô lập
Phản ứng đầu tiên của nhiều người là tự mở nhiều cửa sổ. Trông có vẻ tách biệt nhưng thực tế chúng dùng chung một hồ sơ trình duyệt: cùng cookie, cùng bộ nhớ cục bộ và cùng thông tin thiết bị. Các cửa sổ có thể thấy trạng thái đăng nhập của nhau và thao tác ở một cửa sổ có thể ảnh hưởng cửa sổ khác.
Cô lập thực sự phải áp dụng ở cả thư mục dữ liệu và tham số môi trường. Mỗi môi trường cần thư mục lưu trữ riêng, bộ tham số thiết bị riêng — độ phân giải, ngôn ngữ, múi giờ, phông chữ, Canvas, WebGL và các yếu tố tương tự — cùng điểm ra mạng riêng. Thiếu một trong ba yếu tố thì việc cô lập vẫn chưa hoàn chỉnh. Ngay cả khi môi trường đã tách, dùng chung một điểm ra mạng vẫn có thể kích hoạt việc liên kết.

Chi phí của cô lập và giá trị nhận lại
Cô lập không miễn phí. Mỗi môi trường đi kèm một tiến trình trình duyệt độc lập và một thư mục dữ liệu riêng. Khi số lượng môi trường tăng, bộ nhớ và CPU sẽ chịu áp lực trước tiên. Nếu hàng chục môi trường chạy trên một máy, nên tính trước phần tài nguyên còn dư thay vì chờ hệ thống lỗi rồi mới xử lý.
Có một số điểm có thể cân bằng: thu hồi những môi trường ít dùng và khởi động lại khi cần; phân phối tác vụ theo mức tải sang nhiều máy thay vì dồn tất cả vào một máy; đặt vòng đời rõ ràng cho môi trường để không giữ hàng trăm môi trường chạy liên tục. Cấu trúc tác vụ cũng quan trọng. Các tác vụ tuần tự của cùng một tài khoản không cần tách thành nhiều môi trường; làm vậy chỉ lãng phí tài nguyên.
Ở chiều ngược lại là lợi ích. Khi cô lập được thực hiện đúng, biểu hiện lỗi trở nên ổn định: vấn đề thuộc về một môi trường cụ thể chứ không còn là hiện tượng khó hiểu. Khi mở rộng quy mô, tính dự đoán này có giá trị lớn hơn nhiều so với lượng tài nguyên nhỏ tiết kiệm được nhờ dùng chung.
Ba việc cần đặt ở lớp môi trường khi mở rộng quy mô
Thứ nhất là lập lịch theo lô. Môi trường phải có thể được cấp phát và giải phóng như tài nguyên tính toán, hỗ trợ tạo theo nhu cầu, khởi động hàng loạt, kiểm soát đồng thời, thử lại sau lỗi và tự động thu hồi, thay vì tạo và dọn từng môi trường một trong script.
Thứ hai là điểm ra mạng độc lập. Mỗi môi trường phải gắn với điểm ra riêng và khu vực của điểm ra cần phù hợp với tham số địa lý của môi trường. Đây là yếu tố dễ bị bỏ qua nhưng lại là điều kiện tiên quyết để toàn bộ cơ chế cô lập có ý nghĩa.
Thứ ba là trạng thái có thể truy vấn. Bất cứ lúc nào cũng cần biết môi trường nào đang chạy, môi trường nào đang rảnh và môi trường nào bất thường. Agent hoạt động không cần người giám sát; nếu không truy vấn được trạng thái, khi có sự cố chỉ còn cách đoán.
Cả ba khả năng này đều không phù hợp để nhồi vào script. Chúng cần lưu trữ, cấu hình và lập lịch ở cấp môi trường. Một số công cụ quản lý nhiều môi trường hoạt động chính ở lớp này. PurpleMark là một trong số đó, biến môi trường trình duyệt thành tài nguyên có thể cô lập, lập lịch theo lô và gọi qua giao diện.
Khi nào không cần nhiều môi trường
Nếu Agent chỉ chạy một tài khoản với tần suất thấp, một trình duyệt thông thường thực sự là đủ và việc cô lập bổ sung chỉ làm tăng gánh nặng bảo trì. Nhưng nếu xuất hiện bất kỳ tình huống nào sau đây, lớp môi trường nên được tách riêng: tác vụ cần chạy song song, nhiều danh tính cần truy cập cùng một nền tảng, trạng thái đăng nhập cần được duy trì lâu dài hoặc quy mô đồng thời sẽ tiếp tục tăng.
Điểm chung của các tình huống này là giống nhau: vấn đề không nằm ở việc Agent có đủ thông minh hay không, mà ở việc môi trường bên dưới có đủ sạch và tách biệt hay không.
Ranh giới
Dù chọn phương án nào, ranh giới về quy tắc vẫn không thay đổi: tuân thủ điều khoản dịch vụ và quy tắc robots của từng nền tảng, không dùng thông tin danh tính giả, không vượt qua biện pháp bảo vệ kỹ thuật, kiểm soát tần suất yêu cầu và không ảnh hưởng đến hoạt động bình thường của dịch vụ bên kia.


