LLaMA-Factory 快速入门(一):Mac 下大模型微调的环境搭建与数据准备

环境搭建

在 Mac 上搭建 LLaMA-Factory 的微调环境需要安装必要的依赖项。Homebrew 是 macOS 上常用的包管理工具,可用于安装 Python 和相关库。

确保系统已安装 Homebrew,若未安装可通过以下命令安装:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

安装 Python 3.10 或更高版本:

brew install python@3.10

创建虚拟环境以隔离依赖:

python3 -m venv llama-env
source llama-env/bin/activate

安装 PyTorch 及其相关库,选择与 Mac 兼容的版本:

pip install torch torchvision torchaudio

安装 LLaMA-Factory 及其依赖:

pip install llama-factory transformers datasets accelerate

数据准备

微调大模型需要高质量的数据集。可以从 Hugging Face 下载公开数据集,或自行整理符合需求的文本数据。

下载 Hugging Face 数据集示例:

from datasets import load_dataset

dataset = load_dataset("wikitext", "wikitext-2-raw-v1")
dataset.save_to_disk("./data/wikitext")

自定义数据应保存为 JSON 或 CSV 格式,并确保每行包含 text 字段。例如:

[
  {"text": "This is the first example sentence."},
  {"text": "Another example for training the model."}
]

数据预处理包括分词和格式转换。使用 Hugging Face 的 tokenizer 对文本进行编码:

from transformers import AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained("meta-llama/Llama-2-7b-hf")
tokenized_data = dataset.map(lambda x: tokenizer(x["text"], truncation=True), batched=True)

运行微调

完成环境和数据准备后,使用 LLaMA-Factory 的脚本启动微调:

python -m llama_factory.train \
  --model_name_or_path meta-llama/Llama-2-7b-hf \
  --data_path ./data/wikitext \
  --output_dir ./output

此命令将加载预训练模型,并在指定数据集上进行微调,结果保存在 ./output 目录下。

常见问题

若遇到 GPU 内存不足的问题,可尝试降低批处理大小:

python -m llama_factory.train ... --per_device_train_batch_size 2

对于 Mac 的 Metal 加速(M1/M2 芯片),需安装 PyTorch 的 Metal 版本:

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cpu

通过上述步骤,可在 Mac 上完成 LLaMA-Factory 的环境搭建与数据准备,为后续微调任务奠定基础。

更多推荐