Memdoor: Năm mô hình Qwen3.8-27B hợp sức vượt mặt Fable 5 trên LiveCodeBench Hard
Dự án Memdoor giới thiệu workflow team-solve, một khung đa tác tử (multi-agent) gồm năm vai trò điều phối qua file trên đĩa để giải bài toán lập trình. Trên mười bài đầu của LiveCodeBench Hard, hệ thống đạt trung bình 9,8/10 qua năm lượt chạy, cao hơn 9,6 của harness gốc và 8,0 của Fable 5 đơn lẻ.

Memdoor: Năm mô hình Qwen3.8-27B hợp sức vượt mặt Fable 5 trên LiveCodeBench Hard
Một nhóm kỹ sư vừa công bố Memdoor, một khung đa tác tử dành cho bài toán lập trình, được viết dưới dạng workflow. Trên mười bài đầu tiên của bộ LiveCodeBench Hard, cách tiếp cận này đạt điểm trung bình 9,8/10 sau năm lượt chạy, vượt qua cả harness gốc của nhóm tác giả (9,6) và mô hình Fable 5 chạy đơn lẻ (8,0).
Năm vai trò, một quy trình
Workflow có tên team-solve gồm năm vai trò: planner (lập kế hoạch), hai ideator (đề xuất ý tưởng), solver (viết lời giải) và manager (quản lý), cùng một repair worker (sửa lỗi). Điểm đặc biệt: mỗi tác tử khởi đầu với ngữ cảnh hoàn toàn mới và chỉ giao tiếp qua các file trên đĩa.
Quy trình chạy theo thứ tự: lập kế hoạch, song song đề xuất hai hướng thuật toán khác nhau, chọn lời giải, chạy thử với bộ test mẫu, đánh giá, sửa lỗi và xác minh cuối cùng. Bước quyết định thành công không phải mô hình, mà là một script shell chạy các mẫu kiểm thử.
Mỗi prompt tác tử đều yêu cầu "ngữ cảnh mới, đọc file, không dựa vào trò chuyện". Chính kỷ luật ghi chép này được cho là tạo ra phần lớn lợi thế.
Nói cách khác, các tác tử không "nói chuyện" với nhau theo kiểu chat mà ghi lại quyết định và ghi chú vào các file như một bảng theo dõi chung. Một hướng đi thẳng thắn và dễ chứng minh, hướng còn lại đến từ một nhóm kỹ thuật khác — nhằm tránh cả nhóm sa vào cùng một lối mòn.
Kết quả qua năm lượt chạy
Bảng so sánh trên mười bài đầu của LiveCodeBench Hard:
- Workflow Memdoor: 10/10, 10/10, 10/10, 10/10, 9/10 — trung bình 9,8
- Harness 27B của nhóm tác giả: 9, 10, 10, 9, 10 — trung bình 9,6
- Fable 5 chạy đơn lẻ: 7, 8, 10, 8, 7 — trung bình 8,0
Tổng cộng 49/50 lượt giải thành công. Chi phí cho 50 lượt chạy là 35,79 USD (15,3 triệu token đầu ra), hoặc 38,77 USD nếu tính cả 16 lần thử bị ngắt. Mỗi lượt chạy mất trung bình khoảng 40 phút thời gian mô hình (lâu nhất 4 giờ), tốn khoảng 0,39 USD và chạy hoàn toàn qua OpenRouter.
Những điểm cần lưu ý
Nhóm thực hiện tỏ ra khá thẳng thắn về giới hạn của kết quả:
- Chỉ có mười bài, năm lượt chạy, không phải 100 bài như trong bài báo gốc.
- Các kỳ thi này diễn ra từ 29/3 đến 6/4/2025, nên không loại trừ khả năng mô hình đã thấy chúng trong dữ liệu huấn luyện.
- Cột của Fable 5 là kết quả một lần gọi mỗi bài từ file của nhóm tác giả, không được chạy trong harness này.
- Vòng lặp chỉ nhìn thấy bộ mẫu công khai, còn điểm số được tính trên các test ẩn.
Hai thất bại và nguyên nhân
Cả hai lần thua điểm đều xuất phát từ cùng hai lỗ hổng trong vòng lặp của nhóm tác giả. Ở lượt thứ 5, bài abc399_e, chương trình vòng đầu vốn đã đúng nhưng manager tự tạo phản ví dụ với đáp án sai, khiến cả nhóm viết lại và phiên bản mới tuy qua được mẫu nhưng hỏng ở trường hợp không được kiểm phủ.
Ở lượt thứ 4, với bài arc196_c và arc196_d, một chương trình đã qua mọi test ẩn lại bị ghi đè ở vòng sau vì manager không nói rằng đã xong. Cả hai lần đều tốn chi phí cao nhất — 3,44 USD và 4,24 USD.
Cả hai lỗi đều có thể khắc phục mà không cần đổi phương pháp: kiểm tra phản ví dụ của manager bằng brute force trên đầu vào nhỏ, và giữ lại chương trình cuối cùng đã qua bộ mẫu.
Cách chạy thử
Cài đặt khá nhanh qua script từ memdoor.ai, sau đó kết nối với nhà cung cấp mô hình (OpenRouter, Anthropic, OpenAI, Gemini...). Workflow có sẵn trong thư mục examples/workflows/team-solve, chỉ cần chép vào thư mục workflow của dự án và cung cấp file task.md cùng các cặp test tests/N.in và tests/N.out.
Mỗi bước là một file YAML, không gắn cứng vào mô hình nào — bất kỳ mô hình đang được chọn sẽ đảm nhận. Chương trình nộp được lưu ở solution.py, đọc từ stdin và so sánh với các mẫu bằng diff.
Ý nghĩa với người làm lập trình
Với cộng đồng phát triển phần mềm, kết quả này gợi ra một hướng đáng chú ý: thay vì đẩy một mô hình lớn làm tất cả, có thể tổ chức nhiều tác tử nhỏ hơn theo vai trò rõ ràng, giao tiếp qua file, để đạt kết quả tốt hơn với chi phí thấp hơn. Cách làm này cũng dễ kiểm toán hơn, vì mọi quyết định đều được ghi lại và mọi lần chạy đều được lưu đầy đủ.
Tuy vậy, cần nhớ rằng đây là thử nghiệm quy mô nhỏ, có nguy cơ nhiễm dữ liệu huấn luyện và chưa được kiểm chứng độc lập trên diện rộng. Những kết luận mạnh mẽ nên chờ thêm các đánh giá độc lập trước khi tin tưởng hoàn toàn.
Bài viết liên quan
Công nghệ
Lỗi hành vi không xác định trong C++: Khi cờ tối ưu -O2 biến code vô hại thành lỗ hổng cấp quyền root
31 tháng 10, 2026

Công nghệ
Anthropic âm thầm chặn Claude dịch ngược mã game, cộng đồng game thủ dậy sóng
31 tháng 10, 2026

Công nghệ
Anthropic chặn người dùng vì mọi thứ liên quan đến huấn luyện mô hình lớn hơn
31 tháng 10, 2026