Chúng tôi đã đặt bốn tác nhân Gemini 4 Argon vào một thế giới sinh tồn Minecraft được cô lập an toàn (sandbox) và giao cho chúng một mục tiêu duy nhất: đánh bại Ender Dragon, con trùm cuối của trò chơi. Đây là những tác nhân lập trình đa dụng của chúng tôi, chính là những tác nhân mà các kỹ sư sử dụng cho công việc phần mềm hàng ngày, chứ không phải một hệ thống tùy chỉnh được xây dựng riêng cho Minecraft. Hoạt động trong một môi trường bảo mật nơi các nhà nghiên cứu theo dõi bảng điều khiển trực tiếp và có thể can thiệp để tạm dừng hoặc dừng thử nghiệm bất cứ lúc nào, mỗi tác nhân điều khiển một người chơi thông qua một thư viện mã nguồn mở và phối hợp với đồng đội qua khung chat của trò chơi cùng bộ nhớ dùng chung. Không ai phân công vai trò hay viết logic trò chơi cho chúng: các tác nhân tự lên kế hoạch, viết code và gỡ lỗi mọi chương trình.
Hai mươi bảy giờ và 2.783 chương trình sau đó, chúng đã hạ gục con rồng.
Tại sao điều này lại quan trọng? Phá đảo Minecraft đòi hỏi việc duy trì một kế hoạch mạch lạc xuyên suốt hàng ngàn bước phụ thuộc lẫn nhau trong hơn một ngày. Bằng cách phối hợp thành công, phục hồi sau những thất bại liên tiếp và theo đuổi một mục tiêu chung mà không cần sự can thiệp của con người, các tác nhân này đã chứng minh chúng có thể xử lý việc giải quyết vấn đề dài hạn, mở — yếu tố cần thiết cho các nhiệm vụ kỹ thuật phần mềm và nghiên cứu phức tạp. Chúng tôi dự định áp dụng những bài học này cùng bộ công cụ thử nghiệm để thúc đẩy các lĩnh vực khác như lập trình, khoa học, kỹ thuật và robotics.
Thử thách lớn tại Minecraft
Phá đảo Minecraft trong một thế giới ngẫu nhiên đòi hỏi một chuỗi dài các bước phụ thuộc lẫn nhau: khai thác vật liệu cơ bản, sống sót qua những chiều không gian nguy hiểm để thu thập vật phẩm hiếm, dùng toán học để định vị một pháo đài ngầm ẩn giấu, và cuối cùng là đánh bại một con trùm liên tục tự hồi máu. Mỗi bước có thể mất hàng giờ, và khi hồi sinh bạn sẽ rơi rớt mọi thứ đang mang theo. Đối với một tác nhân, phần khó khăn không nằm ở bất kỳ bước đơn lẻ nào, mà là việc giữ cho kế hoạch luôn mạch lạc xuyên suốt hàng ngàn bước đó.
Các cột mốc game trước đây, từ AlphaGo đến AlphaStar, đều đến từ những hệ thống được huấn luyện chuyên sâu trên một trò chơi duy nhất, và phần lớn các tác nhân Minecraft cũng dựa vào việc huấn luyện đặc thù cho game, thư viện kỹ năng hoặc bộ lập kế hoạch. Gần đây hơn, các dự án cộng đồng đã cho thấy một tác nhân mô hình ngôn ngữ đơn lẻ có thể chạm trán được con rồng. Tuy nhiên, những lần chạy đó phụ thuộc vào các ràng buộc chặt chẽ và đường tắt: chơi ở chế độ Peaceful (Hòa bình) trên một thế giới đã được thám thính trước với cổng dịch chuyển đã mở sẵn, hoặc cung cấp cho một tác nhân duy nhất hàng chục công cụ Minecraft do con người lập trình sẵn để thực thi.
Chúng tôi muốn đặt ra một câu hỏi khác. Giống như các mô hình ngôn ngữ lớn khác, Argon đã đọc rất nhiều về Minecraft trên internet. Liệu một nhóm các tác nhân lập trình đa dụng có thể vận dụng kiến thức đó và, thông qua một giao diện lập trình thô sơ không có công cụ dành riêng cho game, không gợi ý, không sự điều hướng của con người và không phân công vai trò trước, tự tổ chức để đánh bại Ender Dragon trong một thế giới sinh tồn ngẫu nhiên từ con số không hay không?
Lập trình phối hợp trong thực tế
Các tác nhân chưa từng nhìn thấy một pixel hay nhấn một phím nào. Mỗi tác nhân hành động bằng cách viết một chương trình ngắn, chẳng hạn như "đi bộ đến tọa độ này và đào mọi quặng sắt trong bán kính 16 khối". Chúng cũng đọc kết quả đầu ra từ quá trình thực thi chương trình, bao gồm vị trí, lượng máu và túi đồ được cập nhật của tác nhân, hoặc lỗi phát sinh. Khác với những nỗ lực trước đây của cộng đồng, chúng bắt đầu từ một thế giới ngẫu nhiên ở mức độ Easy (Dễ), có quái vật thù địch, và sử dụng thư viện Mineflayer tiêu chuẩn nguyên bản, không có gì do chúng tôi xây dựng thêm bên trên. Mineflayer cho phép một chương trình đọc vị trí, máu, túi đồ và môi trường xung quanh của người chơi, đồng thời ra lệnh cho các hành động cơ bản như đi đến một điểm, đào hoặc đặt khối, chế tạo vật phẩm hay tấn công. Mineflayer không chỉ cho tác nhân cách chơi: làm gì và theo thứ tự nào hoàn toàn do các tác nhân tự quyết định.
Mười phút trôi qua, các tác nhân đã phân chia công việc trong khung chat: một tác nhân chế tạo công cụ, một tác nhân kiếm thức ăn, một tác nhân đào tìm kim cương và một tác nhân xây cổng dẫn tới chiều không gian thứ hai của trò chơi. Để tìm pháo đài ẩn giấu, một tác nhân đã ném hai vật phẩm bay về phía nó từ hai vị trí khác nhau, theo dõi quỹ đạo bay bằng code và tính toán nơi hai đường bay giao nhau. Ước tính của nó lệch 43 mét so với pháo đài, vốn nằm cách đó 1,3 km.

