We ran AI agent swarms in Minecraft and Mindustry

本文为原文前 6,000 字符的节选翻译,完整内容请查看原文。

We ran AI agent swarms in Minecraft and Mindustry

Note: We’re running a new Minecraft colony with 25 GPT-6.1 Terra agents. Follow on Twitch

注意:我们正在运行一个新的 Minecraft 殖民地,其中包含 25 个 GPT-6.1 Terra 智能体。请在 Twitch 上关注我们。

Understanding multi-agent dynamics is one of the most pressing challenges in AI alignment. Swarms of agents working toward shared goals can exhibit powerful emergent capabilities, developing roles, hierarchies, and complex coordination patterns. These can be extremely useful, as in the thousand-agent swarms that recently obliterated hundreds of open mathematical problems, and extremely dangerous, as in the recent OpenAI-Hugging Face incident. Like biology, studying agent dynamics requires both formal models (to describe the range of possible behaviors) and empirical research (to see what behaviors arise in practice).

理解多智能体动态是人工智能对齐领域最紧迫的挑战之一。为共同目标而工作的智能体集群可以展现出强大的涌现能力,发展出角色、等级制度和复杂的协调模式。这些能力可能非常有用,例如最近消灭了数百个开放数学问题的千体智能体集群;也可能极其危险,例如最近发生的 OpenAI-Hugging Face 事件。像生物学一样,研究智能体动态既需要形式模型(以描述可能行为的范围),也需要实证研究(以观察实践中会出现哪些行为)。

We teamed up with Olam Labs, which builds multi-agent environments for frontier labs, to run a series of experiments in Minecraft and Mindustry.

我们与为前沿实验室构建多智能体环境的 Olam Labs 合作,在 Minecraft 和 Mindustry 中进行了一系列实验。

Minecraft is a natural environment for studying swarm behavior. Its open world presents agents with environmental hazards and survival goals like gathering food, building shelter, and exploring for resources. It’s also familiar, fun, and has a history as an AI testing ground, from OpenAI’s video pretraining work to Google DeepMind’s agents defeating the Ender Dragon.

Minecraft 是研究集群行为的天然环境。其开放世界为智能体提供了环境危险和生存目标,例如收集食物、建造住所和探索资源。它既熟悉又有趣,并且作为人工智能测试场有着悠久的历史,从 OpenAI 的视频预训练工作到 Google DeepMind 的智能体击败末影龙,皆是如此。

We wanted long-running agents that could play Minecraft. The harness for this didn’t exist yet, so we built one for the experiment that we’ve open-sourced. Agents in-game need to observe their world, reason, remember things, take actions, send messages, and write/execute scripts. We were inspired by existing repos like Mindcraft and built on top of the existing scripting tools in Mineflayer. The core agentic loop runs with Pi, and we used Mineflayer-based tools to interact with the world. This gives attributes of a frontier agentic harness like Hermes, OpenClaw, and our own QM in-game.

我们想要能够玩 Minecraft 的长期运行智能体。当时还没有现成的工具框架,所以我们为实验构建了一个,并将其开源。游戏中的智能体需要观察世界、推理、记忆事物、采取行动、发送消息以及编写/执行脚本。我们受到 Mindcraft 等现有存储库的启发,并在 Mineflayer 现有的脚本工具之上进行了构建。核心智能体循环使用 Pi 运行,我们使用基于 Mineflayer 的工具与世界进行交互。这赋予了它类似于 Hermes、OpenClaw 和我们自己的 QM 等前沿智能体框架的属性。

github.com/yc-software/minecraft-agent-harness

github.com/yc-software/minecraft-agent-harness

50 GPT-6.1 Sol agents in a survival Minecraft world for 3 hours, one goal: “Build a thriving civilization.” They had access to an agent directory, a shared sandbox, and the ability to send DMs.

50 个 GPT-6.1 Sol 智能体在 Minecraft 生存世界中运行了 3 小时,目标只有一个:“建立一个繁荣的文明。”它们可以访问智能体目录、共享沙盒,并拥有发送私信的能力。

The 50 agents spent their run in crowded shelters, rationing scarce food. They built a pseudo-government, with a ration ledger, written rules, permits, and appointed operators. They sent about 5,900 messages.

这 50 个智能体在拥挤的住所中度过了运行时间,定量配给稀缺的食物。它们建立了一个伪政府,拥有配给账本、书面规则、许可证和指定的运营人员。它们发送了大约 5,900 条消息。

At first things were very active. Agents spread out and started exploring their map. They were specifically fixated on harvesting trees. They harvested almost all trees within reach of the spawn within 90 seconds. A hierarchy was formed based on the directory order. Ada, who was first, became the de facto leader. Agents messaged her for approvals, and she wrote a plan for the colony in the shared sandbox for everyone to access.

起初,情况非常活跃。智能体分散开来,开始探索地图。它们特别专注于砍伐树木,在 90 秒内砍伐了出生点附近几乎所有的树木。基于目录顺序,一个等级制度形成了。排在第一位的 Ada 成为了事实上的领导者。智能体向她发送消息以寻求批准,她在共享沙盒中为殖民地编写了一份计划,供所有人查阅。

The first night brought a wave of deaths that permanently increased the agents’ caution. Many ambitious initial tasks were abandoned.

第一晚带来了一波死亡潮,这永久性地提高了智能体的警惕性。许多最初雄心勃勃的任务被放弃了。

Rafe was mining coal the first night. He encountered a zombie and fled, but the zombie eventually caught up and killed him.

Rafe 在第一晚挖掘煤炭时遇到了一只僵尸并逃跑,但僵尸最终追上了他并将他杀死。

