避免污染全局环境:
# 推荐
python -m venv openelm-env
source openelm-env/bin/activate
# 或
conda create -n openelm python=3.10
conda activate openelmgit clone https://github.com/apple/corenet
cd corenet
pip install -e .| 组件 | 建议 |
|---|---|
| PyTorch | 使用 CUDA 匹配版本(如 torch==2.2+cu121) |
| transformers | ≥ 4.39(OpenELM 已集成) |
| flash-attn | 训练时强烈建议安装(提速明显) |
| apex | 可选,混合精度训练 |
pip install flash-attn --no-build-isolationOpenELM 基于 CoreNet 框架:
python train.py \
model=openelm \
dataset=c4 \
optimizer=adamw \
precision=mixed_float16precision=mixed_float16torchrun --nproc_per_node=4 train.py ...batch_size 并开启 pin_memory=Truemodel.to("mps")无需 CUDA,推理延迟低。
int8 / 4bit(bitsandbytes)llama.cpp 风格推理(需转换权重)wandb 或 tensorboardlogging.level=INFOpytest tests/| 问题 | 解决 |
|---|---|
| flash-attn 编译失败 | 使用预编译 wheel 或降低 PyTorch 版本 |
| OOM | 减小 batch / 使用梯度累积 |
| 权重加载慢 | 使用 safetensors |
| macOS 训练不支持 | 仅支持推理(MPS) |
openelm-dev/
├── corenet/
├── datasets/
├── logs/
├── configs/
└── venv/如果你愿意,我可以:
你目前是偏训练还是推理?