ubuntu20.04+RTX4060Ti大模型环境安装

ops/2025/2/13 22:22:14/

装显卡驱动

这里是重点,因为我是跑深度学习的,要用CUDA,所以必须得装官方的驱动,Ubuntu的附件驱动可能不太行.

进入官网https://www.nvidia.cn/geforce/drivers/,选择类型,最新版本下载。

在这里插入图片描述
挨个运行,更新/安装必须的包

sudo apt-get update
sudo apt-get install g++
sudo apt-get install gcc
sudo apt-get install make

禁用自带的显卡驱动nouveau

终端运行以下命令:

sudo gedit /etc/modprobe.d/blacklist.conf

在弹出的文本文档最后写入以下两行内容:

blacklist nouveau
options nouveau modeset=0

(3)终端依次运行以下代码更新系统,并重启

sudo update-initramfs -u  # 更新
sudo reboot  # 重启

(4)验证禁用是否成功

lsmod | grep nouveau

若没有任何输出,则禁用成功。

(5)卸载原有驱动,这个新装系统的话可以跳过,不过跑一遍也没影响

sudo apt-get remove nvidia-*

命令行输入以下命令进入命令行界面,注意要黑屏了,不要慌

sudo telinit 3

进去之后就会弹出来login让你登录,你就先输入用户名回车,然后输入密码回车,这里输入是不会显示的,不用管,你输完回车就行

接着关闭显示服务,Ubuntu20.04的显示是gdm3,老版本Ubuntu的可能是lightdm

输入以下命令或者直接按Ctrl + Alt + F1F6中的一个(分别对应进入tty1tty6)

sudo service gdm3 stop

sudo chmod 777 NVIDIA-Linux-x86_64-550.54.14.run  # 给安装文件root权限
sudo ./NVIDIA-Linux-x86_64-550.54.14.run -no-opengl-files -no-x-check -no-nouveau-check

如果你忘了下载的显卡驱动版本,你就输入 ls 查看当前目录下的文件夹,然后 cd 你之前放显卡驱动的文件夹

ls  # 查看文件夹
cd /home/xxx  # 进入你放驱动的文件夹

进入文件夹后你输入NVI的时候就可以按一下tab,应该会自动补全

然后就跳出来几个选项:

①选continue install

②Install NVIDIA’s 32-bit compatibility libraries? 选no

③Would you like to run the nvidia-xconfig 选no

(7)打开显示服务,然后会跳回桌面界面

输入以下命令或者直接按Ctrl + Alt + F1/F7/F8

sudo service gdm3 start

(8)验证是否安装成功

nvidia-smi

每隔1秒刷新一次显卡状态信息,可以用来监控显卡状态
watch -n 1 nvidia-smi

打开设置,查看一下,这样就是失败了:
在这里插入图片描述看一下你是不是有两个显卡 lspci | grep VGA:
在这里插入图片描述如果是,看这里:

https://zhuanlan.zhihu.com/p/19148652598
按照这个文章,卸载了吧:
sudo /usr/bin/nvidia-uninstall
然后去软件更新->附加驱动里安装显卡驱动

NVIDIA driver

(open kernel) metapackage 来自 nvidia-driver-535-server-open(专有, tested):
特点:包含开源内核模块和NVIDIA专有部分。通常用于服务器环境。
用途:适合需要稳定性和长时间运行的服务器。NVIDIA driver metapackage 来自 nvidia-driver-535(专有):
特点:NVIDIA专有驱动,适用于大多数用户。
用途:适合需要高性能图形处理的桌面用户和游戏玩家。NVIDIA driver (open kernel) metapackage 来自 nvidia-driver-535-open(专有):
特点:包含开源内核模块和NVIDIA专有部分。
用途:适合希望使用最新技术和开源驱动的用户。NVIDIA Server Driver metapackage 来自 nvidia-driver-535-server(专有):
特点:专为服务器设计,注重稳定性和可靠性。
用途:适合运行在服务器上的图形或计算任务。http://X.Org Xserver - Nouveau display driver

来自 xserver-xorg-video-nouveau

(开源):
特点:开源驱动,社区维护,通常性能不如NVIDIA专有驱动。
用途:适合开源软件爱好者和不需要高性能图形处理的用户。

总结:

如果你需要高性能图形处理(如玩游戏、图形设计、深度学习),建议使用 nvidia-driver-535(专有)。
如果你在服务器上运行,且注重稳定性和长时间运行,建议使用 nvidia-driver-535-server(专有) 或 nvidia-driver-535-server-open(专有, tested)。
如果你倾向于使用开源技术并希望参与开源社区,可以选择 nvidia-driver-535-open(专有) 或 xserver-xorg-video-nouveau (开源),但要注意性能可能会略低于专有驱动。

在大多数情况下,对于桌面用户来说,选择 nvidia-driver-535(专有) 是最合适的。如果你不确定,可以先尝试这个驱动,观察系统的稳定性和性能,然后根据需要调整。

换系统

