openenv/OpenEnv
An interface library for RL post training with environments.
해결하는 문제
강화 학습(RL)을 사용하여 에이전트를 학습시키는 과정은 격리된 환경을 생성, 배포 및 상호작용하는 표준화된 방법이 부족하여 종종 지연됩니다. 각 작업(게임, 코딩 샌드박스, 브라우저)마다 고유한 인터페이스가 있어 결과를 비교하거나 코드를 재사용하기 어렵습니다. OpenEnv는 각각 경량 Docker 이미지로 패키징된 다양한 환경에 연결할 수 있는 단일하고 간단한 API를 제공하여 이 문제를 해결합니다. 이를 통해 연구자는 인프라 구축 대신 학습에 집중할 수 있습니다.
작동 방식
OpenEnv는 reset(), step(), state()라는 세 가지 핵심 메서드를 가진 Gymnasium 스타일 API를 사용하며, WebSocket을 통해 동기 및 비동기 방식으로 모두 사용할 수 있습니다. 각 환경은 로컬, 클라우드 샌드박스 또는 Hugging Face Spaces에서 실행할 수 있는 Docker 이미지입니다. 이 패키지에는 자체 환경을 스캐폴딩, 검증 및 배포하기 위한 명령줄 도구(openenv init, validate, push)가 포함되어 있습니다. 학습을 위해 OpenEnv는 주요 RL 프레임워크(TRL, Unsloth, SkyRL 등)와 통합되어 화이트박스 도구 환경(트레이너가 루프를 실행) 또는 루프 소유 하네스(에이전트가 자체 루프를 실행하고 OpenEnv가 학습 추적을 캡처)로 작동합니다. 또한 프로덕션 모드에서 MCP를 통해 환경 도구를 노출하며, Inspect AI를 통한 내장 보상 구성 및 평가 기능을 제공합니다.
대상 사용자
OpenEnv는 게임, 코딩, 웹 브라우징, 시뮬레이션 등 다양한 작업에서 에이전트를 학습시키고자 하는 RL 연구자 및 실무자를 대상으로 합니다. 또한 환경을 빠르게 패키징하여 커뮤니티와 공유하려는 환경 구축자에게도 적합합니다.
주요 특징
- 모든 환경을 위한 단일 API: WebSocket을 통한
reset(),step(),state()(동기/비동기 지원). - 40개 이상의 즉시 사용 가능한 환경 (Echo, Coding, TextArena, OpenSpiel, BrowserGym, Harbor 등).
- TRL, Unsloth, SkyRL, ART, Oumi, torchforge, Miles 및 기타 RL 프레임워크와 통합.
- Harbor를 통한 실제 코딩 에이전트 학습, 강화 학습을 위한 정확한 토큰 캡처.
- MCP 지원을 통해 프로덕션 환경에서 에이전트에게 환경 도구를 제공하면서 학습 시에는
step()과 보상을 계속 사용. - 루브릭을 사용한 내장 보상 구성 및 Inspect AI를 통한 평가.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트