DeepSeek-OCR本地部署(1):CUDA 升级12.9,不重启,教程

大家好,我是 Ai 学习的老章

DeepSeek-OCR 开源有段时间了,我曾详细测试过DeepSeek 最新开源 OCR 模型,实测,也推荐过基于它的 web 端应用:一个强大的开源 OCR 工具,基于 DeepSeek OCR,还有一个桌面客户端:DeepSeek-OCR 桌面客户端,Windows 用户优先体验

DeepSeek-OCR 官方项目 README: https://github.com/deepseek-ai/DeepSeek-OCR 中有关于 vllm 0.8.5+cu118+transformers>=4.51.1 下进行离线推理 的详细步骤,但是教程中在线推理部分 vLLM 还是 nightly 版本。我看网上大家根据官方文档进行部署,问题多多。正好,
vLLM 最新版来了,V0.11.2 稳定版原生支持 DeepSeek-OCR,使用 OpenAI API 兼容格式的在线推理,方便多了

但是,vLLM 自 0.11.1 之后默认 CUDA 更新到了 12.9,我的 Linux 算力测试机还是 12.4,本文就介绍一下不重启情况下,如何升级 CUDA 和 vLLM@0.11.2,后面一篇文章再详细介绍 DeepSeek-OCR 的部署和 API 使用。

CUDA 升级

第一步:下载 CUDA Toolkit runfile

目前 CUDA Toolkit 的最新版是 13.0,作为等等派,我还是先装 12.9.1 吧

下载地址:https://developer.nvidia.com/cuda-12-9-1-download-archive?target_os=Linux&target_arch=x86_64&Distribution=RHEL&target_version=8&target_type=runfile_local

注意选择符合自己操作系统、架构、版本的安装包,最后一项建议选 runfile(local)

CUDA Toolkit 的历史版本,可以在这里找到:https://developer.nvidia.com/cuda-toolkit-archive

如果你的服务器是离线的,把下载好的 runfile 传进去即可

第二步:卸载旧版 CUDA

可以通过 whereis nvcc 查看自己 CUDA 的安装位置,一般都是在/usr/local/目录下

然后进入到 /usr/local/cuda-12.4/bin 下,找到 cuda-uninstaller

直接运行 cuda-uninstaller,把下面三项选中后,光标移至 Done 后按 Enter 进行卸载

一般很快就 OK 了

第三步:安装 CUDA Toolkit 12.9

进入到第一步下载好的 runfile 目录下

运行 sudo sh cuda_12.9.1_575.57.08_linux.run

然后选中以下几项,选中 Install 后 Enter

然后输入 accept 后 Enter

无比顺利情况下你会看到这个界面,这就约等于大功告成了

但是!不出意外的话,肯定会出意外了

问题 1:nvidia-uvm

你的服务器如果还有大模型在跑或别的任何服务在使用算力,极有可能会收到安装失败的 erro

查看日志发现有一个叫 nvidia-uvm 的内核正在使用

运行 fuser -v /dev/nvidia-uvm 确实是我之前 Docker 启动的 xinfer、vllm 等在运行模型

这里情况也能不一样,就我这个,测试发现要完全停掉 docker

仅此命令还不够 sudo systemctl stop docker

要彻底停止 Docker,需要同时停止服务和套接字

sudo systemctl stop docker.service docker.socket

然后停掉自启

sudo systemctl disable docker.service docker.socket

完成升级后记得要 enable 一下

sudo systemctl enable docker.service docker.socket

问题 2:nvidia-drm

再次升级 CUDA,又失败了,日志提示 nvidia-drm already loaded

这里需要切换到纯文本模式(关闭图形界面)

执行:sudo systemctl isolate multi-user.target

执行后,等待几秒钟,让图形服务完全关闭。

然后再再次升级 CUDA,就 OK 了

执行 nvidia-smi 发现 Driver 和 CUDA Version 都是新的了

执行 nvcc -V 发现报错,这是因为环境变量还没修改

执行 vi ~/.bashrc 把之前的 12.4 全部修改为 12.9

然后 source ~/.bashrc 使其生效

再次执行 nvcc -V 发现已经 OK

vLLM 升级

有网环境可以 pip upgrade,不过我这是内网服务器

所以用了 vLLM 的官方 Docker 镜像

很简单,直接 docker pull vllm/vllm-openai:v0.11.2 拉取镜像

然后 docker save -o vllm012.tar vllm/vllm-openai:v0.11.2

把镜像保存到本地后传入内网服务器即可

至此 vLLM 升级完成

部署 DeepSeek-OCR

后面就是用 VLLM 的 Docker 拉起 DeepSeek-OCR 了

测试很 OK,单卡 4090 很顺畅,具体步骤就要下文了

相关推荐
阿里云大数据AI技术7 分钟前
阿里云 EMR Serverless StarRocks(Stella 2.2.0) 发布:内表与湖表同时支持向量、全文与 AI Function,一条 SQL 完成多模态检索
人工智能
AI人工智能+7 分钟前
智能文档抽取系统采用“解析底座+大模型“双引擎架构,突破传统OCR局限
深度学习·ocr·文档抽取
格林威8 分钟前
工业相机Chunk功能全解析:图像嵌入时间戳、编码器元数据(附堡盟C#代码)
开发语言·人工智能·数码相机·计算机视觉·c#·视觉检测·工业相机
怪奇云呼军12 分钟前
闪电智能Voice Agent:ASR 首字延迟和最终识别延迟怎么测?t0-t3 埋点实战
人工智能·科技·ai·语音识别
冬哥聊AI19 分钟前
百万行代码里跑Claude Code?三面这题80%的人答不上来
人工智能
甄同学20 分钟前
第二十三篇:Tasks系统,Claude Code如何统一管理7种后台任务
人工智能
独隅21 分钟前
IntelliJ IDEA 接入多种AI大模型插件终极指南(2026.1 企业合规版)
java·人工智能·intellij-idea
有Li25 分钟前
EvoMDT:用于多癌种结构化临床决策的自进化多智能体系统文献速递/医学智能体前沿
人工智能·学习·分类·文献·医学生
小刘BlandNew36 分钟前
AI核心概念大串联
人工智能
墨染天姬39 分钟前
【AI】自驱动智能体
人工智能