折腾半天,放弃了,换ubuntu22.04了,
1.更新软件

安装驱动前一定要更新软件列表(必须)
sudo apt-get update
sudo apt-get upgrade
2.禁用nouveau

nouveau是Ubuntu自带的显卡驱动,但他是核显,这里安装独显,就得把他禁掉。
①.在终端输入命令打开blacklist.conf文件。
sudo gedit /etc/modprobe.d/blacklist.conf
或者新建一个单独的blacklist-nouveau.conf文件。
sudo gedit /etc/modprobe.d/blacklist-nouveau.conf
在打开的文件末尾输入并保存:
blacklist nouveau
options nouveau modeset=0
②.最后更新一下系统的initramfs镜像文件,在终端中输入:
sudo update-initramfs -u
在这里插入图片描述
③.完成以上步骤后,重启电脑。然后在终端中输入:
lsmod | grep nouveau
在这里插入图片描述
如果没有输出的话就说明禁用了nouveau。
3. 卸载原有驱动
sudo apt-get remove --purge nvidia*
sudo apt-get remove nvidia-*
如果第一次装会提示未安装驱动的。

装显卡只需要
在这里插入图片描述

选最高版本即可,实测565可以

如果你“软件和更新”中没有“附加驱动”选项没有这些,解决方案

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update

当然,这个下载很慢,推荐使用apt-fast

安装方法:
首先,你需要添加apt-fast的PPA仓库:
sudo add-apt-repository ppa:apt-fast/stable
然后,更新软件源:
sudo apt-get update
最后,安装apt-fast:
sudo apt-get install apt-fast
弹出窗口
在这里插入图片描述
然后选择默认的5连接数,并且选择略过对话框。
使用方法:
使用apt-fast更新软件源:
sudo apt-fast update
使用apt-fast升级已安装的软件:
sudo apt-fast upgrade
使用apt-fast安装新的软件:
sudo apt-fast install …
一句话,原来怎么用apt的,现在就换成apt-fast,继续怎么用。

修改ppa:
添加 deb https://launchpad.proxy.ustclug.org/graphics-drivers/ppa/ubuntu/ jammy main
在这里插入图片描述
这样下载就快了

然后安装结束重启
在这里插入图片描述在这里插入图片描述

好用极了,然后下载一个测试显卡的软件。

Unigine Valley(山谷)显卡测试程序1.0版For Linux 下载地址:
https://590m.com/file/11603714-479259053
Unigine Heaven(天堂)显卡测试程序4.0版For Linux 下载地址:
https://590m.com/file/11603714-479260297

chmod +x Unigine_Heaven-4.0.run
chmod +x Unigine_Valley-1.0.run
./Unigine_Heaven-4.0.run
./Unigine_Valley-1.0.run
cd ./Unigine_Heaven-4.0/
sudo ./heaven

装conda

下载anaconda或者miniconda都可以,这里下载anaconda也没有那个可视化界面,所以推荐下载miniconda(https://docs.anaconda.com/miniconda/)比较轻量 Miniconda — Anaconda 文档

可以手动下载.sh文件,然后在文件夹鼠标右键-在终端命令打开,然后终端输入以下命令安装:

bash Miniconda3-latest-Linux-x86_64.sh

中间出现[y/n]或者[yes/no]就输入y回车,如果出现很长的用户协议就输入q跳过

这里最后一步有个问你是否init,他默认“no>>”,你直接回车就麻烦了,你要输入yes再回车

还有注意不要用sudo bash,这样会把你安装的文件夹锁住(root权限才能打开)

执行命令:
source ~/.bashrc
conda -V

然后就能看到版本输出了

py虚拟环境创建

使用国内镜像源

由于你遇到的错误可能与国际网络连接有关,如果你位于中国大陆,访问国外的 conda 仓库可能会较慢。此时你可以考虑使用 国内镜像源,这样可以显著提高访问速度和稳定性。

你可以选择 Anaconda 或 conda-forge 的国内镜像,例如清华大学镜像源。以下是将 conda 配置为使用国内镜像的步骤:
步骤 1: 配置 Anaconda 使用清华镜像

首先,打开终端,执行以下命令:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes

步骤 2: 配置 conda-forge 镜像

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/

步骤 3: 检查配置

你可以通过以下命令查看当前配置的镜像源:

conda config --show channels

然后设置不自动激活base虚拟环境,执行如下命令
conda config --set auto_activate_base false

激活、关闭基础虚拟环境,如下:

conda activate base
conda deactivate

激活其他环境则
conda activate 环境名称

此时,anaconda安装完成。

创建虚拟环境

创建一个自定义的虚拟环境,如下:

conda create -n test_env -y python=3.8

查看当前有的虚拟环境
conda info --envs
这将显示一个包含所有环境名称的列表,当前激活的环境前面会有一个星号(*)标记。
激活环境后,你可以使用以下命令列出该环境中已安装的所有包:
conda list

检查这个列表,看看你要找的包是否在其中。

删除环境

如果你不再需要某个环境,可以使用 conda env remove 命令来删除它:
conda env remove --name myenv

导出环境配置(复制环境)
如果你想复制或迁移这个环境到另一个系统或另一个用户,你可以导出环境配置:

conda env export > environment.yml

这会创建一个environment.yml文件,其中包含了所有已安装的包及其版本信息。
在另一个系统或位置导入环境配置

在另一个系统或位置,你可以使用以下命令来创建和激活一个新环境,并安装之前导出的包:

conda env create -f environment.yml

这将在当前目录下创建一个新的Conda环境,并安装environment.yml文件中指定的所有包及其版本。

如果是本地复制,则还可以clone:
conda create --name new_env --clone old_env

Westlake - Omni本地部署实践

环境准备

创建新的conda环境并安装所需的软件包:

conda install pytorch2.3.0 torchvision0.18.0 torchaudio==2.3.0 -c pytorch

git clone https://github.com/xinchen-ai/Westlake-Omni.git
cd Westlake-Omni
pip install -r requirements.txt

如果pip很慢,则指定一下源:
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/

然后报错
在这里插入图片描述

运行:
pip install --upgrade python-dateutil

2、 启动运行

1)gradio启动演示

