Repolode
jingyaogong

jingyaogong/minimind

Un proyecto open source de LLM ultracompacto que enseña a entrenar desde cero un modelo de lenguaje de 64M de parámetros en unas 2 horas con una sola GPU.

Estrellas
64,986
Forks
8,511
Issues abiertos
67
Último commit
hace 12 días

¿Qué es?

MiniMind es un proyecto para entrenar un LLM desde cero, basado en un modelo muy pequeño: aproximadamente 64M de parámetros en la versión densa y unos 198M en total (64M activos) en la versión MoE. Cubre el flujo completo de trabajo en PyTorch: entrenamiento del tokenizer, preentrenamiento, ajuste fino supervisado, LoRA, DPO, PPO, GRPO, CISPO, llamadas a herramientas, razonamiento adaptable y destilación de conocimiento. Los algoritmos centrales están implementados directamente, en lugar de estar envueltos en bibliotecas de alto nivel, así que el código se puede leer y modificar línea por línea.

El proyecto está dirigido a desarrolladores que quieren entender cómo se construye un LLM, en vez de limitarse a usarlo mediante una API o ajustar un modelo existente. Según los autores, una época de SFT tarda unas 2 horas en una sola RTX 3090, y el repositorio incluye datasets preprocesados y pesos preentrenados en ModelScope y Hugging Face. Los modelos entrenados se pueden ejecutar con scripts de evaluación, una WebUI de Streamlit o un servidor de API compatible con OpenAI; también se ofrecen opciones de exportación a llama.cpp, vLLM y Ollama.

El repositorio también incluye ramas experimentales para un modelo de lenguaje de difusión y atención lineal, además de proyectos relacionados para variantes de visión y multimodales. La arquitectura del modelo sigue la nomenclatura y la configuración de la familia Qwen3.

Funciones clave

  • 01Entrena desde cero, en una sola GPU de consumo, un modelo denso de aproximadamente 64M de parámetros y una variante MoE.
  • 02Implementa preentrenamiento, SFT, LoRA, DPO, PPO, GRPO y CISPO directamente en PyTorch.
  • 03Admite llamadas a herramientas y razonamiento activable mediante la plantilla de chat.
  • 04Ofrece un servidor de API compatible con OpenAI y una WebUI de chat con Streamlit.
  • 05Ofrece datasets y checkpoints publicados, además de opciones de exportación a llama.cpp, vLLM y Ollama.

Casos de uso

  • Aprender cómo se construye un modelo de lenguaje de principio a fin leyendo y ejecutando el código de entrenamiento.
  • Reproducir un flujo de entrenamiento de LLM a pequeña escala en una sola GPU, con fines de investigación o enseñanza.
  • Experimentar con métodos de postentrenamiento con RL, como DPO, PPO y GRPO, en un modelo pequeño.
  • Crear prototipos de comportamientos específicos de un dominio entrenando adaptadores LoRA con tus propios datos de diálogo.

Inicio rápido

  1. 1

    Clona el repositorio

    git clone --depth 1 https://github.com/jingyaogong/minimind
  2. 2

    Instala las dependencias

    cd minimind && pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple
  3. 3

    Descarga el modelo minimind-3

    modelscope download --model gongjy/minimind-3 --local_dir ./minimind-3
  4. 4

    Ejecuta inferencias desde la línea de comandos con el modelo

    python eval_llm.py --load_from ./minimind-3

Antes de usarlo

  • El entrenamiento desde cero está pensado para una sola GPU, y las 2 horas indicadas en el README se midieron con una NVIDIA 3090.
  • El modelo es muy pequeño (unos 64 millones de parámetros), por lo que la calidad de sus resultados es limitada.
  • Su tokenizador de 6.400 tokens comprime el texto chino de forma menos eficiente que tokenizadores más grandes, como el de Qwen2.

En colecciones

Temas

Preguntas frecuentes

¿Qué es minimind?
Un proyecto open source de LLM ultracompacto que enseña a entrenar desde cero un modelo de lenguaje de 64M de parámetros en unas 2 horas con una sola GPU. MiniMind es un proyecto para entrenar un LLM desde cero, basado en un modelo muy pequeño: aproximadamente 64M de parámetros en la versión densa y unos 198M en total (64M activos) en la versión MoE. Cubre el flujo completo de trabajo en PyTorch: entrenamiento del tokenizer, preentrenamiento, ajuste fino supervisado, LoRA, DPO, PPO, GRPO, CISPO, llamadas a herramientas, razonamiento adaptable y destilación de conocimiento. Los algoritmos centrales están implementados directamente, en lugar de estar envueltos en bibliotecas de alto nivel, así que el código se puede leer y modificar línea por línea.
¿minimind es gratuito? ¿Qué licencia tiene?
minimind es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿minimind sigue mantenido?
Mantenimiento activo. El último commit de minimind fue el 27 oct 2026.
¿Para qué puedo usar minimind?
Aprender cómo se construye un modelo de lenguaje de principio a fin leyendo y ejecutando el código de entrenamiento. Reproducir un flujo de entrenamiento de LLM a pequeña escala en una sola GPU, con fines de investigación o enseñanza. Experimentar con métodos de postentrenamiento con RL, como DPO, PPO y GRPO, en un modelo pequeño. Crear prototipos de comportamientos específicos de un dominio entrenando adaptadores LoRA con tus propios datos de diálogo.
¿Cómo se instala minimind?
Clona el repositorio: git clone --depth 1 https://github.com/jingyaogong/minimind Instala las dependencias: cd minimind && pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple Descarga el modelo minimind-3: modelscope download --model gongjy/minimind-3 --local_dir ./minimind-3 Ejecuta inferencias desde la línea de comandos con el modelo: python eval_llm.py --load_from ./minimind-3
¿Dónde consigo minimind?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/jingyaogong/minimind

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados