jingyaogong/minimind

🧠 Train a 64M-parameter LLM from scratch in just 2h!

해결하는 문제

MiniMind은 대규모 언어 모델(LLM) 개발에 대한 진입 장벽을 낮추기 위해 설계되었습니다. 소비자용 GPU를 사용하여 약 64M 파라미터의 기능적인 초소형 언어 모델을 처음부터 학습할 수 있는 방법을 제공하며, 거대 모델의 '블랙박스' 성격과 제3자 프레임워크의 고수준 추상화를 피합니다.

작동 방식

이 프로젝트는 투명성을 보장하기 위해 고수준 라이브러리 추상화를 피하고, 네이티브 PyTorch를 사용하여 완전한 LLM 학습 파이프라인을 구현합니다. Transformer Decoder-Only 아키텍처(큐웬3 생태계와 일치)를 따르며, Dense 및 Mixture-of-Experts(MoE) 구성 모두를 지원합니다. 파이프라인은 토크나이저 학습, 사전 학습, 감독형 미세조정(SFT), LoRA, RLHF(DPO), RLAIF(PPO/GRPO/CISPO), 도구 사용, 모델 증류까지 전체 라이프사이클을 커버합니다.

대상 사용자

  • 코드를 처음부터 작성하고 학습함으로써 LLM의 내부 메커니즘을 이해하고 싶은 AI 초보자 및 학생.
  • LLM 실험을 위한 가벼우면서도 재현 가능한 시작점이 필요한 개발자.
  • 단일 NVIDIA 3090과 같은 제한된 하드웨어를 사용하면서도 전체 학습 과정을 경험하고 싶은 사용자.

주요 특징

  • 초경량: 가장 작은 버전은 GPT-3의 약 1/2700 크기이며, 단일 3090에서 SFT가 약 2시간 내에 완료될 수 있습니다.
  • 풀스택 구현: 고수준 래퍼에 의존하지 않고, 사전 학습, SFT, RLHF, RLAIF를 네이티브 PyTorch로 구현.
  • 광범위한 호환성: 추론 시 transformers, llama.cpp, vllm, ollama와 호환됩니다.
  • 고급 기능: MoE, 긴 텍스트 외삽을 위한 YaRN, 도구 사용 시나리오를 위한 에이전트형 RL, 적응형 사고 체인을 지원.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • Dispatch