2 điểm bởi GN⁺ 2023-11-10 | 1 bình luận | Chia sẻ qua WhatsApp
  • Đây là một dự án thử nghiệm xem liệu có thể duyệt web chỉ bằng năng lực thị giác của GPT-4V hay không, đồng thời cung cấp cho mô hình đa phương thức một giao diện để tương tác với web
  • Dự án xử lý vấn đề rằng nếu không cung cấp DOM của trình duyệt dưới dạng văn bản, mô hình sẽ khó xác định nó đang muốn nhấp vào đâu
  • Sử dụng tiện ích mở rộng Chrome Vimium để có thể duyệt web chỉ bằng bàn phím, qua đó thử nghiệm cách mô hình tương tác với web
  • Luồng chạy gồm cài đặt các yêu cầu Python, tải Vimium về cục bộ, nạp thủ công tiện ích mở rộng khi chạy Playwright, rồi chạy python main.py
  • Có thể chạy Voice Mode bằng python main.py --voice để nói mục tiêu bằng lệnh thoại và để trình duyệt thực hiện thao tác theo thời gian thực
  • Hiện tại Vision API không hỗ trợ JSON mode hoặc function calling, nên phải dựa vào cách prompt thô sơ hơn
  • Ở độ phân giải thấp, có trường hợp mô hình không phát hiện được gì; dùng ảnh có độ phân giải cao hơn có thể cải thiện, nhưng sẽ cần nhiều token hơn