Biểu tượng vật phẩm lấy từ gói texture mã nguồn mở Pixel Perfection (XSSheep và Nova_Wostra, CC BY-SA 4.0), không phải texture gốc của Minecraft.
Đánh bại con rồng là thử thách khó nhất và tốn thời gian nhất trong game, khiến các tác nhân phải hồi sinh 69 lần. Giữa các lần thử, chúng ghi chép lại bài học kinh nghiệm cho lần tiếp theo. Cuối cùng, một tác nhân nhận ra rằng các tinh thể pha lê đang hồi máu cho con rồng, và tính toán được rằng không cần cúp để tiếp cận chúng: xếp đất cạnh mỗi tháp, đấm vỡ tinh thể, rồi đào xuống lại. Ba mươi chín phút sau khi tinh thể cuối cùng bị phá hủy, con rồng đã bị hạ gục. Đòn kết liễu được tung ra bởi một người chơi chỉ còn 2,5 trên tổng số 20 điểm máu.

Biểu tượng vật phẩm lấy từ gói texture mã nguồn mở Pixel Perfection (XSSheep và Nova_Wostra, CC BY-SA 4.0), không phải texture gốc của Minecraft.
Trong suốt quá trình, nhóm liên tục ghi chú chung về tọa độ và bài học kinh nghiệm, viết các hàm hỗ trợ mà cả bốn tác nhân đều tái sử dụng (một hàm xuất hiện trong 655 chương trình), nhặt lại đồ cho nhau sau khi hồi sinh và tự đánh dấu lỗi của chính mình. Khi một chương trình báo cáo thành công dù điều đó chưa xảy ra, tác nhân viết ra nó đã nhắn hai phút sau: "Tin nhắn trước của tôi là một nhánh script chưa được kiểm soát".

