Bạn Không Cần Các Sub-Agent

Hầu hết mọi người vẽ kiến trúc agent giống như sơ đồ tổ chức.

Họ đặt một Orchestrator ở trên cùng. Họ vẽ các đường nối đến một Researcher, một Coder và một Tester. Trông nó thật gọn gàng. Trông nó thật chuyên nghiệp.

Đó là một sai lầm.

Năm 1975, Fred Brooks đã viết rằng việc thêm nhiều người vào một dự án phần mềm đang bị trễ sẽ khiến nó càng trễ hơn. Điều này xảy ra vì chi phí giao tiếp tăng nhanh hơn tốc độ hoàn thành công việc.

Khi bạn xây dựng một swarm các agent, bạn đang lặp lại sai lầm này.

Orchestrator dành toàn bộ thời gian để quản lý các tác vụ phụ. Điều này tạo ra một lượng overhead khổng lồ. Bạn không phải đang xây dựng một kiến trúc. Bạn đang xây dựng hệ thống đường ống.

Dưới đây là lý do tại sao các sub-agent thất bại:

Nghiên cứu cho thấy các framework multi-agent có tỷ lệ thất bại từ 41% đến 87%. Những thất bại này xảy ra vì các agent nói chuyện mà không hiểu nhau. Một mô hình tốt hơn sẽ không giải quyết được vấn đề này. Đây là vấn đề về sự điều phối, không phải vấn đề về mô hình.

Thay vào đó, bạn nên xây dựng như thế nào?

Hãy tuân theo hai quy tắc sau:

  1. Nếu các tác vụ độc lập, hãy chạy chúng dưới dạng các vòng lặp (loop) riêng biệt. Sử dụng hai chương trình riêng biệt. Đây là xử lý song song, không phải là một hệ thống multi-agent.
  2. Nếu tác vụ yêu cầu một luồng tư duy duy nhất, hãy sử dụng một vòng lặp duy nhất.

Một vòng lặp duy nhất giữ toàn bộ ngữ cảnh ở một nơi. Nó tự sửa lỗi một cách dễ dàng. Nó để lại một lịch sử sạch sẽ thay vì một cuộc trò chuyện nhóm hỗn loạn.

Đừng xây dựng các mạng lưới (meshes) nữa. Hãy bắt đầu xây dựng các vòng lặp (loops).

Source: https://dev.to/tony__vi/you-dont-need-sub-agents-1eh7

Optional learning community: https://t.me/GyaanSetuAi