본문으로 건너뛰기

StrandedBot: Ollama 기반 로컬 LLM 자율 에이전트 서바이벌 게임

Ollama를 통해 로컬 LLM이 로봇 캐릭터를 조종하여 태양 플레어로부터 살아남고 기지를 건설하는 자율 에이전트 게임 프로젝트이다.

섹션별 상세

Ollama를 활용한 로컬 LLM 자율 주행 모드를 지원한다. OLLAMA_PLAY 환경 변수를 활성화하면 LLM이 로봇을 직접 조종하며 기본 모델로 Ministral-3:8b를 사용한다. 사용자는 게임 시작 시 로봇의 미션 프롬프트를 직접 편집하거나 인터랙티브 모드를 통해 로봇의 질문에 답변하며 협력 플레이를 진행할 수 있다.
로봇 캐릭터, 타일 맵, 그리고 각종 상태 정보와 로그가 표시된 게임 실행 화면이다.
ScreenshotLLM이 조종하는 로봇의 현재 위치, 에너지 상태, 태양 플레어 카운트다운 등을 보여주는 UI 창들이 배치되어 있다. 오른쪽 하단의 Bot Speech 창을 통해 LLM이 현재 상황을 어떻게 요약하고 다음 단계를 계획하는지 실시간으로 확인할 수 있다.
게임 시작 시 LLM 모델과 프롬프트 모드를 선택하는 설정 화면이다.
Screenshot사용자가 Ollama에서 실행할 모델(예: ministral-3:8b)을 지정하고 기본 프롬프트 또는 커스텀 프롬프트를 선택할 수 있는 인터페이스를 보여준다. 인터랙티브 모드 활성화 여부를 결정하여 사용자와 AI의 협력 방식을 설정할 수 있음을 나타낸다.
게임 메커니즘은 태양 플레어 위협과 자원 관리를 중심으로 설계되었다. 20시간마다 발생하는 태양 플레어로부터 살아남기 위해 서식지를 수리하고 에너지를 관리해야 한다. 지형 생성, 시야 계산, 서식지 손상 추적 등 복잡한 게임 상태가 Python으로 구현되어 LLM에게 실시간으로 전달된다.
LLM은 6가지 정의된 도구 호출 스키마를 통해 게임 환경과 상호작용한다. MoveTo, LookClose, LookFar, Dig, Create 등의 액션을 사용하여 지형을 탐색하고 자원을 채굴하며 구조물을 건설한다. 각 액션은 시간 기반으로 실행되며 LLM은 현재 상태와 목표를 분석하여 최적의 도구를 선택한다.
시스템 아키텍처는 기능별로 철저히 모듈화되어 있다. 게임 로직을 담당하는 game_logic.py, 렌더링을 처리하는 rendering.py, Ollama 연동을 관리하는 ollama_agent.py 등으로 나뉜다. 특히 sys.stdout을 가로채어 게임 내 UI 창에 실시간 로그를 출력하는 구조를 통해 에이전트의 사고 과정을 시각적으로 모니터링할 수 있다.

기술

  • Ollama
  • Ministral-3:8b
  • Pygame Zero
  • Python
  • Poetry

활용 사례

  • LLM 에이전트 의사결정 테스트
  • 로컬 AI 기반 게임 개발
  • AI 도구 호출 메커니즘 학습

언급된 리소스

AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 03. 16.수집 2026. 03. 16.출처 타입 RSS

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.