2 điểm bởi alfadur 15 giờ trước | Chưa có bình luận nào. | Chia sẻ qua WhatsApp
  • Các hệ thống multi-agent tự trị đang xuất hiện rất nhiều gần đây, nhưng khi chạy thử thực tế thì chúng chỉ ngốn token gấp 5–10 lần và thường xuyên mất ngữ cảnh. Vì vậy tôi đã lấy mô hình tòa soạn báo làm khuôn mẫu để thiết kế cấu trúc cho multi-agent.
  • Có năm vai trò agent, nhưng chỉ có một agent để LLM tự đánh giá là desk (kiểm duyệt). Phần còn lại là tác vụ viết, kiểm tra Python chạy theo quy tắc chứ không phải LLM (lint), và điều phối công việc (orchestration).
  • Tương tự khái niệm LLM Wiki, hệ thống đọc tài liệu gốc để tạo trang nguồn, từ đó trích ra bản nháp về nhân vật và khái niệm, rồi gom chúng lại để xây dần thành các trang tổng quan theo chủ đề, tổng hợp mâu thuẫn và trang tổng hợp. Việc lưu trữ chỉ là các file Markdown cùng git, và toàn bộ công cụ Python chạy cục bộ. Chỉ cần clone là có thể chạy ngay đồ thị ví dụ mà không cần API key.
  • Ví dụ hiện có trên GitHub bàn về tranh luận “open source trong AI là gì”, nhưng bản thân framework không phụ thuộc vào chủ đề.

Vì sao không thả nhiều agent chạy tự do

  • Nhận xét của những người đã thực sự chạy kiểu này với chi phí hàng nghìn đô la nhìn chung đều đi đến cùng một kết luận. Nó dùng rất nhiều token, các agent trao đổi qua lại rồi làm mất ngữ cảnh, và đánh dấu là đã xong dù công việc chưa hoàn tất.
  • Vì vậy, thay vì giao cho chúng tự phán đoán, tôi đặt trọng tâm vào các quy tắc cố định và cô lập ngữ cảnh. Dù dùng ẩn dụ tòa soạn, LLM thực sự được tự do phán đoán chỉ có desk; phần còn lại chỉ làm các việc đã được định sẵn.

Trả lời trước những phản biện có thể xuất hiện

  • Tài liệu cứ phình ra và cuối cùng không dùng được nữa: Tôi xem đây là mối lo thực tế nhất. Vì vậy tôi tách hẳn vai trò viết và desk quyết định có cho qua hay không. Desk chỉ được xem kết quả và tiêu chí chấm điểm, không thấy người viết đã viết với ý đồ gì. Bên cạnh đó, lint dựa trên quy tắc sẽ lọc một cách máy móc các trường hợp tài liệu phình to, trùng lặp hoặc kéo dài lan man không định hướng. Dù vậy, tôi chưa thể nói là đã “ngăn được” việc phình to.
  • Nếu biên tập lặp đi lặp lại thì lỗi sẽ tích tụ, và nếu tự sửa mình bằng phản hồi do chính mình tạo ra thì rốt cuộc chỉ lặp lại các mẫu có sẵn: Đây là nghi ngờ luôn đi kèm với chuyện tự cải thiện, và tôi cũng cho rằng nó có cơ sở. Vì vậy, khi phản ánh lại vào guideline những khiếm khuyết mà desk liên tục phát hiện, tôi thay mới các ca thất bại dùng để kiểm chứng mỗi lần, nhằm tránh việc chỉ quen với cùng một bộ đề kiểm tra (overfit). Nói cách khác, luôn kiểm tra bằng những trường hợp lần đầu thấy. Ở phía trang tổng hợp, tôi cũng thêm kiểm tra đối chiếu xem có đang gom bừa các nội dung đến từ nguồn khác nhau lại với nhau hay không.
  • Rốt cuộc chẳng phải chỉ là RAG mà thay embedding thủ công sao: Nếu mục đích là tìm kiếm thì nói vậy cũng đúng. Khác biệt là kết quả không phải một vector index, mà là các tài liệu liên kết với nhau để con người có thể đọc trực tiếp; và những chỗ các nguồn không khớp nhau không bị che lấp mà được đưa ra riêng thành trang mâu thuẫn. Mục tiêu là để lại các phán đoán đã tích lũy, thay vì mỗi lần hỏi lại đi gom lại nguyên văn từ đầu.

Khái niệm cũ: Memex

  • Tôi xây dựng nó với ý thức về các dòng tư tưởng như Memex của Vannevar Bush (một cỗ máy thông tin liên kết được hình dung vào năm 1945) và “Man-Computer Symbiosis” của Licklider.
  • Vì vậy tôi đã thêm trail (đường liên tưởng) nối giữa các trang, và chức năng discover giúp tìm ra những liên kết bất ngờ. Mục tiêu không phải là tự động rút chỉ mục, mà là để lại những con đường mà con người có thể trực tiếp lần theo.

Các điểm cần cân nhắc khi sử dụng

  • Nói “không cần API key” chỉ đúng một nửa: Python trong tools chạy cục bộ nên không cần khóa bên ngoài. Tuy nhiên bản thân agent chạy bằng Claude Code, vì vậy mỗi người vẫn phải gắn khóa riêng của mình để dùng (BYOK).
  • Repo công khai chỉ ở mức ý tưởng và ví dụ nhỏ: Có một ví dụ tiếng Anh gồm 15 node, nên chỉ cần clone là ai cũng có thể tái hiện cùng một đồ thị. Instance thực tế khoảng 2.300 node mà tôi vẫn chạy hằng ngày được để riêng ở chế độ không công khai, vì vậy hãy phân biệt nó với repo công khai.
  • Chế độ tiếng Hàn (WIKI_LANG=ko): Chỉ phần nội dung chính và metadata đầu tài liệu (frontmatter) được đổi sang tiếng Hàn; các ký hiệu thể hiện cấu trúc tài liệu như ## Summary, [fact] được cố ý giữ bằng tiếng Anh. Nghĩa là không phải “tiếng Hàn hoàn toàn”.

Động cơ tạo ra và tình trạng hiện tại

  • Điểm khởi đầu là tôi thử gắn một phần triển khai vào gist LLM Wiki mà Karpathy chia sẻ. Bản thân khái niệm này trước đây cũng từng được giới thiệu trên GeekNews: https://vi.news.hada.io/topic?id=28208
  • Việc tách bên viết và bên kiểm duyệt có thực sự làm giảm tình trạng cho qua qua loa hay không, và vòng lặp tự cải thiện có thật sự hữu ích hay không, hiện vẫn là các giả thuyết đang được thử nghiệm chứ chưa phải kết quả đã được đo lường đầy đủ.

Chưa có bình luận nào.

Chưa có bình luận nào.