Axolotl은 다양한 AI 모델 후속 훈련 과정을 간소화하기 위해 특별히 설계된 오픈 소스 도구입니다. 후속 훈련은 사전 훈련된 모델에 대한 모든 수정 또는 추가 훈련을 의미하며, 여기에는 전체 모델 미세 조정, 파라미터 효율적 조정(예: LoRA 및 QLoRA), 지도 미세 조정(SFT), 명령어 조정 및 정렬 기술이 포함됩니다. 이 도구는 다양한 모델 아키텍처와 훈련 구성을 지원하여 사용자가 이러한 고급 훈련 기술을 쉽게 시작할 수 있도록 합니다.
pip3 install -U packaging==23.2 setuptools==75.8.0 wheel ninja
pip3 install --no-build-isolation axolotl[flash-attn,deepspeed]
# 예제 구성 파일 다운로드
axolotl fetch examples
axolotl fetch deepspeed_configs # 선택 사항
git clone https://github.com/axolotl-ai-cloud/axolotl.git
cd axolotl
pip3 install -U packaging setuptools wheel ninja
pip3 install --no-build-isolation -e '.[flash-attn,deepspeed]'
docker run --gpus '"all"' --rm -it axolotlai/axolotl:main-latest
예제 구성 가져오기:
axolotl fetch examples
모델 훈련:
axolotl train examples/llama-3/lora-1b.yml
사용자 정의 구성: 필요에 따라 YAML 구성 파일의 파라미터 수정
Axolotl은 YAML 구성 파일을 사용하여 모델 선택 및 파라미터, 데이터 세트 구성 및 전처리, 훈련 하이퍼파라미터, 최적화 프로그램 설정, 모니터링 및 로깅을 포함한 전체 훈련 흐름을 제어합니다.
모델 | fp16/fp32 | LoRA | QLoRA | GPTQ | Flash Attn | xformers |
---|---|---|---|---|---|---|
LLaMA | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Mistral | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Mixtral-MoE | ✅ | ✅ | ✅ | ❓ | ❓ | ❓ |
Pythia | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
Falcon | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
Qwen | ✅ | ✅ | ✅ | ❓ | ❓ | ❓ |
Gemma | ✅ | ✅ | ✅ | ❓ | ❓ | ✅ |
✅: 지원 ❌: 미지원 ❓: 테스트되지 않음