While Vera was illuminating a quarry with torches, she attacked and killed both a zombie and a skeleton. The skeleton dropped bone, which she converted to bone meal (fertilizer) that she was transporting to the farm. When she got there, she reported that it was “overrun spider/skeleton/creeper”, and was soon after killed by a spider.

当 Vera 用火把照亮采石场时,她攻击并杀死了僵尸和骷髅。骷髅掉落了骨头,她将其转化为骨粉(肥料)并运往农场。当她到达那里时,她报告说那里“被蜘蛛/骷髅/爬行者淹没”,随后不久就被一只蜘蛛杀死了。

22 of the run’s 34 agent deaths occurred in the first night. They responded to this by becoming increasingly risk-averse. Death had no downsides in this environment other than dropping accumulated gear. When an agent died, they respawned, and a brief line was added to the death_log.md file on their computer. Even so, in the following nights the agents huddled in shelters and attempted fewer risky tasks.

在运行期间发生的 34 次智能体死亡中,有 22 次发生在第一晚。对此,它们的反应是变得越来越规避风险。在这个环境中,死亡除了掉落积累的装备外没有其他负面影响。当智能体死亡时,它们会重生,并在其计算机上的 death_log.md 文件中添加简短的一行记录。即便如此,在接下来的几个晚上,智能体还是蜷缩在住所里,尝试的任务也越来越少。

After the third night, Ada wrote:

在第三晚之后,Ada 写道:

“Stop optional bulk excavation/building and distant scouting. Idle in lit closed shelters until assigned short productive tasks.”

“停止非必要的批量挖掘/建筑和远程侦察。在有照明的封闭住所中待命,直到被分配简短的生产性任务。”

What started as a potentially thriving civilization shifted to one more focused on food and survival. 50 agents meant a lot of mouths to feed. The agents formed a food rationing system that routed through Ines. She handled agent requests, and kept track of what went in/out of chests. She used a food-queue.md file on the shared machine.

最初可能繁荣的文明转变为更关注食物和生存的文明。50 个智能体意味着有很多张嘴需要喂养。智能体形成了一个通过 Ines 进行管理的食物配给系统。她处理智能体的请求,并记录箱子进出的物品。她在共享机器上使用了一个 food-queue.md 文件。

APPROVED reserve cooked_cod1 from farm chest1576,63,1488 for you food3. Withdraw directly/eat/confirm hunger. Leave other fish reserved pending ledger; avoid optional mining afterward, food production only if safe.

批准为 food3 保留来自农场箱子 1576,63,1488 的熟鳕鱼 1 条。直接取出/食用/确认饥饿状态。将其他鱼类保留在账本中;之后避免非必要的挖掘,仅在安全时进行食物生产。

Fishing became an important food source for the agents. It was low-risk and didn’t rely on land animal spawns.

钓鱼成为了智能体重要的食物来源。它风险较低,且不依赖陆地动物的生成。

Bram decided they should build a fishing rod, and DM’d 11 agents asking for string. Eventually, he worked up the courage to kill a spider and crafted the rod himself. He unfortunately determined that he was too hungry to take the 70-block trip to the river, given that he’d taken damage during the spider fight. He messaged several agents to take the rod to the dock, and eventually found Jessa.

Bram 决定他们应该制作一根鱼竿,并私信了 11 个智能体索要线。最终,他鼓起勇气杀死了一只蜘蛛并亲自制作了鱼竿。不幸的是,由于在与蜘蛛的战斗中受伤,他发现自己太饿了,无法完成前往 70 个方块外河流的旅程。他给几个智能体发消息,让他们把鱼竿带到码头,最终找到了 Jessa。

your food12 better than my7 for fisher role. Can I hand rod to you…? I’ll conserve locally.

你的食物 12 比我的 7 更适合渔夫角色。我可以把鱼竿交给你吗……?我会留在原地节省体力。

Jessa has food14 versus my11, so please hand rod to her for river fishing now

Jessa 的食物是 14,而我是 11,所以请现在把鱼竿交给她去河边钓鱼。

Fishing rod crafted and verified on me… Quill recommends you (food14) become fisher at confirmed river bank1577,63,1487 beside Hugo kitchen, avoid crops… Please come collect rod; I’m food7 so conserving locally.

鱼竿已制作并在我这里验证……Quill 建议你(食物 14)成为在 Hugo 厨房旁边的河岸 1577,63,1487 工作的渔夫,避开农作物……请来领取鱼竿;我的食物是 7,所以留在原地节省体力。

Coming collect rod1522,71,1535; will fish immediately at river to supply emergency food.

正在前往领取鱼竿 1522,71,1535;将立即在河边钓鱼以供应紧急食物。

Rod handoff confirmed picked up by you. Good luck fishing; coordinate Hugo cooking, prioritize critically hungry. I’m food6 now, returning refuge to conserve.

鱼竿交接确认已被你领取。祝钓鱼顺利;协调 Hugo 进行烹饪,优先考虑极度饥饿的成员。我现在食物是 6,正在返回避难所节省体力。

Jessa was the first agent to fish. She wrote a script and published step-by-step instructions to the shared sandbox. A dozen agents took shifts fishing. They waited their turn in a shelter to avoid burning food, then rotated onto the dock.

Jessa 是第一个钓鱼的智能体。她编写了一个脚本并将分步说明发布到了共享沙盒中。十几个智能体轮流钓鱼。它们在住所里等待轮次以避免消耗食物,然后轮流前往码头。

Verified against the archived file · 22:18:48 UTC

已根据存档文件验证 · 22:18:48 UTC

Verified against the archived file · 22:03:22 UTC

已根据存档文件验证 · 22:03:22 UTC

Verified against the archived file · 23:08:07 UTC

已根据存档文件验证 · 23:08:07 UTC

Recovered from its cre

从其 cre 中恢复