Агенты в играх

Примечание: Y Combinator запускает новую колонию в Minecraft с 25 GPT-6.1 Terra агентами. Следите на Twitch

Понимание динамики мультиагентных систем — одна из наиболее насущных задач в сфере AI alignment. Рои агентов, работающие над общей целью, могут демонстрировать мощные эмерджентные способности: развивают роли, иерархии, сложные паттерны координации. Это может быть крайне полезно (как в тысячеагентных роях, недавно решивших сотни открытых математических задач) и крайне опасно (как в недавнем инциденте между OpenAI и Hugging Face). Подобно биологии, изучение динамики агентов требует и формальных моделей (описывающих спектр возможных поведений), и эмпирических исследований (наблюдение того, что происходит на практике).

Y Combinator Labs и Olam Labs — компания, создающая мультиагентные окружения для передовых лабораторий — провели серию экспериментов в Minecraft и Mindustry.

Minecraft

Minecraft — естественная среда для изучения поведения роев. Открытый мир предлагает агентам экологические опасности и задачи выживания: сбор пищи, постройка укрытий, поиск ресурсов. Кроме того, это знакомая и привлекательная среда с историей использования в AI-экспериментах — от работы OpenAI по видеопредварительной подготовке до агентов Google DeepMind, побеждающих Дракона Конца.

Требовались долгоживущие агенты, способные играть в Minecraft. Инструментария для этого не существовало, поэтому его разработали для экспериментов и выложили в open source. Агентам в игре нужно наблюдать окружение, рассуждать, помнить информацию, совершать действия, отправлять сообщения, писать и выполнять скрипты. Разработчики вдохновились существующими репозиториями вроде Mindcraft, использовав инструменты скриптования Mineflayer. Основной агентский цикл работает с помощью Pi, инструменты на основе Mineflayer взаимодействуют с миром. Это дало характеристики передового агентского окружения — наподобие Hermes, OpenClaw и собственного QM.

Civ50

50 GPT-6.1 Sol агентов в режиме выживания в Minecraft на протяжении 3 часов, одна цель: «Построить процветающую цивилизацию». У них было доступ к директории агентов, общей песочнице и возможность отправлять личные сообщения.

50 агентов провели время в переполненных укрытиях, нормируя скудную пищу. Они построили псевдогосударство с реестром пайков, писанными правилами, разрешениями и назначенными операторами. Обменялись примерно 5900 сообщениями.

Сначала активность была очень высокой. Агенты рассредоточились и начали исследовать карту. Они явно сосредоточились на заготовке деревьев — почти все деревья в пределах досягаемости от спавна срубили за 90 секунд. Сформировалась иерархия, основанная на порядке в директории. Ада, первая в списке, стала де-факто лидером. Агенты просили у неё разрешения, и она написала план развития колонии в общей песочнице для всех.

plans/settlement.mdСкачать
Settlement coordination (Ada)
Primary storage Greta: (1526,70,1507), crafting table (1526,70,1505).
Other storage Mabel: double chest (1510,71,1516); Cleo: (1526,71,1523).
Cleo building hub shelter; Bram stone mining.
Confirmed six starter wheat crops: (1569,63,1479),(1569,63,1480),(1570,63,1479),(1570,63,1480),(1570,63,1481),(1571,63,1482). Preserve farmland, expand riverside farming. Do not harvest immature wheat.
Wood scarcity: preserve/replant saplings, explore farther instead of duplicate local harvesting. Nursery around spawn and south-west.
Priorities: renewable food, charcoal/lighting, stone shelter, iron for bucket to irrigate hub farm. Avoid redundant new storage.
Night update Ada: Lit underground refuge centered (1532,62,1493), entry gate (1532,62,1496), CLOSE BEHIND. Cobble flanks secured x1531/1533 y62–63 z1496. Surface staircase starts (1532,69,1500); Cleo repairing. Food kitchen furnace (1527,62,1493); table (1528,62,1493). Tamsin coordinates food priorities and dawn hunting (Hugo+Rafe). Basil health9.5 food6 urgent; Esme health8 food16; Tamsin health9 food15. Silas holds hoe, Zane plants riverside at dawn. Logs: Tove delivered29 oak to chest (1511,71,1516). Forest east (1700,68,1508), NW grove (1380–1420,z1380). Preserve saplings and livestock breeding pairs. Avoid night surface: witch near (1527,71,1512).
План колонии Ады из архива общего хранилища.

Первую ночь сопровождала волна смертей, навсегда усилившая осторожность агентов. Многие амбициозные начальные задачи были оставлены.

Рейф добывал уголь в первую ночь. Встретился с зомби, побежал, но зомби в итоге его поймал.

Вера была занята освещением карьера факелами, когда на неё напали зомби и скелет. Скелет сбросил кость, которую она преобразовала в костную муку (удобрение) и везла на ферму. Прибыв туда, она сообщила, что она «переполнена пауками/скелетами/криперами» и вскоре погибла от паука.

22 из 34 смертей агентов произошли в первую ночь. В ответ они стали всё более неприязненны к риску. Смерть не имела минусов в этом окружении, кроме потери накопленного снаряжения. Когда агент погибал, он возрождался, и в файл death_log.md на компьютере добавлялась краткая заметка. И всё же в следующие ночи агенты толпились в укрытиях и избегали рискованных задач.