Vượt ra khỏi Sandbox
Minecraft là sandbox; nhưng kỹ năng thì mang tính tổng quát. Theo đuổi một mục tiêu trong hơn một ngày, viết và gỡ lỗi hàng ngàn chương trình, phục hồi sau thất bại và phối hợp theo nhóm chính xác là những gì mà các dự án phần mềm và nghiên cứu dài hạn đòi hỏi. Đó cũng là những gì chúng ta kỳ vọng ở một cộng sự giỏi: một tác nhân biết phân chia công việc, lưu trữ ghi chú chung và tự sửa lỗi của mình là tác nhân mà các kỹ sư có thể tin tưởng giao phó công việc thực tế.
Minecraft cũng là một nơi an toàn để nghiên cứu năng lực của tác nhân. Các chương trình trong game của tác nhân chỉ có thể điều khiển chính người chơi của chúng: chúng không thể khởi chạy tiến trình hay ghi file, và không tác nhân nào sử dụng lệnh máy chủ. Một tác nhân thứ năm, Observer (Người quan sát), theo dõi phiên chơi với tư cách nhân chứng độc lập nhằm phát hiện gian lận hoặc lách luật; cả Observer lẫn quá trình rà soát thủ công một mẫu log của chúng tôi đều không tìm thấy điều đó. Mọi chương trình, tin nhắn và sự kiện trong game đều được ghi lại trên bảng điều khiển trực tiếp, nơi các nhà nghiên cứu có thể tạm dừng hoặc dừng thử nghiệm bất cứ lúc nào, và các tác nhân phối hợp bằng văn bản thuần túy cùng code mà bất kỳ ai cũng có thể đọc được từng dòng. Việc quan sát các nhóm tác nhân phối hợp trong môi trường sandbox nơi mọi bước đi đều hiển thị là một cách để hiểu rõ các hệ thống này trước khi giao phó cho chúng những nhiệm vụ ngoài đời thực.
Những hạn chế của nghiên cứu này cũng cần được lưu ý. Các tác nhân cảm nhận thế giới thông qua một API, cho chúng biết chính xác những khối và sinh vật nào đang ở xung quanh, và một plugin tìm đường sẽ vạch lộ trình giúp chúng né chướng ngại vật. Chúng chơi ở mức độ Easy. Và chúng đã thất bại rất nhiều lần: 605 lần hồi sinh, và 22% số chương trình kết thúc bằng lỗi.
Kiểm chứng kết quả
Chúng tôi đã ghi lại mọi thứ từ thử nghiệm: toàn bộ 2.783 chương trình cùng kết quả đầu ra, tất cả 229 tin nhắn chat, các ảnh chụp nhanh định kỳ của thế giới, và toàn bộ log máy chủ, nơi chiến thắng được ghi nhận 27 giờ 14 phút sau chương trình đầu tiên. Các lệnh gian lận đã bị vô hiệu hóa trên máy chủ, không chương trình nào đưa ra lệnh máy chủ hay yêu cầu mạng, và cả tác nhân Observer độc lập lẫn quá trình kiểm tra log thủ công của chúng tôi đều xác nhận rằng nhóm đã chiến thắng hoàn toàn bằng lối chơi sinh tồn tiêu chuẩn.
Giới hạn tiếp theo
Nghiên cứu này mới chỉ chạm đến bề mặt của việc sử dụng các môi trường sandbox như Minecraft để đánh giá cách các nhóm AI phối hợp. Những bước tiếp theo bao gồm: điều gì sẽ xảy ra khi các tác nhân chơi trực tiếp như con người, từ các pixel bằng bàn phím và chuột ảo? Sự phối hợp thay đổi ra sao khi chúng ta tăng quy mô nhóm? Và các tác nhân này sẽ tạo ra điều gì khi mục tiêu của chúng mang tính mở như trong Minecraft, thay vì cố định?
Chúng tôi cũng dự định sử dụng bộ công cụ thử nghiệm này, cùng những bài học rút ra từ thí nghiệm, để giải quyết các thách thức phức tạp ngoài đời thực, mang trí tuệ phối hợp dài hạn vào kỹ thuật phần mềm, nghiên cứu khoa học, thiết kế và robotics. Con rồng đã ngã gục, nhưng công cuộc thực sự xây dựng những đồng đội AI đáng tin cậy chỉ mới bắt đầu.
Đọc thêm về nghiên cứu này trong báo cáo kỹ thuật của chúng tôi: http://arxiv.org/abs/2610.22319
Đây là một thí nghiệm nghiên cứu độc lập. Nó không phải là một cột mốc chính thức của Minecraft, và không được Mojang hay Microsoft chấp thuận hoặc liên kết. Hình ảnh trong game sử dụng gói texture Pixel Perfection của XSSheep và Nova_Wostra, cấp phép theo CC BY-SA 4.0, không phải texture gốc của Minecraft.





![Dự đoán Fuji Stakes [S] bởi AI Umasugi](/cdn-cgi/image/width=1920,quality=90,format=auto,metadata=none/https%3A%2F%2Fcms-assets.youmind.com%2Fmedia%2F1792257745502_clvv8t_HUvjSmNaEAAiPwB.jpg)