LLaMA-Factory 简介
LLaMA-Factory[1] 是一个用于高效微调100多种大型语言模型(LLMs)的统一平台,该项目在2024年的ACL会议上进行了展示。
它支持多种模型和微调方法,包括全参数微调、局部冻结微调、LoRA和量化LoRA(QLoRA)等先进的算法和技术。
LLaMA-Factory 简化了大模型集成流程,提供实用资源,助力高效开发。

项目特点
主要特点
-
多样化模型支持:支持LLaMA、LLaVA、Mistral、Mixtral-MoE、Qwen、Qwen2-VL、Yi、Gemma、Baichuan、ChatGLM、Phi等多种预训练模型。 -
集成化微调方法:支持持续预训练、多模态监督微调、奖励建模、PPO、DPO、KTO、ORPO等多种训练方法。 -
可扩展资源利用:支持16位全参数微调、冻结微调、LoRA和2/3/4/5/6/8位QLoRA等技术。 -
先进算法应用:集成了GaLore、BAdam、Adam-mini、DoRA、LongLoRA、LLaMA Pro、Mixture-of-Depths、LoRA+、LoftQ、PiSSA和Agent tuning等先进优化算法。 -
实用技巧集成:包括FlashAttention-2、Unsloth、Liger Kernel、RoPE scaling、NEFTune和rsLoRA等实用技巧。 -
实验监控工具:支持LlamaBoard、TensorBoard、Wandb、MLflow等多种实验监控工具。 -
快速推理能力:提供OpenAI风格的API、Gradio UI和CLI以及vLLM worker支持。
使用场景
LLaMA-Factory 可用于多种自然语言处理任务,包括但不限于:
-
聊天机器人的微调 -
文本生成任务 -
机器翻译 -
问答系统 -
文档理解和摘要 -
代码生成和理解
项目使用
安装
git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory
pip install -e ".[torch,metrics]"
数据准备
请参考 data/README.md[2] 了解数据集文件格式的详细信息。
你可以使用HuggingFace / ModelScope hub上的数据集或在本地磁盘上加载数据集。
快速开始
使用以下命令运行LoRA微调、推理和合并Llama3-8B-Instruct模型。
llamafactory-cli train examples/train_lora/llama3_lora_sft.yaml
llamafactory-cli chat examples/inference/llama3_lora_sft.yaml
llamafactory-cli export examples/merge_lora/llama3_lora_sft.yaml
使用 LLaMA Board GUI 进行微调
llamafactory-cli webui
Docker 构建
对于CUDA用户:
cd docker/docker-cuda/
docker compose up -d
docker compose exec llamafactory bash
对于Ascend NPU用户:
cd docker/docker-npu/
docker compose up -d
docker compose exec llamafactory bash
对于AMD ROCm用户:
cd docker/docker-rocm/
docker compose up -d
docker compose exec llamafactory bash
参考资料
注:本文内容仅供参考,具体项目特性请参照官方 GitHub 页面的最新说明。
欢迎关注&点赞&在看,感谢你的阅读~
Github地址: https://github.com/hiyouga/LLaMA-Factory
[2]
数据准备: https://github.com/hiyouga/LLaMA-Factory/blob/main/data/README.md
原文始发于微信公众号(AIGC创想者):32.1K+ Star!LLaMA-Factory:一个大模型开发工具集
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/315105.html