- LLM thường có độ chính xác dao động trong các tác vụ phức tạp; nghiên cứu này kiểm chứng liệu chỉ bằng lấy mẫu-bỏ phiếu, thay vì thêm cấu trúc bổ sung, có thể nâng cao hiệu năng hay không
- Agent Forest là một phương pháp ensemble đơn giản: chạy cùng một truy vấn nhiều lần để thu thập câu trả lời, rồi chọn câu trả lời cuối cùng bằng đa số phiếu
- Trên GSM8K, với kích thước ensemble 15, Llama2-13B đạt độ chính xác tương đương Llama2-70B; Llama2-70B và GPT-3.5-Turbo cũng tiến gần tới các mô hình đối ứng mạnh hơn
- Phương pháp này có thể kết hợp độc lập với các phương pháp dựa trên CoT hoặc framework cộng tác đa agent, tạo thêm cải thiện hiệu năng trên các kỹ thuật hiện có
- Mức cải thiện đặc biệt lớn ở các tác vụ khó và các mô hình yếu hơn, cho thấy vẫn có dư địa nâng tỷ lệ hiệu năng/chi phí mà không cần thiết kế prompt phức tạp
Độ chính xác của LLM dao động trong các tác vụ phức tạp
- LLM thể hiện năng lực mạnh trong nhiều ứng dụng như sinh ngôn ngữ, hiểu ngôn ngữ và suy luận, nhưng khó đưa ra câu trả lời chính xác ở các tác vụ phức tạp
- Các nghiên cứu cải thiện hiệu năng hiện có chủ yếu đã tận dụng các phương pháp ensemble và framework cộng tác nhiều LLM agent
- LLM-Debate được cấu hình để nhiều LLM agent thảo luận câu trả lời cuối cùng cho các bài toán số học, giúp tăng hiệu năng suy luận so với một agent đơn lẻ
- CoT-SC tạo nhiều chuỗi suy nghĩ (thought chain) và chọn câu trả lời tự nhất quán nhất, qua đó cải thiện hiệu năng suy luận so với CoT dùng một chuỗi suy nghĩ đơn lẻ
- Các kết quả trước đó cũng quan sát thấy hiện tượng hiệu năng tăng khi số lượng agent hoặc số lượng chuỗi suy nghĩ tăng, nhưng đặc tính scaling của chính số lượng LLM agent cơ bản chưa được nghiên cứu đầy đủ như một chủ đề riêng
Cách Agent Forest hoạt động
- Agent Forest sử dụng một quy trình lấy mẫu-bỏ phiếu đơn giản để xem việc tăng số lượng LLM agent ảnh hưởng thế nào đến hiệu năng
- Cách hoạt động được chia thành hai bước
- Lặp lại việc đưa truy vấn tác vụ vào một LLM đơn lẻ hoặc một framework cộng tác nhiều LLM agent để tạo ra nhiều đầu ra
- Áp dụng bỏ phiếu đa số lên các đầu ra đã tạo để quyết định kết quả cuối cùng
- Quy trình này lấy cảm hứng từ CoT-SC, nhưng không phụ thuộc vào thiết kế lộ trình CoT phức tạp
- Tên gọi là lời tri ân dành cho Random Forest cổ điển
Kết quả trên GSM8K và nhiều tác vụ
- Thí nghiệm được thực hiện trên nhiều dataset bao gồm các LLM với kích thước khác nhau và các tác vụ suy luận, sinh nội dung
- Nhìn chung, khi kích thước ensemble, tức số lượng agent, tăng lên, hiệu năng LLM có thể được cải thiện
- Trong kết quả GSM8K ở Figure 1, cả Llama2-13B, Llama2-70B và GPT-3.5-Turbo đều tăng độ chính xác khi kích thước ensemble lớn hơn
- Với kích thước ensemble 15, Llama2-13B đạt độ chính xác có thể so sánh với Llama2-70B
- Với kích thước ensemble 15 và 20, Llama2-70B và GPT-3.5-Turbo lần lượt cho thấy độ chính xác có thể so sánh với các mô hình đối ứng mạnh hơn
- Thanh sai số trong hình biểu thị sai số chuẩn
- Ngay cả LLM nhỏ cũng có thể đạt hiệu năng có thể so sánh với LLM lớn hơn, hoặc tốt hơn, nếu áp dụng ensemble đơn giản
Cải thiện hiệu năng có thể đặt lên trên các kỹ thuật hiện có
- Agent Forest là một hướng tiếp cận có thể kết hợp độc lập với các phương pháp cải thiện hiệu năng LLM phức tạp hiện có
- Với các phương pháp dựa trên CoT, có thể gắn vào như một plugin để tạo thêm cải thiện hiệu năng
- Ngay cả khi so với các phương pháp phức tạp, chỉ riêng Agent Forest cũng có thể đạt hiệu năng tương đương trong hầu hết trường hợp
- Có thể thu được kết quả cạnh tranh mà không cần thiết kế prompt thủ công bổ sung hay framework cộng tác phức tạp
Hiệu quả theo độ khó và tối ưu hóa
- Mức cải thiện hiệu năng xuất hiện lớn hơn ở các tác vụ khó và các mô hình yếu hơn
- Ảnh hưởng của độ khó bài toán lên hiệu quả của Agent Forest được phân tích theo ba chiều
- Độ khó nội tại của bài toán
- Độ dài của các bước suy luận
- Xác suất tiên nghiệm của đáp án đúng
- Thông qua các thí nghiệm điều chỉnh từng chiều, nghiên cứu xác định các thuộc tính ảnh hưởng đến hiệu quả của Agent Forest
- Dựa trên các thuộc tính đã xác định, nhóm cũng phát triển thêm chiến lược tối ưu hóa để hiệu ứng “More Agents” thể hiện rõ hơn
- Mã nguồn công khai được cung cấp tại
https://github.com/MoreAgentsIsAllYouNeed/AgentForest
1 bình luận
Các ý kiến trên Hacker News
Có vẻ có những người chưa đọc kỹ bài báo này
Bài báo này gần như phản bác ý tưởng về các cấu hình đa tác nhân như Chain-of-thought hay LLM-Debate
Phương án thay thế mà bài báo đề xuất là đặt cùng một truy vấn cho cùng một LLM nhiều lần, nhưng không chia sẻ ngữ cảnh giữa các truy vấn, rồi tính độ tương đồng giữa các câu trả lời và chọn câu trả lời phổ biến nhất
Nếu LLM đưa ra lẫn lộn ảo giác và đáp án đúng, thì các đáp án đúng sẽ giống nhau còn ảo giác sẽ phân tán hỗn loạn, nên cách này có lý
Nhưng thuật toán đơn giản này hoạt động ngang bằng, đôi khi còn tốt hơn, các thuật toán đa tác nhân khác
Tức là các kỹ thuật đa tác nhân khác dùng prompt khéo léo không làm điều gì đặc biệt; phần lớn cải thiện dường như đến từ việc chạy LLM nhiều lần rồi yêu cầu “chọn câu trả lời tốt nhất”
Từ lâu, mô phỏng thời tiết đã chạy lặp lại mô hình bằng cách thay đổi nhẹ các tham số đầu vào, loại bỏ ngoại lệ rồi lấy trung bình, và cách này hoạt động khá tốt
LLM nhìn chung cũng có seed ngẫu nhiên, tức giá trị temperature, nên nếu đưa cùng một đầu vào và lấy trung bình các đầu ra thì có thể thu được ước lượng tốt hơn
Lorenz system cũng cho manh mối, có lẽ là lời giải thích, về lý do vấn đề ảo giác có thể không thể giải quyết được
Nếu chấp nhận góc nhìn này, ta cũng nhanh chóng thấy rằng LLM gần như là ngõ cụt trên con đường tới trí tuệ nhân tạo tổng quát
Mô phỏng không phải là giả lập, và khả năng LLM có trí thông minh cũng tương tự khả năng dự báo thời tiết có thể điều khiển thời tiết
Thường thì một thư viện cụ thể hoạt động theo cách rất bất thường và không được tài liệu hóa, nhưng nếu hỏi ví dụ, nó sẽ tạo ra mã hàm giả trông hay ho, dễ hiểu — thứ vốn đã không cần tồn tại nếu thư viện đó hoạt động theo cách ấy ngay từ đầu
Tôi không nghĩ chạy truy vấn đó nhiều lần sẽ giúp ích
Nếu lấy trung bình kết quả của nhiều bộ dự đoán hoặc cho chúng bỏ phiếu để chọn giá trị dự đoán phổ biến nhất, ta có thể chọn phần giao chung của nhiều dự đoán đồng thời giảm nhiễu trong dự đoán
Nhưng ta đã biết điều đó không đảm bảo đáp án đúng, vậy chạy nhiều lần thì có thể tốt hơn bằng cách nào?
Bản thân điều đó là tốt, nhưng tôi nghĩ truyền thuyết đô thị hay huyền thoại văn hóa cũng sẽ được xếp hạng cao
Dù đó là một sai lầm rất con người, nó vẫn là sai lầm
Để vượt qua điều này, tôi cho rằng cần xây dựng một mô hình thế giới, tìm mâu thuẫn, rồi tìm bằng chứng mới để hóa giải mâu thuẫn đó
Cuối cùng cũng xuất hiện
Tôi đã nói khoảng 16 tháng rằng không nên chỉ tập trung làm cho một tác nhân đơn lẻ trả lời đúng mọi thứ, mà phải phân tầng các tác nhân, nên giờ có một bài báo để dẫn chiếu thật tốt
Cũng thú vị là lợi ích biên theo từng tác vụ nhanh chóng đi ngang ở quy mô tương tự cỡ cuộc họp lý tưởng của con người: https://www.researchgate.net/figure/18-Optimal-Meeting-Sizes...
Tôi tò mò nếu họ thử nghiệm số lượng tác nhân với các bước dày hơn thì sẽ khớp với những con số đó đến mức nào
Sau này tôi cũng muốn xem hiệu năng sẽ tăng thêm bao nhiêu khi tinh chỉnh mỗi tác nhân cho những mục tiêu hơi khác nhau
Chỉ cần đặt giá trị temperature khác nhau cho từng tác nhân có lẽ cũng đã giúp cải thiện hiệu năng
Tôi rất vui khi cộng đồng nghiên cứu bắt đầu đi theo hướng này
Các SLIM agents của LLMWare cũng đáng xem: https://github.com/llmware-ai/llmware/tree/main/examples/SLI...
Chúng gần như tập trung đúng chủ đề này khi kết nối nhiều LLM cục bộ
Một chủ đề hay liên quan là tùy theo mục đích sử dụng của mô hình, cần có lấy mẫu quyết định
Thuật ngữ có thể hơi sai, nhưng đội LLMWare đã làm một video 2 phần hay về việc này: https://www.youtube.com/watch?v=7oMTGhSKuNY
Tôi cho rằng các LLM nhỏ chuyên dụng là con đường phía trước
Nhân tiện, tôi không liên quan gì đến họ; chỉ đơn giản nghĩ đây là một dự án rất tuyệt
Kiểu như có khoảng 5 hay 8 phiên bản của chính chúng ta chạy quanh trong hộp sọ, và một trong số đó đóng vai trò giám sát ở mức nào đó
crewAI là một ví dụ
Có vẻ liên quan đến tập Edward Chang gần đây của ACM ByteCast
Đây là tập có Edward Chang, giáo sư thỉnh giảng ngành khoa học máy tính tại Stanford University: https://learning.acm.org/bytecast/ep50-edward-y-chang
Nếu không muốn nghe thì cũng có bản chép lời
Cách tiếp cận ông ấy dùng là thay vì định dạng hỏi/đáp thông thường của LLM hiện nay, để nhiều LLM trò chuyện với nhau về chủ đề thảo luận, còn con người đóng vai trò người điều phối
Ông nói rằng với cùng tài nguyên, câu trả lời cuối cùng mà nhiều LLM đạt được qua đối thoại được cải thiện đáng kể cả về độ precision lẫn accuracy
Chỉ cần để các LLM giải bài toán độc lập rồi chọn câu trả lời phổ biến nhất
Chưa benchmark, nhưng cảm thấy khá thuyết phục
Ví dụ, tôi định nghĩa mỗi agent là một “chuyên gia” khác nhau theo từng phân ngành toán học: nhà lý thuyết chứng minh, chuyên gia đại số trừu tượng, v.v.
Nó có giúp ích, nhưng tỷ lệ tín hiệu trên nhiễu cao, và nhiều agent lặp lại cùng một ý
Có một điểm khiến tôi bực mình trong tất cả các nghiên cứu về mixture of experts này
Chỉ cần xem nhập môn thuật toán ngẫu nhiên hay suy luận xác suất cơ bản là thấy, nếu tham số nhiệt độ lớn hơn 0 thì việc hỏi LLM N lần rồi chọn kết quả theo đa số nhìn chung sẽ cho hiệu năng tốt hơn so với chỉ hỏi một lần rồi chọn kết quả đó
Nếu chuyên biệt hóa và trộn các LLM khác nhau thì có vẻ còn có thể cải thiện thêm, và trong trường hợp đó có thể chạy với nhiệt độ 0
Hoặc cũng có thể chia tác vụ thành các tác vụ con tốt hơn như bài báo này đề xuất
Nhưng theo tôi thấy, chưa ai thực sự định lượng các lợi ích giả định này so với cách lặp ngẫu nhiên đơn giản
Đặc biệt, với một số chiến lược bỏ phiếu hay cách trộn, thậm chí với một mô hình cụ thể, các phương pháp kiểu MoE có thể còn tệ hơn một cách nghiêm ngặt so với lặp ngây thơ
Tôi không phải nhà nghiên cứu LLM, giống một công dân lo lắng hơn, nên có thể đã bỏ sót điều gì đó
Dù vậy, thật lạ khi các nhà nghiên cứu LLM trông như đã quên chương đầu của Motwani/Raghavan
Nhìn lướt qua đồ thị thì phần lớn lợi ích đến từ 10 agent, tăng thêm một chút ở 20, rồi sau đó là lợi suất giảm dần
Có lẽ chỉ gắn thêm thật nhiều agent sẽ không giải quyết được vấn đề
Có kho mã nguồn công khai: https://anonymous.4open.science/r/more_agent_is_all_you_need...
Prompt dùng cho benchmark ở đây: https://anonymous.4open.science/r/more_agent_is_all_you_need...
Rất thú vị
Cũng muốn thấy benchmark theo kiểu này nhưng với các agent dựa trên LLM có dùng bộ công cụ
Đây chẳng phải là một phương pháp cực kỳ đắt đỏ và không bền vững sao?
Các mô hình mới nhất có lẽ sẽ gặp lợi suất giảm dần, nên tôi đồng ý với quan điểm rằng MoE là hướng đi
Nhưng chẳng phải lượng tính toán cho một prompt đơn lẻ đột nhiên tăng 7~15 lần sao?
Chỉ đọc vài bình luận hàng đầu hiện tại cũng thấy mô hình kinh doanh của các công ty cung cấp dịch vụ LLM khá kỳ quặc
Giống như một dịch vụ xe cần gọi n lần mới đưa bạn từ A đến B, hay một loại bột giặt phải bôi n lần thì quần áo “có lẽ” mới sạch
Nếu một công ty nhận tiền để cung cấp “trí tuệ nhân tạo”, chẳng phải hợp lý hơn là chỉ trả phí cho câu trả lời đúng sao?
Nếu cung cấp dịch vụ xe, chẳng phải chỉ nên trả tiền khi họ đưa bạn đến đích sao?
Nếu thất bại đủ thường xuyên, chẳng phải ngưỡng để con người hoặc tự động hóa truyền thống đa dụng trở nên tốt hơn sẽ khá thấp sao?
Tôi nghĩ bong bóng này sẽ vỡ theo kiểu đó
Tôi không nghi ngờ rằng LLM là một công cụ mang tính đột phá, nhưng ngoài các ứng dụng rất chi tiết hẹp, tôi thật sự hoài nghi
Có lẽ bài học là cách phân tán trách nhiệm của các LLM agent giống với mô hình thất bại của các tổ chức con người hiện có
Nếu không cung cấp được thứ đã thỏa thuận, khách hàng có thể yêu cầu khắc phục
Nếu tài xế taxi đi đường vòng không cần thiết, tính phí quá mức, hoặc không đưa bạn đến nơi, bạn có thể khiếu nại với hãng taxi
Nếu giặt chưa sạch, bạn yêu cầu họ làm lại
Nhưng nhiều hoạt động vốn dĩ có rủi ro hoặc kết quả không chắc chắn
Vì luôn có những yếu tố mà không ai kiểm soát được
Luật sư không thể hứa sẽ thắng kiện, nhưng phải đại diện cho vụ việc hết sức mình
Bác sĩ không đảm bảo bạn sẽ khỏe lại
Không tài xế taxi nào đảm bảo sẽ đến đúng giờ, nhưng họ sẽ đưa bạn tới điểm đến
Atlassian không đảm bảo bạn sẽ kịp hạn phát hành chỉ vì dùng một instance JIRA được quản lý, nhưng họ sẽ cố hết sức để tránh mất dữ liệu
Về cơ bản, công ty bán quyền truy cập chatbot có lẽ cũng sẽ không đảm bảo đưa ra kết quả đúng
Có lẽ họ chỉ có thể đảm bảo mức độ sẵn sàng
Dù ensemble bao nhiêu agent GPT-3.5 đi nữa thì độ chính xác vẫn thấp hơn một lần gọi GPT-4
Chỉ cần cấu hình cho đúng