解决Ollama安装时”CUDA not found”错误的实用方案

云信安装大师
90
AI 质量分
22 4 月, 2025
2 分钟阅读
0 阅读

解决Ollama安装时”CUDA not found”错误的实用方案

引言

在本地安装Ollama运行大型语言模型时,很多用户会遇到”CUDA not found”的错误提示。这个错误通常意味着系统没有正确配置CUDA环境,导致无法使用GPU加速。本文将详细介绍如何彻底解决这个问题,让你的Ollama能够充分利用GPU资源。

准备工作

在开始之前,请确保:

  1. 你的电脑配备了NVIDIA显卡(GTX 10系列及以上推荐)
  2. 已安装最新版本的NVIDIA显卡驱动
  3. 操作系统为Linux或Windows(本文以Ubuntu为例)

第一步:检查NVIDIA驱动是否安装

代码片段
nvidia-smi

如果看到类似下面的输出,说明驱动已正确安装:

代码片段
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.105.17   Driver Version: 525.105.17   CUDA Version: 12.0     |
|-------------------------------+----------------------+----------------------+

常见问题:如果命令未找到,说明需要先安装NVIDIA驱动。

第二步:安装CUDA Toolkit

CUDA Toolkit是NVIDIA提供的GPU计算平台,Ollama依赖它来执行GPU加速。

Ubuntu系统安装方法:

代码片段
# 添加NVIDIA官方仓库密钥
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/3bf863cc.pub

# 添加仓库
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/ /"

# 更新软件包列表
sudo apt-get update

# 安装CUDA Toolkit(这里以12.0版本为例)
sudo apt-get install -y cuda-toolkit-12-0

Windows系统安装方法:

  1. 访问NVIDIA CUDA下载页面
  2. 选择你的Windows版本和架构
  3. 下载并运行安装程序

注意事项
– CUDA Toolkit版本应与你的显卡驱动兼容
– 建议选择最新的稳定版而非最新发布版

第三步:设置环境变量

安装完成后,需要让系统知道CUDA的位置。

Linux系统:

将以下内容添加到~/.bashrc~/.zshrc文件末尾:

代码片段
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

然后执行:

代码片段
source ~/.bashrc

Windows系统:

  1. 右键”此电脑” → “属性” → “高级系统设置”
  2. “环境变量” → “系统变量”
  3. 编辑Path变量,添加:
    代码片段
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\bin
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\libnvvp<br>
    

第四步:验证CUDA安装

代码片段
nvcc --version

应该看到类似输出:

代码片段
nvcc: NVIDIA (R) Cuda compiler version 12.0.76 

再运行:

代码片段
nvidia-smi

确认显示的CUDA版本与你安装的版本一致。

第五步:重新安装Ollama

现在可以正确识别CUDA环境了,重新安装Ollama:

代码片段
curl -fsSL https://ollama.ai/install.sh | sh

或者如果你已经安装了Ollama,只需重启服务:

代码片段
sudo systemctl restart ollama.service

第六步:测试GPU加速是否生效

运行一个模型测试GPU是否被使用:

代码片段
ollama run llama2 "Hello, how are you?"

同时打开另一个终端查看GPU使用情况:

代码片段
watch -n1 nvidia-smi

应该能看到GPU利用率上升。

常见问题解决方案

Q1: CUDA版本与显卡驱动不兼容怎么办?

A1:
1. nvidia-smi查看支持的最高CUDA版本
2. apt list --installed | grep cuda查看已安装的CUDA版本
3. sudo apt remove cuda-toolkit-xx-x卸载不兼容版本
4. sudo apt install cuda-toolkit-yy-y安装兼容版本

Q2: Windows下还是报错怎么办?

A2:
1. 确保安装了对应版本的cuDNN库
2. Visual Studio可能需要2019或2022版本
3. Windows SDK可能需要10或11

Q3: Docker环境下如何使用GPU?

A3:
需要先安装NVIDIA Container Toolkit:

代码片段
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
      && curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
      && curl -fsSL https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \
            sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
            sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

sudo apt-get update && sudo apt-get install -y nvidia-container-toolkit

sudo systemctl restart docker

docker run --gpus all -it ollama/ollama bash            

总结

通过以上步骤,你应该已经成功解决了Ollama的”CUDA not found”错误。关键点回顾:
1. 检查驱动:确保NVIDIA驱动正确安装
2. 匹配版本:选择与驱动兼容的CUDA Toolkit版本
3. 配置环境:正确设置PATH和LDLIBRARYPATH
4. 验证测试:通过简单命令确认一切正常工作

现在你可以享受GPU加速带来的高效大模型推理体验了!如果仍有问题,可以参考Ollama官方文档或在社区寻求帮助。

原创 高质量