1 bình luận

 
GN⁺ 2023-11-10
Ý kiến trên Hacker News
  • Thật sự đáng kinh ngạc khi giờ điều này đã khả thi: https://github.com/ishan0102/vimGPT/blob/682b5e539541cd6d710...
    Prompt đang điều khiển trình duyệt theo kiểu “hãy chọn một hành động trong navigate, type, click, done để hỗ trợ mục tiêu của người dùng, chỉ định đối tượng cần click bằng chuỗi ký tự màu vàng, và chỉ trả về JSON

    • Tốc độ mà lĩnh vực này đang chuyển động thật sự choáng váng. Có cảm giác nó còn có thể điên cuồng hơn cả thời bong bóng dot-com
  • Ở nơi làm việc có khá nhiều người chỉ sao chép dữ liệu thủ công giữa các chương trình legacy. Phía chính phủ thì nợ kỹ thuật quá lớn nên không tìm ra cách kết nối các hệ thống với nhau
    Nếu một ngày nào đó công cụ như thế này có thể trở thành lớp chạy phía trên những vấn đề đó thì rất đáng kỳ vọng. Xét về tài nguyên tính toán thì đúng là một lời giải khá kỳ lạ

    • Rất lâu trước đây tôi từng làm một dự án nhỏ cho một chuỗi bán lẻ thực phẩm đa quốc gia lớn. Tôi đã tạo một công cụ phân tích các file Excel có cấu trúc nhất định rồi gọi endpoint của hệ thống nội bộ để gửi dữ liệu
      Khi tôi hỏi cách cũ hoạt động ra sao, họ dẫn tôi tới một chiếc máy tính ở phía sau văn phòng, nơi hình nền có hai hình chữ nhật ghi MS EXCELINTERNET EXPLORER. Người phụ trách mở hai ứng dụng đó, căn cửa sổ khớp chính xác với các hình chữ nhật ấy, rồi chạy một auto clicker kiểu như dân gian lận RuneScape hay dùng để chép các giá trị từ Excel vào các biểu mẫu trên website. Thật quá đỉnh
    • Ở đây người ta đổ lỗi cho “phần mềm cũ”, nhưng thật ra gần như mọi người dùng internet đều luôn gặp cùng một bài toán nhập dữ liệu. Dữ liệu biểu mẫu ở một bên màn hình được chép sang một biểu mẫu web khác, hoặc tệ hơn là gõ lại từ đầu
      Tên người dùng, mật khẩu, địa chỉ email, địa chỉ thực, thông tin thẻ tín dụng... đều là như vậy; có các extension cố hỗ trợ nhập liệu nhưng không có cái nào hoạt động ổn định lâu dài. Ngay cả việc điền tên người dùng và mật khẩu một cách nhất quán cũng khó mà kỳ vọng. Đây là nỗi bực bội số một khi dùng internet, còn hơn cả quảng cáo, và thật ngạc nhiên là đến giờ vẫn chưa được giải quyết dù có hay không có LLM. Nếu có phần mềm giải quyết triệt để chuyện này, tôi sẵn sàng trả phí thuê bao hàng tháng
    • Theo thuật ngữ trong ngành thì đây là Robotic Process Automation và dòng sản phẩm này từ lâu đã tập trung vào việc ghép nối những việc như vậy theo cách chung và có cấu trúc, ngoài kỹ thuật screen scraping truyền thống còn có nhiều dạng machine learning/AI khác nhau
      Cho đến nay các sản phẩm kiểu này khá dễ vỡ, nhưng sự bùng nổ AI gần đây có vẻ là cú hích lớn cho mảng này
    • Mỗi khi nghe chuyện con người phải trích xuất dữ liệu thủ công từ hệ thống legacy, tôi lại tự hỏi có phải họ đã nhận báo giá cho một giải pháp “đúng nghĩa” rồi quyết định rằng thuê vài người ngồi gõ còn rẻ hơn không
      Ngay cả nếu tích hợp thứ như ChatGPT thì vẫn cần người thực sự hiểu việc để rà soát, và tôi sẽ không ngạc nhiên nếu lời khuyên đầu tiên từ họ là “đừng dùng ChatGPT cho chỗ đó”
    • Ngày trước xem Ghost in the Shell, tôi từng thấy kỳ lạ với cảnh robot có thêm ngón tay chồng lên ngón tay để gõ nhanh hơn. Dù có thể cắm thẳng USB nên sẽ không đúng y vậy, nhưng tôi vẫn nghĩ đôi khi ta sẽ còn phải dùng đến màn hình và nhập liệu bằng bàn phím
  • vim dường như vô tình trở thành một thân thể triển khai sẵn tuyệt vời cho ChatGPT. Với luồng văn bản thì gần như không có gì là không làm được, và trên internet đã có sẵn vô số vimscript
    Tôi cũng vừa bắt đầu một thử nghiệm tương tự, ai đang nghĩ theo hướng này có thể tham khảo: https://github.com/LachlanGray/vim-agent

  • Tôi là người tạo ra nó. Cứ hỏi bất kỳ điều gì bạn tò mò, và cũng rất hoan nghênh đóng góp. Tôi đã ghi lại vài bước tiếp theo khả dĩ trong README

    • Hôm nay sớm hơn tôi cũng đã công bố một thứ gần giống như vậy: https://github.com/Jiayi-Pan/GPT-V-on-Web. Chỉ là nó không nhận được mấy sự chú ý
    • Open Interpreter cũng đang cố tự động hóa Selenium bằng điều khiển ngôn ngữ tự nhiên, và dạo này trên HN cũng có khá nhiều dự án tương tự. Cách tiếp cận Vimium trông nhẹ hơn nhiều nên khá hứa hẹn
      Dù theo cách nào đi nữa, World Wide Web công khai dường như đang dần biến thành một máy chủ lớp phủ API động của chính nó
    • Cách này khác gì so với cách ChatGPT hiện tại duyệt web?
    • Có thể dùng nó để tạo bot truy cập website, trích xuất và phân tích thông tin liên quan mà không cần viết parser riêng cho từng site không?
  • Tôi cũng đã thử một ý tưởng tương tự là duyệt web bằng GPT-4 Vision qua screenshot và hành động, nhưng sau khi thất bại trong việc chồng thông tin lên ảnh chụp màn hình, cuối cùng tôi chuyển sang lấy accessibility tree từ Playwright rồi gửi kèm dưới dạng văn bản
    Làm vậy thì model biết được các lựa chọn có thể tương tác, và trong trường hợp của tôi nó hoạt động tốt hơn. Người tạo dự án có mặt ở đây và cũng có danh sách ý tưởng cho tương lai, nên nếu thấy ổn thì có thể thêm cái này vào danh sách

    • Ý hay đấy. Ban đầu tôi định chỉ dùng dữ liệu thị giác, nhưng cách này có thể làm agent mạnh hơn rất nhiều. Tôi sẽ sớm thử
    • Có lẽ nên chụp toàn bộ nội dung thay vì chỉ phần hiển thị trên một màn hình. Với cửa sổ token mới được mở rộng, chắc hầu hết các trang có thể đưa vào dưới dạng văn bản hoặc HTML
  • Tôi đã nghịch thử thứ này qua giao diện ChatGPT trong vài tuần qua. Có vài mẹo như sau
    Sửa CSS để bỏ gradient và bo góc, dùng chữ trắng đậm trên nền đỏ là ổn định nhất. Nên tăng cỡ chữ, và nếu hai nhãn chồng lên nhau thì đẩy chúng ra xa nhau rồi thêm mũi tên trỏ tới phần tử. Với API, tốt hơn là gửi cả hai ảnh có chú thích và ảnh không chú thích

  • Có thể tạo ra chế độ lái tự động cho trình duyệt
    Nếu thứ này được triển khai ở quy mô lớn, sau này sẽ cực kỳ khó phân biệt lưu lượng bot. Tuy vậy, trước mắt có vẻ khó để chi phí trở nên đủ rẻ hoặc đủ dễ chấp nhận

    • Có lẽ có thể giảm chi phí bằng cách fine-tune mô hình mã nguồn mở như llava hay cogvlm. Bản demo này cũng chỉ khoảng 6 xu nên chưa đến mức đắt điên rồ, và nếu thiết kế prompt thông minh hơn thì có thể còn tốt hơn nữa
  • Những công cụ như thế này sẽ ảnh hưởng thế nào đến việc theo dõi web hay quảng cáo trên Internet nói chung? Nếu một tác tử có thể thay mình lướt web, tránh cả quảng cáo lẫn theo dõi và chỉ mang về đúng thứ cần tìm thì nó có thể trở thành một trình chặn quảng cáo tuyệt vời.
    Có khi nó còn khiến SEO trở nên vô dụng và nâng chất lượng Internet lên. Ngược lại, cũng tự hỏi liệu có thể phát sinh tác dụng phụ là quảng cáo bằng cách nào đó lại “trộn” vào trong nội dung được mang về hay không

    • Nếu là cách gửi ảnh chụp màn hình trang cho GPT thì chẳng phải nó sẽ thấy cả quảng cáo sao?
  • Nhiều công ty ở Hà Lan trả lương theo cách này. 1) nhận phiếu lương từ kế toán, 2) thủ công khởi tạo chuyển khoản ngân hàng cho từng nhân viên đúng bằng số tiền trên phiếu đó, và 3) cũng thủ công khởi tạo chuyển khoản ngân hàng để gửi thuế tiền lương đã khấu trừ cho cơ quan thuế.
    Đây là công việc thủ công hoàn toàn vô nghĩa và không có lý do gì phải là quy trình thủ công cả. Thế nhưng việc tự động hóa lại gần như bất khả thi. Cổng thông tin kế toán либо không có API, hoặc dù có thì cũng bắt tải dữ liệu xuống dưới dạng PDF, hoặc phí API khá đắt. Ngân hàng cũng либо không có API, либо yêu cầu đăng ký tài khoản nhà phát triển như thể bạn sắp phát hành một ứng dụng công khai, trong khi mục đích chỉ là tự động hóa quy trình nội bộ. Vì vậy, cách dễ nhất để trả lương và nộp thuế vẫn là thuê người làm thủ công. Tôi sẽ không tin AI đến mức để nó thực sự khởi tạo chuyển khoản ngân hàng, nhưng có lẽ có thể để nó chuẩn bị sẵn giao dịch rồi con người chỉ việc phê duyệt gửi đi

    • Cái này có vẻ không liên quan nhiều đến AI. Ở Anh đã có những giải pháp như Pento, dùng open banking để tự động hóa thanh toán cho người dùng và cơ quan thuế, đồng thời tự động nộp hồ sơ thuế: https://www.pento.io/la/payroll-software
    • Đó đơn giản là vấn đề của ngân hàng. Bảng lương ở các công ty lớn không vận hành như vậy. Ngân hàng thường cho phép tải lên tệp XML định nghĩa gói thanh toán SWIFT, và bảng lương của công ty nhỏ cũng được xử lý theo cách đó. Các kế toán cũng cung cấp tệp XML, chắc là họ có ứng dụng tạo chúng
    • Ở nước tôi cũng tương tự, một số dữ liệu phải được tải lên trang của cơ quan chính phủ. Hình như là vào đầu năm nay, đã có thông báo rằng những người dùng phần mềm thực hiện thao tác trên website có thể bị chặn
    • Mục tiêu của https://github.com/OpenAdaptAI/OpenAdapt là tự động hóa các quy trình GUI lặp đi lặp lại
  • Có phải rất giống với ý tưởng của Adept không? Chỉ là có vẻ sản phẩm vẫn chưa sẵn sàng: https://www.adept.ai/

    • Khá điên khi thứ mà người ta nói Adept đã gọi vốn hơn 300 triệu USD và làm suốt mấy năm nay thì giờ có thể làm trong một ngày bằng OpenAI API.
      Có vẻ Adept đã đổi hướng giữa chừng, nhưng ý tưởng ban đầu của họ rất giống cái này
    • https://www.adept.ai/blog/experiments :)
    • Đúng vậy. Tôi đã lấy cảm hứng từ Adept và một vài startup khác
    • Chính xác đây là bản demo mà tôi đã nghĩ tới