微信扫码
与创始人交个朋友
我要投稿
在人工智能(AI)模型的开发过程中,通常需要对模型进行微调以适应特定任务和数据集。然而,各种模型的微调过程和配置各不相同,差异很大,涉及到的参数众多,微小的改变可能导致模型的性能有显著的差距。这使得微调成为一项耗时耗力却又关键至极的过程。如何用更少的时间和更低的复杂度细调模型,并在多个配置和架构中流畅无阻,是 AI 开发者一直在探索和实践的问题。
今天要给大家推荐一个 GitHub 开源项目 axolotl,该项目在 GitHub 有超过 2.8k Star,用一句话介绍该项目就是:“Go ahead and axolotl questions”。
Axolotl 能帮你轻松地微调各种 AI 模型,无论是各种 Huggingface
模型,如 llama
,pythia
,falcon
,mpt
,还是其他一些主流架构如 lora
、qlora
、relora
、gptq
,Axolotl 都能提供全面的支持。
你可以通过简易的 yaml
文件或者命令行覆写来定制配置,支持加载不同的数据集格式,甚至可以携带自定义的分词数据集。Axolotl 还与 xformer
,flash attention
,rope scaling
,multipacking
等强大功能集成,无论是使用单个 GPU
还是通过 FSDP
或 Deepspeed
使用多个 GPU
,Axolotl 都能处理。其过程可以轻松地在本地或云端通过 Docker
运行,并且你还可以将结果以及可选的检查点记录到 wandb
。
安装 Axolotl 只需要拥有Python 3.9 或以上版本以及 Pytorch 2.0 或以上版本。你可以直接从 GitHub 下载源代码并运行 install 命令,或者在项目目录文件夹下通过 pip 运行 install 命令。
配置完成后,你就可以开始进行微调操作了,无论是训练、推理还是其他操作,只需要一行命令,轻松完成。以下是一些示例:
# preprocess datasets - optional but recommended
CUDA_VISIBLE_DEVICES="" python -m axolotl.cli.preprocess examples/openllama-3b/lora.yml
# finetune lora
accelerate launch -m axolotl.cli.train examples/openllama-3b/lora.yml
# inference
accelerate launch -m axolotl.cli.inference examples/openllama-3b/lora.yml \
--lora_model_dir="./lora-out"
# gradio
accelerate launch -m axolotl.cli.inference examples/openllama-3b/lora.yml \
--lora_model_dir="./lora-out" --gradio
项目的开发团队来自 OpenAccess AI Collective,这是一个主张 AI 开放的团体。Axolotl 有一队长期维护并保障其运行稳定和功能更新的工程师团队,你无需担心项目的维护和更新问题,并可以享受到这个开源项目带来的所有优点。
以下是该项目 Star 趋势图(代表项目的活跃程度):
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-03-30
2024-04-26
2024-05-10
2024-04-12
2024-05-28
2024-04-25
2024-05-14
2024-07-18
2024-04-26
2024-08-13
2024-12-22
2024-12-21
2024-12-21
2024-12-21
2024-12-21
2024-12-20
2024-12-20
2024-12-19