FPT Software AI Center ra mắt hệ thống đa tác nhân, vượt qua cả MetaGPT và ChatDev
Expert Editor

Các mô hình ngôn ngữ lớn về mã (codeLLM) đã thể hiện khả năng của mình trong việc viết code. Tuy nhiên, những mô hình này lại gặp khó khăn với các công việc liên quan đến kỹ thuật phần mềm, chẳng hạn như phát triển một hệ thống hoàn chỉnh dựa trên các yêu cầu phức tạp của người dùng.
Những codeLLM gần đây, bao gồm ChatDev và MetaGPT, đã cho ra mắt các khung đa tác nhân giúp phát triển phần mềm. Các tác nhân sẽ hợp tác với nhau để đạt được mục tiêu chung. Những mô hình này tuân theo quy trình chuẩn của hệ thống đa tác nhân, phân chia các vai trò khác nhau của từng tác nhân trong quá trình giao tiếp và xác minh kết quả đầu ra. Tuy nhiên, ChatDev và MetaGPT thường có xu hướng đơn giản hóa quá mức bản chất phức tạp của công việc này trên thực tế, khi mà các phần mềm liên tục được phát triển và cải tiến.
Trong khi đó, một nhóm các nhà nghiên cứu đến từ FPT Software AI Center đã đề xuất AgileCoder, một khung mô phỏng quy trình phát triển phần mềm trên thực tế, lấy cảm hứng từ phương pháp Agile. Đây là phương pháp phổ biến, với khoảng 70% các đội ngũ chuyên nghiệp sử dụng. Nền tảng chính của khái niệm này là phần mềm liên tục cải tiến theo thời gian, do đó công việc phát triển nên được cấu trúc dưới dạng các sprint (hay còn gọi là các giai đoạn).
Vai trò và sự hợp tác giữa các tác nhân
AgileCoder bao gồm nhiều tác nhân đóng vai trò khác nhau như người quản lý, nhà lãnh đạo, lập trình viên, lập trình viên cao cấp, và nhân viên kiểm tra. Những tác nhân này làm việc cùng nhau qua các sprint để hoàn thành nhiệm vụ người dùng đề ra theo phương pháp Agile.
Ứng dụng quy trình Agile vào khung đa tác nhân giúp AgileCoder có khả năng thích ứng và phát triển lặp lại. Kết quả đầu ra và vấn đề từ các sprint trước được kế thừa và tinh chỉnh trong các sprint tiếp theo, làm tăng khả năng thành công của sản phẩm cuối cùng.
Máy tạo đồ thị mã động
Một đổi mới quan trọng trong AgileCoder là máy tạo đồ thị mã động, tạo ra đồ thị mã phụ thuộc (code dependency graph – CDG). Từ đó mô hình hóa các mối quan hệ giữa tệp mã và những cập nhật khi thay đổi mã nguồn. CDG đóng vai trò quan trọng khi lên kế hoạch kiểm tra và cho phép truy xuất mã hiệu quả. Đồng thời, thông qua CDG, các tác nhân có thể truy xuất thông tin có liên quan một cách đầy đủ, tránh đưa thông tin không liên quan vào các mã lệnh (prompt).
Đánh giá và kết quả
Đánh giá dựa trên các tiêu chuẩn như HumanEval, MBPP, và ProjectDev cho thấy hiệu suất vượt trội của AgileCoder.
Trên HumanEval và MBPP, với những bài toán lập trình có cấp độ cạnh tranh đơn giản, AgileCoder vượt trội hơn hẳn các codeLLM và các khung đa tác nhân tiên tiến như ChatDev và MetaGPT.
Để đánh giá hiệu suất trên các yêu cầu phức tạp hơn, nhóm các nhà nghiên cứu của FPT Software AI Center đã tạo ra một tập dữ liệu có tên ProjectDev, chứa yêu cầu từ những dự án phần mềm thực tế. Kết quả đánh giá cho thấy, AgileCoder hiệu quả hơn các phương pháp cơ bản khác trong việc tạo ra phần mềm từ các yêu cầu phức tạp này.
ABOUT THE AUTHOR
Expert Editor
Phương pháp mới biến rác thải nhựa thành tài nguyên quý
Expert Editor

Phương pháp vi chế tạo mới chỉ sử dụng giấy và nước
Expert Editor
-1727065917811-208949365.jpeg)
Phương pháp chế tạo pin lithium với giá thành rẻ
Expert Editor
