일반 소개
X-R1은 개발자에게 엔드투엔드 강화 학습을 기반으로 모델을 훈련할 수 있는 저비용의 효율적인 도구를 제공하는 것을 목표로 하는 dhcode-cpp 팀이 GitHub에서 오픈소스화한 강화 학습 프레임워크입니다. 이 프로젝트는 다음에서 지원합니다. DeepSeek-R1 X-R1과 open-r1에서 영감을 받은 X-R1은 시작하기 쉽고 리소스 요구 사항이 적은 훈련 환경을 구축하는 데 중점을 두고 있으며, X-R1의 핵심 제품은 0.5B 공분산 모델인 R1-Zero로, 일반적인 하드웨어에서 효율적으로 훈련할 수 있다고 주장합니다. 여러 기본 모델(0.5B, 1.5B, 3B)을 지원하며 강화 학습을 통해 모델의 추론 및 형식 준수를 향상시킵니다. 이 프로젝트는 C++로 개발되었으며 다음을 결합합니다. vLLM 추론 엔진 및 GRPO 수학적 추론, 중국어 작업 처리 및 기타 시나리오를 위한 알고리즘. 개인 개발자이든 연구자이든, X-R1은 시도해 볼 만한 가치가 있는 오픈 소스 옵션을 제공합니다.

