프로젝트 소개

TorchRL은 강화 학습을 위한 모듈식, 프리미티브 우선, Python 우선 PyTorch 라이브러리입니다. 단일 알고리즘 구현이 아니라 RL 시스템을 위한 조합 가능한 빌딩 블록을 제공하여 코드를 PyTorch 프로그래밍 모델에 가깝게 유지합니다. 이 라이브러리는 훈련 루프 전반에 걸쳐 명명된 필드, 구조, 배치 차원 및 장치를 보존하는 사전과 유사한 텐서 컨테이너인 TensorDict를 중심으로 구성됩니다. 주요 구성 요소로는 환경 및 변환(Gymnasium, DM Control, Brax, PettingZoo, VMAS, Isaac Lab 등을 위한 래퍼 포함), 단일 프로세스, 비동기, 다중 프로세스 및 분산 실행을 위한 수집기, 우선 순위 및 memmap 기반 저장을 지원하는 리플레이 버퍼, 명시적 입력/출력 키가 있는 정책 모듈, 그리고 PPO, SAC, DQN, TD3, REDQ, IQL, CQL, Decision Transformer, Dreamer, MAPPO, IPPO, QMIX/VDN 등을 포괄하는 손실 모듈이 있습니다. 이 라이브러리는 또한 GRPO 및 SFT 목표를 포함한 다중 에이전트, 모델 기반, 모방 학습 및 LLM 사후 훈련 워크플로를 지원합니다. TorchRL 0.13은 Triton 및 스캔 백엔드를 사용한 더 빠른 순환 RL 경로, 사용자 정의 MuJoCo 환경, 다중 에이전트 가치 정규화 유틸리티, HER 리플레이 버퍼, 그리고 개선된 수집기 및 리플레이 버퍼 인체 공학을 추가합니다. 설치는 PyPI를 통해 가능하며 Gymnasium, Atari, 오프라인 데이터, 다중 에이전트 환경 및 LLM 백엔드를 위한 선택적 추가 기능이 있습니다.