Lit-LLaMA 大语言模型部署与微调指南
Lit-LLaMA 是一个基于 nanoGPT 实现的 LLaMA 语言模型项目,支持 Flash Attention、Int8 和 GPTQ 4bit 量化、LoRA 和 LLaMA-Adapter 微调以及预训练等功能,采用 Apache 2.0 许可协议。
准备工作:环境搭建与仓库克隆
要开始使用 Lit-LLaMA,首先需要克隆项目仓库。打开终端,执行以下命令:
git clone https://github.com/Lightning-AI/lit-llama
cd lit-llama
模型权重下载与转换
官方权重下载
Lit-LLaMA 支持多种模型权重的下载与转换。可以使用项目提供的下载脚本获取权重:
python scripts/download.py --repo_id openlm-research/open_llama_7b --local_dir checkpoints/open-llama/7B
权重转换
下载完成后,需要将权重转换为 Lit-LLaMA 支持的格式:
python scripts/convert_hf_checkpoint.py --checkpoint_dir checkpoints/open-llama/7B --model_size 7B
快速启动:模型推理
基础推理
完成权重准备后,可以使用以下命令快速启动模型推理:
python generate.py --prompt "Hello, my name is"
量化推理
为了提高推理速度并减少内存占用,Lit-LLaMA 支持多种量化方式。例如,使用 Int8 量化:
python generate.py --quantize llm.int8 --prompt "Hello, my name is"
或者使用 GPTQ 4bit 量化:
# 首先量化模型
python quantize/gptq.py --output_path checkpoints/lit-llama/7B/llama-gptq.4bit.pth --dtype bfloat16 --quantize gptq.int4
# 然后使用量化模型推理
python generate.py --quantize gptq.int4 --checkpoint_path checkpoints/lit-llama/7B/llama-gptq.4bit.pth
模型微调:适应特定任务
Lit-LLaMA 提供了多种微调方法,以适应不同的任务需求。
LoRA 微调
LoRA(Low-Rank Adaptation)是一种参数高效的微调方法。首先准备训练数据:
python scripts/prepare_alpaca.py
然后执行 LoRA 微调:
python finetune/lora.py
微调完成后,使用微调后的模型进行推理:
python generate/lora.py --prompt "Recommend a movie to watch on the weekend."

