lychee-rerank-mm环境配置:Ubuntu 22.04 + CUDA 12.1 + PyTorch 2.3适配清单
lychee-rerank-mm环境配置:Ubuntu 22.04 + CUDA 12.1 + PyTorch 2.3适配清单
想在自己的RTX 4090上跑起那个能看懂图片、还能给图片和文字匹配度打分的lychee-rerank-mm系统吗?很多朋友卡在了第一步——环境配置。网上教程五花八门,版本不匹配、依赖冲突、驱动问题,随便一个坑就能让你折腾半天。
今天这篇文章,就是为你准备的“保姆级”避坑指南。我会手把手带你,在Ubuntu 22.04系统上,从零开始搭建一个专为RTX 4090优化的lychee-rerank-mm运行环境。我们用的组合是CUDA 12.1和PyTorch 2.3,这是目前兼顾稳定性和性能的最佳选择之一。
跟着步骤走,你不仅能成功部署,还能理解每一步背后的原因,以后自己配环境也能游刃有余。
1. 环境配置总览与准备工作
在开始敲命令之前,我们先搞清楚目标是什么,以及需要准备些什么。这能帮你建立一个清晰的路线图,避免中途迷失方向。
1.1 我们要搭建什么?
简单说,我们要搭建一个能让lychee-rerank-mm模型在你的电脑上跑起来的“地基”。这个模型很厉害,它能理解你输入的一段文字(比如“阳光下的小猫”),然后对你上传的一堆图片进行“阅卷打分”,最后按照和文字描述的匹配程度,从高到低给你排好序。
为了实现这个功能,我们需要几个核心“部件”:
- 操作系统:Ubuntu 22.04 LTS。这是目前深度学习社区最主流、支持最好的Linux发行版。
- 显卡驱动与CUDA:这是让RTX 4090显卡发挥算力的关键。CUDA可以理解为显卡的“编程语言”和“工具箱”。
- PyTorch:一个非常流行的深度学习框架,我们的模型就是基于它构建的。
- Python环境与依赖包:包括Python本身,以及模型运行所需的各种“小零件”。
1.2 准备工作清单
在动手前,请确保你准备好了以下几样东西:
- 一台安装了Ubuntu 22.04的电脑:确保你是以具有
sudo权限的用户登录的。 - 一张RTX 4090显卡:并且已经正确安装在主板上,接好了电源。
- 稳定的网络连接:后续需要下载很多安装包和模型文件。
- 大约50GB的可用磁盘空间:主要用于存放CUDA工具包、PyTorch以及后续下载的模型(模型本身大概7B参数,需要一定空间)。
好了,热身完毕,我们正式开始。
2. 第一步:安装NVIDIA显卡驱动
这是所有步骤的基石。没有正确的驱动,你的4090就是一块高级砖头。
首先,打开终端(快捷键Ctrl+Alt+T),我们先更新一下软件包列表:
sudo apt update接下来,安装Ubuntu推荐的管理工具和驱动。这里我们选择使用ubuntu-drivers工具来自动检测和安装合适的驱动,这是最省心的方法:
# 安装工具 sudo apt install ubuntu-drivers-common -y # 让工具自动检测并推荐安装最适合的驱动版本 sudo ubuntu-drivers autoinstall这个命令会自动为你安装当前系统仓库里最适合你显卡的NVIDIA驱动版本。安装过程可能会持续几分钟,期间屏幕可能会闪烁几次,这是正常的。
安装完成后,必须重启电脑来让新驱动生效:
sudo reboot重启后,再次打开终端,输入以下命令来验证驱动是否安装成功:
nvidia-smi如果安装成功,你会看到一个表格,显示了你的GPU信息(应该是GeForce RTX 4090)、驱动版本以及CUDA版本。请注意这里显示的CUDA版本(例如12.4),这代表你的驱动最高支持该版本的CUDA,但我们需要安装的是特定的CUDA 12.1工具包,两者可以共存,不影响。
3. 第二步:安装CUDA 12.1工具包
CUDA是NVIDIA推出的并行计算平台和编程模型。我们的深度学习框架(PyTorch)需要通过它来调用GPU进行计算。
我们不安装nvidia-smi里显示的最新版,而是安装与PyTorch 2.3匹配良好的CUDA 12.1。访问NVIDIA CUDA Toolkit Archive找到12.1.1版本。
对于Ubuntu 22.04,选择对应的runfile (local)安装方式,复制其提供的安装指令。通常类似下面这样(请以官网生成的实际命令为准):
wget https://developer.download.nvidia.com/compute/cuda/12.1.1/local_installers/cuda_12.1.1_530.30.02_linux.run sudo sh cuda_12.1.1_530.30.02_linux.run运行安装程序后,会出现一个文本界面。这里有个关键点:
- 在安装选项界面,通过方向键移动,取消勾选
Driver的安装(因为我们上一步已经装好了驱动)。 - 确保
CUDA Toolkit 12.1是被选中的。 - 然后选择
Install开始安装。
安装完成后,需要将CUDA添加到系统环境变量中,这样系统才能找到它。编辑你的shell配置文件(通常是~/.bashrc):
nano ~/.bashrc在文件末尾添加以下几行:
export PATH=/usr/local/cuda-12.1/bin${PATH:+:${PATH}} export LD_LIBRARY_PATH=/usr/local/cuda-12.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}保存并退出编辑器(在nano中是Ctrl+X,然后按Y,再按Enter)。让配置立即生效:
source ~/.bashrc最后,验证CUDA 12.1是否安装成功:
nvcc --version这个命令应该输出Cuda compilation tools, release 12.1等相关信息。同时,再次运行nvidia-smi,顶部的CUDA Version可能仍显示驱动支持的版本(如12.4),这没关系,我们实际使用的是/usr/local/cuda-12.1下的12.1工具包。
4. 第三步:安装PyTorch 2.3及相关依赖
PyTorch是我们的深度学习框架,lychee-rerank-mm模型就是基于它写的。我们将使用pip来安装。
访问 PyTorch官网,找到PyTorch 2.3的安装命令。根据我们的配置(Linux, Pip, CUDA 12.1),命令应该类似于:
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121这条命令会安装与CUDA 12.1兼容的PyTorch 2.3、TorchVision和TorchAudio。
安装完成后,我们可以写一个简单的Python脚本来测试PyTorch是否能正确识别GPU:
import torch print(f"PyTorch版本: {torch.__version__}") print(f"CUDA是否可用: {torch.cuda.is_available()}") if torch.cuda.is_available(): print(f"GPU设备名称: {torch.cuda.get_device_name(0)}") print(f"当前CUDA工具包版本: {torch.version.cuda}")将上面代码保存为test_gpu.py,然后运行:
python3 test_gpu.py如果一切正常,你会看到输出中CUDA是否可用为True,并且设备名称为NVIDIA GeForce RTX 4090。
5. 第四步:创建Python虚拟环境并安装项目依赖
为了避免不同项目之间的Python包版本冲突,最佳实践是使用虚拟环境。我们将为lychee-rerank-mm创建一个专属环境。
首先安装创建虚拟环境的工具(如果还没安装的话):
sudo apt install python3-venv -y然后,为你项目创建一个目录并进入,接着创建虚拟环境。环境名字可以自定义,比如lychee_env:
mkdir -p ~/projects/lychee_rerank cd ~/projects/lychee_rerank python3 -m venv lychee_env激活这个虚拟环境:
source lychee_env/bin/activate激活后,你的命令行提示符前面通常会显示环境名(lychee_env)。接下来所有pip安装的操作,都请确保在这个激活的虚拟环境下进行。
现在,除了PyTorch(我们已全局安装,虚拟环境中也能访问到),lychee-rerank-mm项目还需要其他一些依赖包,比如网页框架Streamlit、图像处理库Pillow、深度学习加速库Transformers等。你可以创建一个requirements.txt文件,内容如下:
streamlit>=1.28.0 pillow>=10.0.0 transformers>=4.35.0 accelerate>=0.24.0 tqdm>=4.66.0然后使用pip安装它们:
pip install -r requirements.txt如果没有requirements.txt,也可以直接安装:
pip install streamlit pillow transformers accelerate tqdm6. 第五步:验证与故障排查
环境搭建好了,最后一步是整体验证和了解常见问题的解决方法。
6.1 整体环境验证
我们可以用一个综合脚本来检查所有关键组件:
import sys, torch, subprocess print("="*50) print("环境配置综合检查") print("="*50) # 1. 检查Python版本 print(f"1. Python版本: {sys.version}") # 2. 检查PyTorch和CUDA print(f"2. PyTorch版本: {torch.__version__}") print(f" CUDA可用: {torch.cuda.is_available()}") if torch.cuda.is_available(): print(f" 显卡: {torch.cuda.get_device_name(0)}") print(f" PyTorch使用的CUDA版本: {torch.version.cuda}") # 3. 检查系统CUDA版本 try: nvcc_result = subprocess.run(['nvcc', '--version'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True) if nvcc_result.returncode == 0: for line in nvcc_result.stdout.split('\n'): if 'release' in line: print(f"3. 系统CUDA工具包版本: {line.strip()}") break except FileNotFoundError: print("3. 系统CUDA工具包: 未找到 (请检查PATH环境变量)") print("="*50) print("检查完成。如果CUDA可用且版本正确,则基础环境OK。") print("="*50)6.2 常见问题与解决思路
即使按照步骤,也可能遇到问题。这里列出几个常见的:
nvidia-smi命令未找到:说明驱动没装好。重新执行第二步的驱动安装部分,并确保重启。torch.cuda.is_available()返回 False:- 可能原因1:PyTorch版本与CUDA版本不匹配。请严格按照PyTorch官网为CUDA 12.1提供的命令安装。
- 可能原因2:虚拟环境中安装的PyTorch是CPU版本。确保在虚拟环境中,通过
pip list | grep torch检查安装的包,并确认其版本后缀包含cu121。
- 运行项目时提示缺少某个Python包:在激活的虚拟环境中,使用
pip install [包名]安装即可。 - 显存不足错误:lychee-rerank-mm针对4090优化,但如果你一次性加载过多高分辨率图片,仍可能超出24G显存。尝试减少单次处理的图片数量或适当降低图片分辨率(如果项目代码支持)。
7. 总结
至此,我们已经完成了lychee-rerank-mm在Ubuntu 22.04上,基于CUDA 12.1和PyTorch 2.3的完整环境配置。我们来快速回顾一下关键步骤:
- 打好地基:使用
ubuntu-drivers autoinstall安装NVIDIA显卡驱动,并重启。 - 装备核心工具:从NVIDIA官网下载并安装CUDA 12.1工具包,记得安装时取消勾选驱动,并正确配置环境变量。
- 搭建主框架:通过PyTorch官网提供的专用命令,安装与CUDA 12.1匹配的PyTorch 2.3。
- 创建独立工作区:使用
venv创建Python虚拟环境,并在其中安装Streamlit等项目运行所需的依赖包。 - 最终验收:运行测试脚本,确认PyTorch能成功识别并调用RTX 4090显卡。
这套环境不仅是运行lychee-rerank-mm的钥匙,也是一个标准的、稳定的深度学习开发环境。你可以用它来运行其他基于PyTorch和CUDA 12.1的模型项目。
接下来,你就可以克隆lychee-rerank-mm的项目代码,按照其README的指示,体验多模态图文重排序的强大功能了。享受你的AI探索之旅吧!
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。