python gradio_demo.py
在这里插入图片描述可以使用pip来更新click
pip install --upgrade click
如果更新click后问题仍然存在,尝试重新安装gradio及其所有依赖:
pip uninstall gradio
pip install gradio

打开py文件
在这里插入图片描述从huggingface上把模型下载下来,放到同级文件夹下的ckpt文件夹中
HuggingFace访问不了,国内替代相关网站:

国内镜像域名: hf-mirror.com
镜像2网址是:https://aliendao.cn
魔塔社区:https://modelscope.cn/home
https://ai.gitee.com/

在这里插入图片描述开启服务端口就可以了

2)本地cli测试
新打开一个端口,比如输入

python generate.py --user-audio data/sounds/input.wav --user-text 嗯,最近心情不是很好,能聊聊吗?
python generate.py --user-audio data/sounds/input.wav


http://www.ppmy.cn/ops/158152.html

相关文章

HTML之JavaScript对象声明

HTML之JavaScript对象声明 常用&#xff1a;方式1&#xff1a;new Object() 创建一个空对象方式2&#xff1a;{属性名:属性值,属性名:属性值,...函数名:function(){}} 创建一个对象<!DOCTYPE html> <html lang"en"> <head><meta charset&quo…

JVM的性能优化

1.方法内联 方法内联,是指 JVM在运行时将调用次数达到一定阈值的方法调用替换为方法体本身 ,从而消除调用成本,并为接下来进一步的代码性能优化提供基础,是JVM的一个重要优化手段之一。 注: C++的inline属于编译后内联,但是java是运行时内联 简单通俗的讲就是把方法内部调…

MindStudio制作MindSpore TBE算子(四)算子测试(ST测试-Ascend910B/ModelArts)--失败尝试

上一节&#xff0c;MindStudio制作MindSpore TBE算子&#xff08;三&#xff09;算子测试&#xff08;ST测试&#xff09;&#xff0c;因此缺乏对应的硬件环境导致无法进行ST测试&#xff0c;导致难以自安&#xff0c;今天搞来Ascend910B服务器来填坑&#xff0c;看看是否是硬件…

深度探索未来的搜索引擎 —— DeepSeek

随着信息时代的进步&#xff0c;我们每天都在生成、分享和消费大量的数据&#xff0c;如何从海量的内容中迅速找到有价值的信息&#xff0c;成为了现代社会的重要课题。传统的搜索引擎虽然在很长时间内引领了互联网的发展&#xff0c;但随着技术的进步和用户需求的变化&#xf…

docker pull 报错Get “https://registry-1.docker.io/v2/“: net/http: request canceled while waiting for c

报错 &#xff1a;Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers) 解决方法 配置加速地址 vim /etc/docker/daemon.json 添加以下内容 {"registry-…

JVM的栈里面存的是栈帧,栈帧里面存的是什么?

JVM 栈帧&#xff08;Stack Frame&#xff09;—— 更完整的解释 栈帧&#xff08;Stack Frame&#xff09;是 JVM 方法执行时的 最小单位&#xff0c;每个方法被调用时&#xff0c;JVM 都会在**虚拟机栈&#xff08;JVM Stack&#xff09;**中创建一个栈帧。 当方法执行完成…

深入理解概率密度函数和概率的关系

最近在学习和理解线性回归的最大似然估计&#xff0c;发现自己对概率密度函数的理解比较欠缺&#xff0c;导致在掌握最大似然估计的过程中&#xff0c;走了很多弯路。特意做了一些调研&#xff0c;总结了一些理论依据&#xff0c;加深对概率密度函数和概率的认识。 一、概率密…

deepseek + kimi 高效生成PPT

1.在deepseek中生成ppt大纲 2.将大纲复制到kimi中生成PPT kimi&#xff1a;https://kimi.moonshot.cn/