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()

返回信息如下:

终于成功安装了!!!

相关推荐
计算机毕业编程指导师1 分钟前
计算机毕设怎么做?Python+Hadoop的跨平台消费者评论情感分析与数据可视化系统实战 源码 毕业设计 选题推荐 毕设选题 数据分析
大数据·hadoop·python·计算机·spark·课程设计·消费者评论
余槐i7 分钟前
WAL 下写并发仍是 1:SQLite 单写者模型实测与绕开方案
数据库·python·性能优化·sqlite·wal
怕浪猫9 小时前
RAG 面试 6 连问,从原理到优化全部覆盖
python·算法·面试
高洁019 小时前
具身智能中的世界模型训练
人工智能·python·深度学习·机器学习·transformer
无线通信科研笔记9 小时前
IEEE TVT 2026 论文精读与完整复现|相位误差如何重塑近场 RIS 的幅相响应
论文阅读·人工智能·python·算法·论文笔记
朝朝辞暮i9 小时前
VLA 系统学习第 1 课:VLA 到底在干什么?
人工智能·python·计算机视觉·vla
2601_9628857210 小时前
如何用 Python 自动识别股票的支撑位与压力位?
开发语言·python
爱吃奥利奥_wen10 小时前
面向对象三板斧:封装、继承、多态,到底在“装“什么、“承“什么、“变“什么?
开发语言·经验分享·c#
北冥有鱼被烹10 小时前
VCSEL全景解析:与光模块NPO CPO的关系、市场量化分析与产业链影响
python
我可能是个假开发10 小时前
FTP Unicode 文件名导致 `550` 的问题分析与解决方案
java·开发语言·spring