Reasoning Gym 소개
‘Reasoning Gym’은 커뮤니티 주도로 만들어진 파이썬 기반 라이브러리로, 절차적으로 생성된 데이터셋과 알고리즘적으로 검증 가능한 추론 환경을 제공합니다. 이를 통해 강화 학습(Reinforcement Learning)을 활용하여 추론 모델을 훈련시킬 수 있습니다. 이 라이브러리는 대수학, 산수, 계산, 인지, 기하학, 그래프 이론, 논리 등 다양한 분야에서 80개 이상의 과제를 포함하고 있으며, 일부 과제는 단일 정답을 가지지만, 루빅스 큐브(Rubik's Cube)나 카운트다운(Countdown)과 같은 과제는 여러 정답이 존재합니다. 각 과제는 표준 인터페이스를 통해 솔루션을 검증할 수 있도록 설계되었습니다.
기존의 데이터셋은 고정된 문제와 정답을 제공하는 반면, ‘Reasoning Gym’은 절차적 생성 방식을 통해 무한에 가까운 다양한 문제를 생성할 수 있습니다. 이는 모델이 다양한 상황에서 추론 능력을 향상시키는 데 큰 도움이 됩니다.
Reasoning Gym의 주요 특징
-
다양한 과제 제공: 대수학, 산수, 계산 등 다양한 분야의 80개 이상의 과제를 포함하고 있습니다.
-
절차적 데이터셋 생성: 무한에 가까운 다양한 난이도의 데이터셋을 생성할 수 있습니다.
-
알고리즘적 검증: 각 과제는 표준 인터페이스를 통해 솔루션을 검증할 수 있도록 설계되었습니다.
설치 및 사용 방법
‘Reasoning Gym’은 파이썬 3.11 이상의 버전을 필요로 합니다. 설치는 PyPI를 통해 간단하게 진행할 수 있습니다:
pip install reasoning-gym
설치 후, 다음과 같이 ‘leg_counting’ 데이터셋을 생성하고 사용할 수 있습니다:
import reasoning_gym
data = reasoning_gym.create_dataset('leg_counting', size=10, seed=42)
for i, x in enumerate(data):
print(f'{i}: q="{x["question"]}", a="{x["answer"]}"')
print('metadata:', x['metadata'])
assert data.score_answer(answer=x['answer'], entry=x) == 1.0
이 코드는 다양한 동물의 다리 수를 계산하는 문제를 생성하고, 각 문제에 대한 정답을 검증합니다.
Reasoning Gym에 포함된 다양한 데이터셋에 대해서는 Dataset Gallery를 참고해주세요!
라이선스
Reasoning Gym 프로젝트는 Apache-2.0 라이선스로 공개 및 배포되고 있습니다.
Reasoning Gym 프로젝트 GitHub 저장소
이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다.
파이토치 한국 사용자 모임
이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일
로 보내드립니다! (기본은 Weekly지만 Daily로 변경도 가능합니다.)
아래
쪽에 좋아요
를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~