win11系统编译安装cuda版llama-cpp-python(踩完所有的坑)

文章目录

尝试了网上很多方法,最终只剩下载源码用cmake编译。试了好久才踩完所有的坑!

(1)安装vs_BuildTools(2022版对应cuda12.4切记!)

①下载地址:https://aka.ms/vs/17/release/vs_Community.exe

②安装界面选择工作负载:在"工作负载"选项卡中,必须勾选"使用 C++ 的桌面开发"。

③勾选单个组件(重要):切换到"单个组件"选项卡,搜索并勾选 C++ CMake tools for Windows。这是确保 CMake 能正常找到 Visual Studio 编译器的重要组件。

(2)重新运行cuda安装程序

①直接运行 CUDA 12.4 的安装包,选择"自定义 (Custom)"安装,然后在组件列表里确保勾选"Visual Studio Integration"。安装程序检测到 VS 2022 后,就会自动完成集成。完成后记得重启电脑。

②如果找不到"Visual Studio Integration"选项,直接把cuda安装目录中的C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.4\extras\visual_studio_integration\MSBuildExtensions 文件夹下4个文件复制到 C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\BuildCustomizations 路径下。重新打开 Visual Studio 2022,集成即完成。

③重启电脑

(3)安装GIT

下载地址:https://git-scm.com/download/win

安装好后命令行里进行最低速度和最长下载时间配置

bash 复制代码
git config --global http.lowSpeedLimit 0
git config --global http.lowSpeedTime 999999

(4)安装编译环境

bash 复制代码
# setuptools已安装特定版本,这里无需再安装
pip install cmake ninja wheel -i https://pypi.tuna.tsinghua.edu.cn/simple

(5)下载源码

①利用GIT克隆完整安装包和第三方依赖库(若能一次成功不管②③④)

bash 复制代码
git clone --recurse-submodules https://github.com/abetlen/llama-cpp-python.git E:\Project\AIVoice\llama-ccp-python

# 国内镜像稍微快一点
git clone --recurse-submodules https://gitclone.com/github.com/abetlen/llama-cpp-python.git E:\Project\AIVoice\llama-ccp-python

②若上述第三方库llama.cpp git失败,则手动删除主文件目录下的~\llama-ccp-python\vendor\llama.ccp文件夹,从以下网址手动下载子模块:https://github.com/ggerganov/llama.cpp

③下载后解压到~ \llama-ccp-python\vendor\ 目录下,确保解压后的文件夹路径为:~\llama-ccp-python\vendor\llama.cpp。

④最后删除子模块配置(避免 Git 后续干扰)在 ~ \llama-ccp-python 目录下,编辑 .gitmodules 文件,将 llama.cpp 的条目注释掉或删除。

(6)编译源码

在anaconda虚拟环境下输入以下命令,编译过程中也需要联网:

bash 复制代码
set CMAKE_ARGS=-DGGML_CUDA=on -DCUDAToolkit_ROOT="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.4" -DCMAKE_CUDA_COMPILER="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.4/bin/nvcc.exe"
set FORCE_CMAKE=1
pip install -e E:\Project\AIVoice\llama-ccp-python

(7)测试安装

在anaconda虚拟环境中输入 python,在pothon编译环境中依次输入以下命令:

python 复制代码
import llama_cpp
print(llama_cpp.llama_supports_gpu_offload()

返回信息如下:

终于成功安装了!!!

相关推荐
神仙别闹15 分钟前
基于C语言+SQLite 实现(控制台+图形界面)图书管理系统
c语言·开发语言·sqlite
严谨的麻辣烫17 分钟前
批量静态 IP 如何管理?用 Python 建立一个简单的 IP 资源监控方案
运维·服务器·网络·python·tcp/ip
卷无止境21 分钟前
FastAPI生产环境密钥管理全解析,从一个.env文件说起
后端·python·fastapi
卷无止境27 分钟前
SigV4与HTTPS,两套完全不同维度的安全机制
后端·python·fastapi
何以解忧,唯有..27 分钟前
LangChain 模型调用方法总结:invoke、batch、stream 的入参与出参
开发语言·langchain·batch
qq_4260039629 分钟前
多语言新增语种全量测试策略的测试范围
前端·javascript·python·自动化
SamChan9032 分钟前
Python+ReportLab自动生成PDF翻译质量审计报告:从数据到可视化的完整方案
开发语言·python·ai·pdf·wpf
深念Y32 分钟前
Makefile vs go run:Go 项目构建方式对比
java·开发语言·golang·k8s·编译·流水线·cicd
whcyhhh33 分钟前
头歌实践教学平台:数据科学与大数据技术导论(十八2)
大数据·开发语言·python