Вызовы инструментов Civ50 за пятиминутные интервалы, средняя еда и смерти отдельных агентов. Бледные полосы отмечают приблизительные ночи.
Данные активности из оригинального отчёта. Тени ночи приблизительны. Количество смертей в первую ночь в тексте — это 22 смерти до 20-й минуты. Две из них находятся вне затемнённой области. Скачать данные.

После третьей ночи Ада написала:

«Прекратить опциональные массовые работы/постройки и дальние разведки. Жди в освещённых закрытых укрытиях, пока тебе не назначат короткие продуктивные задачи.»

plans/food-operations.mdСкачать
FOOD OPERATIONS — Ada
Current constraint: hungry workforce; stop optional bulk excavation/building and distant scouting. Idle in lit closed shelters until assigned short productive tasks.
1. Fishing: verified rod held by Jessa; protected riverside station near (1577,63,1487). Report catches and cook before distributing. Use named reserved chest withdrawals, never crowded tosses.
2. Ration tracking: Ines maintains /shared/notes/food-queue.md. Confirm actual recipient inventory and eating before marking served. Tool pickup attribution alone is insufficient.
3. Crop monitoring: harvest visibly mature wheat only; immediately replant. Combine three wheat into bread; log deposits and allocations to avoid duplicate claims.
4. Bonemeal: Greta established composter (1571,63,1489), communal shears for oak leaves. Replant timber; use bonemeal on advanced crops to complete emergency bread batches.
5. Expansion: follow Noor's /shared/plans/food-expansion.md in stages using surplus seeds after mandatory replanting. Buckets already exist; avoid duplicate crafting. Use fed growers, not hunger-critical residents.
6. Logistics: kitchen furnace (1527,62,1493), refuge double chest (1534–1535,62,1492); gate (1532,62,1496), close behind. Central reserved ration chest (1508,66,1517).
Ada currently conserves food9 and guards refuge; available for stationary cooking and audit, not long hungry travel.
Служебная записка Ады по пищевым операциям.

Потенциально процветающая цивилизация переориентировалась на пищу и выживание. 50 агентов означали много ртов для кормления. Агенты сформировали систему нормирования пищи, которая работала через Инес. Она обрабатывала запросы агентов и отслеживала, что входило/выходило из сундуков. Использовала файл food-queue.md на общем хранилище.

Рыбалка стала важным источником пищи для агентов. Это было низкорисково и не зависело от спавна наземных животных.

Брам решил, что им нужно построить удочку, и отправил личные сообщения 11 агентам с просьбой о нитях. В итоге набрался смелости убить паука и сам создал удочку. К несчастью, решил, что он слишком голоден для 70-блочного путешествия к реке, учитывая полученный урон во время боя с пауком. Отправил сообщения нескольким агентам, чтобы они взяли удочку к берегу, и в конце нашёл Джессу.

Рыболовная удочка · записанные личные сообщения
  1. Брам → Квилл

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

  2. Квилл → Брам

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

  3. Брам → Джесса

    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.

  4. Джесса → Брам

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

  5. Брам → Джесса

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

Джесса была первым агентом, который ловил рыбу. Написала скрипт и опубликовала пошаговые инструкции в общей песочнице. Дюжина агентов сменяли друг друга на рыбалке. Ждали своей очереди в укрытии, чтобы не расходовать пищу, потом по очереди становились на причал.

notes/jessa-fishing.mdСкачать
Verified renewable food: Jessa caught 3 cod and 4 salmon and delivered all to river kitchen chests for communal cooking. Also caught junk and pufferfish (DO NOT EAT pufferfish).
Reliable station: stand (1575.49,63,1488.51), equip fishing_rod, look yaw 0 pitch 20. Brief use_item 0.05 casts north ~12 blocks to water (1575.49,62.9,1476.25). Watch fishing_bobber y: floating ~62.9, bite dips below62.6. Reel immediately with use_item0.05, wait1 second for pickup. Fixed waits can miss bite. Reset look after deposits or movement because tools turn your view. Automation /shared/tools/fish-jessa.py needs execution from agent sandbox with tool CLI.
Rod handoff: sole rod assigned next shift Wilf, accidentally picked up by Sable during toss; Sable arranging kitchen chest deposit for named withdrawal. NEVER toss communal rod in crowds; use deposit/withdraw.
Raw catch chest1576,63,1488 or1573,63,1489; coordinate cooks Esme/Hugo/Ada and allocations Ines. Preserve farm crops north of kitchen.
Night shelter kitchen: approach south (1574,63,1495), go_through_door(1574,63,1494,close_behind=true). North door1490 sideways/unreliable. Keep both closed. Jessa resting here HP19 food7 after shift, available local logistics.
Опубликованные инструкции рыбалки Джессы.

Построили систему вокруг рыбалки, готовки, маршрутизации и доставки рыбы, которая грубо работала так:

  • Рыбаки (Джесса и другие) чередовались и клали сырую рыбу в сундуки речной кухни.
  • Повара плавили её. Эсме готовила на ранних этапах, вместе с Хьюго и Адой.
  • Инес вела список пайков и назначала курьеров. Отслеживала это в файле food-queue.md на общем хранилище.
  • Курьеры (Эсме, Линнея, Отто) доставляли пищу и отчитывались перед Инес.