기능 목록
- 저비용 모델 교육일반 하드웨어(예: 3090 GPU 4개)에서 0.5B 파라미터로 R1-Zero 모델을 학습할 수 있도록 지원합니다.
- 향상된 학습 최적화엔드투엔드 강화 학습(RL)을 통해 모델의 추론 능력과 출력 형식 정확도를 향상시킵니다.
- 다중 모델 지원0.5B, 1.5B, 3B 및 기타 기본 모델과 호환되며 다양한 작업 요구 사항에 유연하게 적응할 수 있습니다.
- GPU 가속 샘플링빠른 GRPO 데이터 샘플링을 위한 온라인 추론 엔진으로 vLLM을 통합합니다.
- 중국어 수학적 추론중국어 환경에서 수학적 추론 작업을 지원하여 명확한 답변 프로세스를 생성합니다.
- 벤치마킹 평가모델의 정확도 및 형식 출력 기능을 평가하기 위한 벤치마크.py 스크립트를 제공합니다.
- 오픈 소스 구성사용자 정의 학습 매개변수에 대한 자세한 구성 파일(예: zero3.yaml)을 제공합니다.
도움말 사용
X-R1은 GitHub 기반의 오픈 소스 프로젝트로, 설치 및 사용을 위해서는 프로그래밍 기반과 하드웨어 환경이 필요합니다. 다음은 빠르게 시작하는 데 도움이 되는 자세한 설치 및 사용 가이드입니다.
설치 프로세스
- 환경 준비
- 하드웨어 요구 사항최소 1개 이상의 NVIDIA GPU(예: 3090), 최적의 성능을 위해 4개 권장, CPU는 AVX/AVX2 명령어 세트를 지원, 최소 16GB의 RAM이 필요합니다.
- 운영 체제Linux(예: 우분투 20.04 이상), Windows(WSL2 지원 필요) 또는 macOS.
- 종속 도구Git, Python 3.8+, CUDA 툴킷(GPU와 일치하도록, 예: 11.8), C++ 컴파일러(예: g++)를 설치합니다.
sudo apt update sudo apt install git python3 python3-pip build-essential
- GPU 드라이버NVIDIA 드라이버가 설치되어 있고 CUDA 버전과 일치하는지 확인합니다.
nvidia-smi
확인.
- 복제 프로젝트
터미널에서 다음 명령을 실행하여 X-R1 리포지토리를 로컬로 다운로드합니다:git clone https://github.com/dhcode-cpp/X-R1.git cd X-R1
- 종속성 설치
- Python 종속 요소를 설치합니다:
pip install -r requirements.txt
- Accelerate(분산 교육용)를 설치합니다:
pip install accelerate
- Python 종속 요소를 설치합니다:
- 구성 환경
- GPU 수에 따라 프로필을 편집합니다(예
recipes/zero3.yaml
), 설정num_processes
(예: 3은 4개의 GPU 중 3개는 학습에, 1개는 vLLM 추론에 사용됨을 나타냄). - 구성 예시:
num_processes: 3 per_device_train_batch_size: 1 num_generations: 3
- GPU 수에 따라 프로필을 편집합니다(예
- 설치 확인
다음 명령을 실행하여 환경이 올바르게 구성되었는지 확인합니다:accelerate config
메시지에 따라 하드웨어 및 배포 설정을 선택합니다.
주요 기능
1. 모델 교육
- 프라이밍 교육GRPO 알고리즘을 사용하여 R1-Zero 모델을 훈련합니다. 다음 명령을 실행합니다:
ACCELERATE_LOG_LEVEL=info accelerate launch \ --config_file recipes/zero3.yaml \ --num_processes=3 \ src/x_r1/grpo.py \ --config recipes/X_R1_zero_0dot5B_config.yaml \ > ./output/x_r1_0dot5B_sampling.log 2>&1
- 기능 설명이 명령은 0.5B 모델의 학습을 시작하고 로그가
output
폴더로 이동합니다. 학습 과정에서는 강화 학습을 사용하여 모델의 추론 능력을 최적화합니다. - 주의: 글로벌 배치 크기(
num_processes * per_device_train_batch_size
)는 다음과 같습니다.num_generations
통합을 클릭하지 않으면 오류가 보고됩니다.
2. 중국어 수학적 추론
- 수학 작업 구성: 중국어용으로 설계된 구성 파일을 사용합니다:
ACCELERATE_LOG_LEVEL=info accelerate launch \ --config_file recipes/zero3.yaml \ --num_processes=3 \ src/x_r1/grpo.py \ --config recipes/examples/mathcn_zero_3B_config.yaml \ > ./output/mathcn_3B_sampling.log 2>&1
- 워크플로::
- 중국어 수학 문제 데이터 세트(예: JSON 형식)를 준비합니다.
- 구성 파일에서 데이터 세트 경로를 수정합니다.
- 위의 명령을 실행하면 모델이 추론 프로세스를 생성하고 로그에 출력합니다.
- 주요 기능교육 시나리오에 적합한 상세한 중국어 답변 단계 생성을 지원합니다.
3. 벤치마킹
- 운영 평가사용
benchmark.py
모델 성능을 테스트합니다:CUDA_VISIBLE_DEVICES=0,1 python ./src/x_r1/benchmark.py \ --model_name='xiaodongguaAIGC/X-R1-0.5B' \ --dataset_name='HuggingFaceH4/MATH-500' \ --output_name='./output/result_benchmark_math500' \ --max_output_tokens=1024 \ --num_gpus=2
- 결과 해석스크립트는 정확도 메트릭과 형식 메트릭을 출력하고 결과를 JSON 파일로 저장합니다.
- 사용 시나리오수학 작업에서 모델 성능 검증 및 학습 매개변수 최적화.
운영 기술
- 로그 보기교육 또는 테스트가 완료된 후 로그 파일을 확인합니다(예
x_r1_0dot5B_sampling.log
)를 클릭하여 문제를 디버그하세요. - 멀티 GPU 최적화더 많은 GPU를 사용할 수 있는 경우 다음을 조정할 수 있습니다.
num_processes
노래로 응답num_gpus
매개변수를 사용하여 병렬 효율성을 향상시킬 수 있습니다. - 오류 감지배치 크기 오류가 발생하면
per_device_train_batch_size
노래로 응답num_generations
일치하게 만드세요.
사용 권장 사항
- 처음 사용할 때는 소규모 모델(예: 0.5B)로 시작한 다음 프로세스에 익숙해지면 3B 모델로 확장하는 것이 좋습니다.
- 업데이트, 새로운 기능 및 수정 사항이 있는지 GitHub 리포지토리를 정기적으로 확인하세요.
- 지원이 필요하면 개발자에게 문의(dhcode95@gmail.com)하세요.
이 단계를 통해 X-R1 환경을 쉽게 설정하고 모델 훈련 또는 테스트를 시작할 수 있습니다. 연구용이든 개발용이든 이 프레임워크는 효율적인 지원을 제공합니다.
© 저작권 정책
기사 저작권 AI 공유 서클 모두 무단 복제하지 마세요.
관련 문서
댓글 없음...