TinyZero: una réplica de bajo coste del efecto epifánico de DeepSeeK-R1 Zero

Introducción general

TinyZero es un modelo de aprendizaje por refuerzo basado en veRL diseñado para reproducir la DeepSeeK-R1 El rendimiento de Zero en tareas de cuenta atrás y multiplicación. Sorprendentemente, el proyecto logra las mismas epifanías que DeepSeeK-R1 Zero por un coste de funcionamiento de sólo 30 dólares (menos de 5 horas utilizando 2xH200 a 6,4 dólares la hora). A través del Aprendizaje por Refuerzo (RL), el Modelo de Lenguaje Base (LM) de 3B es capaz de desarrollar de forma autónoma capacidades de autovalidación y búsqueda. Los usuarios pueden experimentar la potencia y la innovación de TinyZero a través de un sencillo proceso de configuración y entrenamiento.

TinyZero:低成本复现 DeepSeeK-R1 Zero 的顿悟效果

 

Lista de funciones

  • tarea de cuenta atrás: Apoyo a los procesos de preparación y entrenamiento de datos para ayudar a los modelos a aprender en las tareas de cuenta atrás.
  • Tareas de multiplicación: Apoya los procesos de preparación y entrenamiento de datos para ayudar a los modelos a aprender en tareas de multiplicación.
  • Soporte para una sola GPUPara parámetros de modelo inferiores o iguales a 1,5B.
  • Soporte Multi-GPU: Los modelos aplicables a parámetros más amplios son capaces de desarrollar capacidades de razonamiento sofisticadas.
  • Instruir la ablaciónExperimentos en apoyo del modelo QWen-2.5-3B Instruct.
  • Herramientas de mejora de la calidadLas herramientas incluyen flash-attn, wandb, IPython y matplotlib para mejorar la formación del modelo y la experiencia de uso.

 

Utilizar la ayuda

Proceso de instalación

  1. Crear un entorno virtual:
    conda create -n zero python=3.9
    
  2. Instale PyTorch (opcional):
    pip install torch==2.4.0 --index-url https://download.pytorch.org/whl/cu121
    
  3. Instalar vllm:
    pip3 install vllm==0.6.3
    
  4. Instalar rayo:
    pip3 install ray
    
  5. Instalar verl:
    pip install -e .
    
  6. Instalar flash-attn:
    pip3 install flash-attn --no-build-isolation
    
  7. Instalación de herramientas de mejora de la calidad:
    pip install wandb IPython matplotlib
    

Función Flujo de operaciones

tarea de cuenta atrás

  1. Preparación de datos:
    conda activate zero
    python ./examples/data_preprocess/countdown.py --local_dir {path_to_your_dataset}
    
  2. Proceso de formación:
    conda activate zero
    export N_GPUS=1
    export BASE_MODEL={path_to_your_model}
    export DATA_DIR={path_to_your_dataset}
    export ROLLOUT_TP_SIZE=1
    export EXPERIMENT_NAME=countdown-qwen2.5-0.5b
    export VLLM_ATTENTION_BACKEND=XFORMERS
    bash ./scripts/train_tiny_zero.sh
    

Formación de modelos 3B

  1. Preparación de datos:
    conda activate zero
    python examples/data_preprocess/countdown.py --template_type=qwen-instruct --local_dir={path_to_your_dataset}
    
  2. Proceso de formación:
    conda activate zero
    export N_GPUS=2
    export BASE_MODEL={path_to_your_model}
    export DATA_DIR={path_to_your_dataset}
    export ROLLOUT_TP_SIZE=2
    export EXPERIMENT_NAME=countdown-qwen2.5-3b-instruct
    export VLLM_ATTENTION_BACKEND=XFORMERS
    bash ./scripts/train_tiny_zero.sh
    
© declaración de copyright

Artículos relacionados

Sin comentarios

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