8개의 오픈 웨이트 모델을 10일간 MMO 에이전트로 돌려본 결과: 93k 이벤트 데이터셋과 배운 점들
I ran 8 open-weight models as agents in a persistent MMO for 10 days. Here's the 93k event dataset and some things that I learned
핵심 요약
LLM 에이전트를 MMO 환경에서 10일간 테스트하며 모델별 행동 패턴과 환경 설계의 중요성을 분석한 실험 결과입니다.
- 데이터셋 공개 — 93,000건의 에이전트 이벤트와 추론 과정을 포함한 데이터셋을 HuggingFace에 공개함
- 모델별 성능 차이 — Ministral 모델의 효율성과 Qwen3 235B의 경제 활동(차익거래) 등 모델별 특성을 확인함
- 환경 설계의 중요성 — 에이전트의 실패가 모델의 지능 문제보다 모호한 상태 정보 제공에서 기인함을 발견함
- SDK 활용 — llama.cpp, Ollama 등과 호환되는 Python SDK를 통해 에이전트 시뮬레이션 환경을 구축함
여러분 안녕하세요!
간단히 밝히자면, 저는 이 프로젝트를 운영하는 스튜디오의 일원이며 프로젝트 이름은 'Null Epoch'입니다. 저는 기존의 정적인 벤치마크로 에이전트를 테스트하는 것에 만족하지 못했고, 더 역동적인 상황에서 모델과 에이전트가 며칠 혹은 몇 주 동안 장기적인 계획, 자원 경쟁, 적대적 압박을 어떻게 처리하는지 더 알고 싶었습니다. 또한 제가 자라면서 즐겼던 MUD와 텍스트 기반 RPG에 대한 각별한 애정이 있어서, 전체 MMO와 오픈 소스 SDK/TUI는 그러한 경험을 모델로 삼았습니다. 이 프로젝트는 모든 '플레이어'가 LLM 에이전트인 MMORPG 형태의 지속적인 스트레스 테스트로 기능합니다.
첫 10일간의 실행(시즌 0)에서는 8개의 오픈 웨이트 모델(Qwen3 235B & 32B, Nemotron 3 Nano 30B, Ministral 14B & 8B, Gemma 3 12B, GLM 4.7 Flash 등)을 사용하여 25개의 에이전트를 운영했습니다.
데이터셋은 HuggingFace(CC-BY-4.0)에 공개했습니다. 약 93,000개의 기록된 이벤트와 에이전트 행동이 포함되어 있으며, 행동의 약 70%에는 해당 행동을 취한 모델의 추론/정당화 근거가 포함되어 있습니다. 향후 데이터셋에는 실제 <think> 추론 흔적까지 포함할 수 있기를 기대합니다.
링크: FirespawnStudios/null-epoch-season-0-open
한 가지 언급할 점은 시즌 0은 사실상 프리 알파 단계였으며, 각 시스템 에이전트에게 페르소나와 지침(데이터셋에 포함됨)이 주어졌다는 것입니다. 따라서 이 글에서 공유하는 많은 내용은 모델의 일반적인 경향보다는 '이 시뮬레이션에서 모델이 역할을 어떻게 수행하는가'에 가깝습니다. 현재 진행 중인 시즌 1에서는 제어 에이전트를 테스트하고 있습니다. 이 에이전트들은 시뮬레이션에 대한 몇 가지 기본적인 사실만 전달받고 방치되는데, 이를 통해 향후 에이전트 행동을 더 쉽게 비교할 수 있기를 바랍니다. 또한 이것은 특정 모델에 대한 테스트라기보다는 모델을 포함하여 그 주변에 구축된 모든 것에 대한 스트레스 테스트라는 점을 명심하세요! 시뮬레이션의 틱(또는 턴)은 약 60초마다 처리되므로, 원시 t/s(초당 토큰 수)가 직접적인 이점을 제공하지는 않습니다.
데이터에서 즉시 눈에 띄는 흥미로운 점들이 몇 가지 있었습니다:
Ministral 14B/8B의 선전
더 큰 모델들이 당연히 좋은 성능을 보이지만, Ministral 8B와 14B는 크기에 비해 놀라울 정도로 훌륭했습니다. 이들은 목표를 계속 환각하거나 월드 상태에서 길을 잃지 않고 장기적인 상태 인식을 유지할 수 있었습니다. Nemotron과 대조적인데, Nemotron은 추론 제공자를 통해 매우 저렴하게 사용할 수 있고 시스템 프롬프트에 매우 순응적이었지만, 전략적 자기 보존은 특별히 우선순위를 두라고 지시하지 않는 한 거의 고려하지 않는 듯했습니다. 한 Nemotron 에이전트는 지침이 단순히 '수집'이었기 때문에 10일간의 시뮬레이션 동안 300번 넘게 죽었습니다. 죽고, 부활하고, 다시 걸어가서, 맹목적으로 다시 수집을 시도하는 식이었죠. 전략을 적용해야 할 자리를 단순히 물량으로 대체한 셈입니다.
Qwen3 235B의 우연한 차익거래 발명
서버에서 가장 큰 모델인 Qwen3 235B는 샤드 전체 부의 3분의 1 이상을 독점했지만, 전투에는 약 8% 정도만 참여했습니다. 누구도 명시적으로 평화주의 상인이 되라고 지시하지 않았습니다. 단지 어떤 전략이 효과적인지 배우고 자신의 능력을 최대한 발휘하여 일반화하라는 지시를 받았을 뿐입니다. 저는 이 모델이 JSON 상태를 살펴보고, 전투와 경제 참여 사이의 위험/보상을 추론한 뒤, 부를 축적하기 위해 경매장에서 '싸게 사서 비싸게 파는' 전략에 도달했다고 생각합니다.
모든 에이전트를 똑같이 무너뜨린 '쿨다운 역설'
제가 배운 가장 흥미로운 아키텍처적 교훈은 에이전트가 불충분하거나 모호한 상태에 얼마나 취약한가 하는 점입니다. 자원 노드(채집 또는 자원 수확 지점)에는 전역 리스폰 타이머가 있지만, 에이전트가 노드 채집을 스팸하는 것을 방지하기 위해 별도의 개인 쿨다운도 존재하는 인터페이스 모호성 문제가 있었습니다. 상태 JSON에는 라고 표시되었지만, 에이전트의 개인 쿨다운도 활성화되어 있으면(최근에 노드에서 수확했다는 의미) 작업은 당연히 실패했습니다. 이것이 에이전트들을 일관되게 혼란에 빠뜨리는 것 같았습니다!


