本文导读

    以下是LLaMA-Factory官方推荐的依赖组件及其版本,如果在linux上安装建议使用表格中的推荐版本,但是在windows上安装时,由于各组件提供的windows版本没有linux版本完备,为了兼容性考虑可节省

以下是LLaMA-Factory官方推荐的依赖组件及其版本,如果在linux上安装建议使用表格中的推荐版本,但是在windows上安装时,由于各组件提供的windows版本没有linux版本完备,为了兼容性考虑可节省时间(使用发布的wheel包而不是本地编译),这里并没有完全采用官方推荐的版本。

以下为window本地安装LLaMA-Factory的详细步骤

1、更新显卡驱动(推荐使用nvidia显卡)

  1. 访问 。

  2. 选择你的显卡型号,下载最新的 Game Ready Driver 或 Studio Driver。

  3. 运行安装程序,选择“自定义安装”和“执行清洁安装”,完成后重启电脑。

在windows上安装LLaMA-Factory,需要安装windows版本的PyTorch 、bitsandbytes 和FlashAttention

2、 安装 CUDA Toolkit

  1. 根据准备使用的PyTorch 、bitsandbytes 和FlashAttention的版本来决定CUDA的版本,不同版本可能存在不兼容的情况,例如不同版本的bitsandbytes 需要指定版本的PyTorch和CUDA toolkit,并且不同版本的PyTorch对CUDA toolkit的版本也有要求,因此不要盲目安装最新版 CUDA。(本文中使用CUDA12.1,https://developer.n**vidi*a.com/cuda-12-1-0-download-archive?target_os=Windows&target_arch=x86_64&target_version=11&target_type=exe_local)

  2. 访问 ,选择与 PyTorch 匹配的版本(例如 12.1)、系统(Windows)、架构(x86_64)和安装类型(exe [local])。(https://developer.*n**vidia.com/cuda-toolkit-archive:下载历史CUDA版本)

  3. 运行安装程序,选择“自定义”安装,组件保持默认全选即可

3、安装Conda 

LLaMA-Factory的安装需要安装大量的python包和其他组件,使用Conda可以有效避免python版本冲突带来的问题

  1. 下载Conda,Distribution Installers,Miniconda Installers均可()
  2. 初始化环境变量
    conda init
  3. 创建conda虚拟环境,python使用3.10版本
    # 创建 Python 3.10 环境conda create -n llama-factory python=3.10# 激活环境conda activate llama-factory

4、安装Visual Studio Build Tools

如果安装了visual studio,则不需要再单独安装

5、安装PyTorch

查看 PyTorch 支持的版本:访问 。安装与CUDA版本兼容的PyTorch版本(PyTorch Version: 2.5.1+cu121)

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

使用以下脚本验证PyTorch是否成功安装

import torch# 1. 打印PyTorch版本print(f"PyTorch Version: {torch.__version__}")# 2. 打印PyTorch构建所用的CUDA版本(这里显示12.1是正常的)print(f"PyTorch CUDA Version: {torch.version.cuda}")# 3. 最关键的一步:检查CUDA是否可用print(f"CUDA Available: {torch.cuda.is_available()}")# 4. 如果可用,打印GPU信息if torch.cuda.is_available():    print(f"Number of GPUs: {torch.cuda.device_count()}")    print(f"Current GPU Name: {torch.cuda.get_device_name(0)}")    print(f"Current GPU Index: {torch.cuda.current_device()}")    # 5. 做一个简单的张量运算来测试功能    x = torch.tensor([1.0, 2.0, 3.0]).cuda()    y = torch.tensor([4.0, 5.0, 6.0]).cuda()    z = x + y    print(f"Tensor computation on GPU: {z}")    print(f"Tensor device: {z.device}")

6、安装bitsandbytes (如果不需要启用量化LoRA,可跳过此步)

访问查看release的wheel文件,根据安装的CUDA toolkit版本(12.1)和PyTorch版本(2.5.1+cu121)选择与之兼容的bitsandbytes版本,下载wheel文件并安装

pip install bitsandbytes-0.41.1-py3-none-win_amd64.whl

使用以下脚本验证bitsandbytes是否成功安装

import bitsandbytes as bnb# 这个操作会触发bitsandbytes加载CUDA库,并显示其编译/链接的CUDA版本。# 通常如果成功导入且无报错,就说明它找到了匹配的CUDA环境。# 更直接的方法:创建一个量化层,看是否报错try:    # 尝试创建一个4bit量化层,这会用到CUDA kernel    linear = bnb.nn.Linear4bit(10, 20)    print("✅ bitsandbytes 安装成功,并且CUDA运行正常!")    print(f"   它正在使用与PyTorch相同的CUDA环境。")except Exception as e:    print(f"❌ 错误: {e}")

7、安装flash-attention()(如果不需要启用 FlashAttention-2,可跳过此步)

首先查看  上有没有编辑好的兼容本地CUDA toolkit版本(12.1)和PyTorch版本(2.5.1+cu121)的wheel包,有的话直接下载安装即可,没有的话则需要按照以下步骤在本地build wheel包:

  1. clone  的源码到本地,
  2. 根据实际情况(例如CUDA toolkit版本和PyTorch版本)选择使用的代码版本,这里使用了 v2.7.0.post2
  3. 使用  中提供的WindowsWhlBuilder_cuda.bat文件buildwheel包,其中‘CUDA_ARCH’ 参数要根据本地显卡型号做设置,可通过以下命令获取,不同 NVIDIA 显卡对应不同的数值(格式为 主版本.次版本,通常简化为整数,如 8.9 简写为 89)
    nvidia-smi --query-gpu=name,compute_cap --format=csv

   4. 在‘Native Tools Command Prompt for Visual Studio’中执行脚本,注意需要激活创建的conda虚拟环境(llama-factory),编译过程中会使用虚拟环境中安装的CUDA、PyTorch和Python版本

WindowsWhlBuilder_cuda.bat CUDA_ARCH="89" FORCE_CXX11_ABI=TRUE

编译过程根据机器性能可能花费几十分钟到几小时不等(本人用了7小时),编译好的wheel包,例如‘flash_attn-2.7.0.post2+cu121torch2.5.1cxx11abiFALSE-cp310-cp310-win_amd64.whl’,代表flash-attention的版本是2.7.0.post2,CUDA的版本是12.1,torch的版本是2.5.1,python的版本是3.10

最后使用编译好的wheel包安装flash-attention

pip install flash_attn-2.7.0.post2+cu121torch2.5.1cxx11abiFALSE-cp310-cp310-win_amd64.whl

使用以下脚本验证flash-attention是否成功安装

import torchimport flash_attnprint("="*50)print("验证环境配置")print("="*50)print(f"PyTorch 版本: {torch.__version__}")print(f"PyTorch CUDA 版本: {torch.version.cuda}")print(f"CUDA 是否可用: {torch.cuda.is_available()}")print(f"GPU 设备: {torch.cuda.get_device_name(0)}")print(f"nFlashAttention 版本: {flash_attn.__version__}")print("n✅ 验证成功!FlashAttention 已安装并可正常导入。")print("   它正在使用您PyTorch环境中的CUDA 12.1。")# 可选:进行一个简单的前向计算测试(如果担心运行时错误)print("n进行简单计算测试...")try:    dim = 64    q = torch.randn(1, 8, 128, dim, device='cuda', dtype=torch.float16)    k = torch.randn(1, 8, 128, dim, device='cuda', dtype=torch.float16)    v = torch.randn(1, 8, 128, dim, device='cuda', dtype=torch.float16)        output = flash_attn.flash_attn_func(q, k, v, causal=True)    print("✅ 计算测试通过!FlashAttention CUDA kernel 工作正常。")except Exception as e:    print(f"❌ 计算测试失败: {e}")

 7、安装LLaMA-Factory

Clone LLama-Factory源码(),根据提供的文档安装即可(),核心安装命令

pip install -e ".[torch,metrics]"

启动webui

llamafactory-cli webui

访问webui:http://loc**a*lhost:7860/,大功告成!!!!!!!!

 

本站提供的所有下载资源均来自互联网,仅提供学习交流使用,版权归原作者所有。如需商业使用,请联系原作者获得授权。 如您发现有涉嫌侵权的内容,请联系我们 邮箱:[email protected]