Open-Reasoner-Zero: plataforma de código abierto para el aprendizaje por refuerzo del razonamiento a gran escala

Introducción general

Open-Reasoner-Zero es un proyecto de código abierto centrado en la investigación del aprendizaje por refuerzo (RL), desarrollado por el equipo Open-Reasoner-Zero en GitHub. Su objetivo es acelerar el proceso de investigación en el campo de la Inteligencia Artificial (IA), especialmente la exploración hacia la Inteligencia Artificial General (AGI), proporcionando un marco de entrenamiento eficiente, escalable y fácil de usar. El proyecto se basa en el modelo Qwen2.5 (versiones de 7B y 32B parámetros) y combina tecnologías como OpenRLHF, vLLM, DeepSpeed y Ray para proporcionar el código fuente completo, los datos de entrenamiento y los pesos del modelo. Destaca por alcanzar un nivel de rendimiento similar en menos de 1/30 de los pasos de entrenamiento de DeepSeek-R1-Zero, lo que demuestra su eficiencia en la utilización de recursos. El proyecto se rige por la licencia MIT y los usuarios pueden utilizarlo y modificarlo libremente, por lo que resulta ideal para la colaboración entre investigadores y desarrolladores.

Open-Reasoner-Zero:开源大规模推理强化学习训练平台

 

Lista de funciones

  • Formación intensiva y eficaz: Admite el entrenamiento y la generación en un único controlador, lo que maximiza la utilización de la GPU.
  • recurso completo de código abiertoEl modelo es una herramienta sencilla y fácil de usar que proporciona 57.000 datos de entrenamiento de alta calidad, el código fuente, la configuración de los parámetros y las ponderaciones del modelo.
  • Soporte para modelos de alto rendimientoBasado en Qwen2.5-7B y Qwen2.5-32B, proporciona un excelente rendimiento de inferencia.
  • Marco de investigación flexibleEl diseño modular facilita a los investigadores la adaptación y ampliación de sus experimentos.
  • Soporte DockerProporcione un Dockerfile para garantizar la replicabilidad del entorno de formación.
  • Herramientas de evaluación del rendimiento: Contiene datos de evaluación comparativa y presentaciones de resultados de evaluación, como comparaciones de rendimiento para GPQA Diamond.

 

Utilizar la ayuda

Proceso de instalación

El uso de Open-Reasoner-Zero requiere un cierto nivel de conocimientos técnicos. A continuación se ofrece una guía detallada de instalación y funcionamiento, adecuada para ejecutarse en sistemas Linux o similares a Unix.

Preparación medioambiental

  1. Instalación de dependencias básicas::
    • Asegúrate de que Git, Python 3.8+ y el controlador de GPU NVIDIA (se requiere compatibilidad con CUDA) están instalados en tu sistema.
    • Instale Docker (versión recomendada 20.10 o superior) para un despliegue rápido del entorno de formación.
    sudo apt update
    sudo apt install git python3-pip docker.io
  1. Clonación del almacén de proyectos::
    • Ejecute el siguiente comando en el terminal para descargar el proyecto localmente:
    git clone https://github.com/Open-Reasoner-Zero/Open-Reasoner-Zero.git
    cd Open-Reasoner-Zero
    
  2. Configuración del entorno con Docker::
    • El proyecto proporciona un Dockerfile para facilitar la construcción de entornos de formación.
    • Ejecútelo en el directorio raíz del proyecto:
    docker build -t open-reasoner-zero -f docker/Dockerfile .
    
    • Una vez finalizada la compilación, inicie el contenedor:
    docker run -it --gpus all open-reasoner-zero bash
    
    • Esto introducirá un entorno de contenedor con soporte para GPU, preinstalado con las dependencias necesarias.
  3. Instalación manual de dependencias (opcional)::
    • Si no utiliza Docker, puede instalar las dependencias manualmente:
    pip install -r requirements.txt
    
    • Asegúrese de que OpenRLHF, vLLM, DeepSpeed y Ray están instalados, consulte la documentación del proyecto para las versiones específicas.

Función Flujo de operaciones

1. Modelos de formación
  • Preparar los datos de entrenamiento::
    • El proyecto incluye 57.000 datos de formación de alta calidad, ubicados en la base de datos data carpeta.
    • Si se necesitan datos personalizados, organice el formato según las instrucciones de la documentación y sustitúyalos.
  • formación inicial::
    • Ejecute el siguiente comando en el contenedor o en el entorno local:
    python train.py --model Qwen2.5-7B --data-path ./data
    
    • Descripción de los parámetros:
      • --modelSeleccione el modelo (por ejemplo, Qwen2.5-7B o Qwen2.5-32B).
      • --data-pathEspecifica la ruta de los datos de entrenamiento.
    • El registro del entrenamiento se muestra en el terminal del nodo maestro para facilitar el seguimiento de los progresos.
2. Evaluación del rendimiento
  • Ejecución de pruebas comparativas::
    • Compare el rendimiento del modelo utilizando los guiones de evaluación proporcionados:
    python evaluate.py --model Qwen2.5-32B --benchmark gpqa_diamond
    
    • El resultado mostrará la precisión del modelo en puntos de referencia como GPQA Diamond.
  • Ver el informe de evaluación::
    • El proyecto incluye gráficos (como la Figura 1 y la Figura 2) que muestran el rendimiento y el escalonamiento del tiempo de formación, que pueden encontrarse en el docs para encontrarlo.
3. Modificaciones y ampliaciones
  • Parámetros de ajuste::
    • compilador config.yaml modificando hiperparámetros como la tasa de aprendizaje, el tamaño del lote, etc.
    learning_rate: 0.0001
    batch_size: 16
    
  • Añadir nueva función::
    • El proyecto tiene un diseño modular y puede src para añadir nuevos módulos. Por ejemplo, añada un nuevo script de preprocesamiento de datos:
    # custom_preprocess.py
    def preprocess_data(input_file):
    # 自定义逻辑
    pass
    

Precauciones de manipulación

  • requisitos de hardwareSe recomienda una GPU con al menos 24 GB de memoria de vídeo (por ejemplo, NVIDIA A100) para poder entrenar con Qwen2.5-32B.
  • Supervisión de registrosEl terminal debe estar encendido durante la formación y se puede consultar el registro en cualquier momento para solucionar problemas.
  • Apoyo comunitarioPreguntas: Las preguntas pueden enviarse a través de GitHub Issues o poniéndose en contacto con el equipo en hanqer@stepfun.com.

Ejemplos prácticos

Supongamos que desea entrenar un modelo basado en Qwen2.5-7B:

  1. Introduzca el contenedor Docker.
  2. estar en movimiento python train.py --model Qwen2.5-7B --data-path ./data.
  3. Espere unas horas (dependiendo del hardware) y ejecútelo cuando termine python evaluate.py --model Qwen2.5-7B --benchmark gpqa_diamond.
  4. Visualice la salida para confirmar la mejora del rendimiento.

Con estos pasos, los usuarios pueden empezar a trabajar rápidamente con Open-Reasoner-Zero, ya sea reproduciendo experimentos o desarrollando nuevas funciones, y hacerlo de forma eficiente.

© declaración de copyright
AiPPT

Artículos relacionados

Sin comentarios

Debe iniciar sesión para participar en los comentarios.
Acceder ahora
ninguno
Sin comentarios...