THUSI-Lab/GameScaling
Scaling in Games: Continued Pre-Training for Embodied Agents in Diverse Virtual Worlds. Weights on Hugging Face.
해결하는 문제
AI가 픽셀 정보만으로 컴퓨터 게임을 플레이하도록 학습시키는 것입니다. 어려운 점은 시각-언어 모델을 실시간 게임 컨트롤러로 변환하는 것입니다. 게임마다 수동으로 규칙을 작성할 필요 없이 화면의 내용을 읽고, 무엇을 할지 결정하며, 이를 정확한 키보드 및 마우스 명령으로 표현해야 합니다. GameScaling은 Qwen3.5 언어 모델을 실제 게임 플레이 데이터로 사전 학습시켜 시각 정보만으로 반응하는 방법을 학습함으로써 이 문제를 해결합니다.
작동 방식
GameScaling은 현재 게임 프레임(과거 프레임 및 작업의 짧은 기록 포함)을 입력받아 다음 200ms 동안의 입력을 반환합니다. 이는 33ms 단위의 키 입력 6회와 전체 청크에 대한 마우스 이동 및 스크롤로 구성됩니다. 모델은 1,600시간의 키보드 및 마우스 게임 플레이 데이터로 지속적인 사전 학습을 거쳤으며, 학습 코드는 포함되지 않고 추론 코드만 제공됩니다. 시스템 프롬프트는 모델에게 게임 이름, 규칙, 키 바인딩을 알려주며, 모델은 직접 행동하거나 행동하기 전에 짧게 '생각'할 수 있습니다.
이 저장소는 추론 클라이언트(요청을 생성하고 응답을 파싱하는 Python 클래스), 3개의 플레이스홀더가 포함된 표준 시스템 프롬프트 템플릿, 완전한 Doom 예제 및 오프라인 테스트를 제공합니다. 체크포인트는 vLLM을 통해 서비스되며 별도의 Hugging Face 저장소에서 다운로드할 수 있습니다. 0.8B에서 27B 파라미터까지 8가지 변형이 있으며, 각각 두 가지 학습 혼합(S1: Minecraft 전용, S3: 27% Minecraft 및 기타 게임)으로 구성됩니다. 작업 형식은 단일 문자열로, 마우스 X/Y/스크롤 뒤에 세미콜론으로 구분된 6개의 키 그룹이 옵니다. 74개의 키 어휘는 브라우저 및 Unreal Engine 키 이름에 매핑되며, 파싱할 수 없는 응답은 '아무것도 하지 않음(no-op)'으로 처리됩니다.
대상 사용자
화면을 보고 게임을 플레이하는 모델을 실행하거나 연구하려는 게임 AI 연구자 및 취미 사용자. 잘 정의된 작업 형식과 키 매핑 덕분에 키보드 및 마우스 환경을 제어해야 하는 에이전트를 구축하는 모든 사람에게 유용합니다. 학습 코드가 없으므로 배포된 모델을 사용하려는 사람들을 대상으로 합니다. 시스템 프롬프트를 새 게임에 맞게 조정하고, 키 매핑을 통해 게임에 연결한 후 반환된 작업을 실행하면 됩니다.
주요 특징
- 0.8B에서 27B 파라미터까지 8개의 배포된 체크포인트(bfloat16); 9B까지는 단일 GPU에서 실행되며, 27B는 텐서 병렬 처리를 사용하여 2개의 GPU 사용
- 크기별 두 가지 학습 혼합: S1(Minecraft 전용) 및 S3(27% Minecraft, 나머지는 다른 게임), 모두 1,600시간의 게임 플레이 사용
- 3개의 플레이스홀더(게임 이름, 규칙, 키 바인딩)가 있는 단일 표준 시스템 프롬프트 — 이를 채우는 것만으로 새 게임을 시도할 수 있음
- 명확한 작업 형식: 200ms 청크 = 33ms 키 입력 6회 + 마우스 이동 및 스크롤; 연속된 단계에서 누르고 있는 키는 다시 누르지 않고 유지됨
- 두 가지 추론 모드: 생각 후 행동(모델이 작업을 출력하기 전에 추론할 수 있음) 및 행동 전용(추론 부분이 비어 있음), 둘 다 정확한 학습 형식을 유지
- 강력한 파싱: 형식이 잘못되었거나 잘린 응답은 충돌하지 않고 명시적인 '아무것도 하지 않음(no-op)'으로 처리됨
- 오프라인 단위 테스트는 GPU 없이 실행 가능하며, 프로젝트 페이지와 arXiv 논문 (2610.28698) 제공
- 코드는 Apache 2.0 라이선스로 배포
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트