ubuntu 20.04 安装 huggingface transformers 环境

1. 安装 cuda

大多数新发布的大语言模型使用了较新的 PyTorch v2.0+ 版本,Pytorch 官方认为 CUDA 最低版本是 11.8 以及匹配的 GPU 驱动版本。详情见Pytorch官方 如下图:
在这里插入图片描述

1.1 下载 cuda

cuda 12.1 官方网站:
在这里插入图片描述
下载:

$wget https://developer.download.nvidia.com/compute/cuda/12.1.1/local_installers/cuda_12.1.1_530.30.02_linux.run

1.2 安装 cuda

$sudo sh cuda_12.1.1_530.30.02_linux.run

然后,接受协议
在这里插入图片描述
由于已经安装显卡驱动,选择不安装,然后光标到 install 处,点击回车
在这里插入图片描述
同意覆盖原有的 /usr/local/cuda
查看cuda:

$ ll /usr/local/cuda
lrwxrwxrwx 1 root root 21 Mar  6 17:10 /usr/local/cuda -> /usr/local/cuda-12.1/

如果不是这样的话,重新链接

$sudo ln -s /usr/local/cuda-12.1 /usr/local/cuda

同时修改 ~/.bashrc

$ vim ~/.bashrc

在这里插入图片描述

$ source ~/.bashrc

然后查看 cuda 是否安装成功:

$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2023 NVIDIA Corporation
Built on Mon_Apr__3_17:16:06_PDT_2023
Cuda compilation tools, release 12.1, V12.1.105
Build cuda_12.1.r12.1/compiler.32688072_0$ stat /usr/local/cudaFile: /usr/local/cuda -> /usr/local/cuda-12.1/Size: 21        	Blocks: 0          IO Block: 4096   symbolic link
Device: 10303h/66307d	Inode: 20972187    Links: 1
Access: (0777/lrwxrwxrwx)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2024-03-06 17:14:48.054414724 +0800
Modify: 2024-03-06 17:10:45.351626652 +0800
Change: 2024-03-06 17:10:45.351626652 +0800Birth: -

2. 安装 cudnn

2.1 下载 cudnn

cudnn 官网,登录后可以直接点击下载
在这里插入图片描述

2.2 安装 cudnn

$ cd ~/Downloads/ & ls
$ tar -xvf cudnn-linux-x86_64-8.9.7.29_cuda12-archive.tar.xz
$ cd cudnn-linux-x86_64-8.9.7.29_cuda12-archive$ sudo cp include/cudnn.h /usr/local/cuda-12.1/include/
$ sudo cp lib/libcudnn* /usr/local/cuda-12.1/lib64/
$ sudo chmod a+r /usr/local/cuda-12.1/include/cudnn.h /usr/local/cuda-12.1/lib64/libcudnn*

3. 安装 TensorFlow

参考 TensorFlow 官网

$ pip install tensorflow -i https://mirror.baidu.com/pypi/simple

4. 安装 Pytorch

参考 Pytorch 官网

在这里插入图片描述

$ pip3 install torch torchvision torchaudio

5. 安装 transformers

$ conda install -c conda-forge transformers

检验 transformers

$ python
Python 3.11.8 | packaged by conda-forge | (main, Feb 16 2024, 20:53:32) [GCC 12.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import transformers
>>> print(transformers.__version__)
4.38.2

参考:

  1. Ubuntu多CUDA版本安装及切换
  2. 【网络工具】ProxyChains配置教程 — 使国内Linux服务器能访问下载GitHub资源

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/527157.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

17-任务状态

任务状态 实时操作系统的核心就是高效的管理各个任务与任务之间的通信。 任务状态通常分为以下四种: 就绪(Ready) 运行(Running) 阻塞(Blocked) 挂起态(Suspended) 阻塞:如果当…

【JavaScript】JavaScript 变量 ① ( JavaScript 变量概念 | 变量声明 | 变量类型 | 变量初始化 | ES6 简介 )

文章目录 一、JavaScript 变量1、变量概念2、变量声明3、ES6 简介4、变量类型5、变量初始化 二、JavaScript 变量示例1、代码示例2、展示效果 一、JavaScript 变量 1、变量概念 JavaScript 变量 是用于 存储数据 的 容器 , 通过 变量名称 , 可以 获取 / 修改 变量 中的数据 ; …

【SpringCloud】微服务重点解析

微服务重点解析 1. Spring Cloud 组件有哪些? 2. 服务注册和发现是什么意思?Spring Cloud 如何实现服务注册和发现的? 如果写过微服务项目,可以说做过的哪个微服务项目,使用了哪个注册中心,常见的有 eurek…

计算机网络(基础篇)复习笔记——体系结构/协议基础(持续更新中......)

目录 1 计算机网络基础相关技术Rip 路由更新操作 2 体系结构(OSI 7层, TCP/IP4层)应用层运输层网络层IPv4无分类域间路由选择 CIDRIPV6 数据链路层循环冗余校验CRC协议设备 物理层传输媒体信道复用技术宽带接入技术数据通信 3 网络局域网(以太网Ethernet) 4 通信过程编码:信道极…

【c++】string模拟实现

string类的接口 namespace zjw {class string{public:typedef char* iterator;typedef const char* const_iterator;private:char* _str;int _size;int _capacity;};这里的迭代器直接使用原生指针来封装。 _str为指向string数组的首地址的指针。 _size为string数组的大小。 …

Python实例☞组织结构案例

实例一&#xff1a; ❶要求☞ 使用while循环模拟用户登录 ❷程序代码☞ i1 while i<4: nameinput("请输入您的姓名&#xff1a;") passwardinput("请输入你的密码&#xff1a;") if name"鯨殤" and passward"88888": print(&quo…

代码随想录刷题day18|找树左下角的值路径总和中序后序构造二叉树

文章目录 day18学习内容一、找树左下角的值1.1、思路1.2、错误写法1.2.1、为什么这么写是错的&#xff1f; 1.3、正确写法 二、路径总和2.1、思路2.2、正确写法12.2.1、这种写法回溯思想体现在哪里&#xff1f; 2.3、正确写法22.3.1、这种写法回溯思想体现在哪里&#xff1f; 2…

面向切面编程(AOP)介绍(横切关注点、通知(增强)、连接切入点、切面)

1. 面向切面编程思想AOP AOP&#xff1a;Aspect Oriented Programming面向切面编程 AOP可以说是OOP&#xff08;Object Oriented Programming&#xff0c;面向对象编程&#xff09;的补充和完善。OOP引入封装、继承、多态等概念来建立一种对象层次结构&#xff0c;用于模拟公…

【理解指针(二)】

文章目录 一、指针的运算&#xff08;1&#xff09;指针加整数&#xff08;2&#xff09;指针减指针&#xff08;指针关系运算&#xff09; 二、野指针&#xff08;1&#xff09;野指针的成因&#xff08;1.1&#xff09;指针未初始化&#xff08;1.2&#xff09;指针的越界访问…

idea2023版使用废弃类没有删除线处理方法

idea2023版使用废弃类没有删除线处理方法 新版Idea使用废弃类时,默认是黄色警告处理方法1. 打开file -> setting2. 编辑(Editor) -> 检查(Inspections) -> 搜索Deprecated API usage 新版Idea使用废弃类时,默认是黄色警告 处理方法 1. 打开file -> setting 2. 编…

微服务---Eureka注册中心

目录 一、服务中的提供者与消费者 二、Eureka工作流程 三、搭建Eureka服务 四、服务拉取 五、总结 1.搭建EurekaServer 2.服务注册 3.服务发现 一、服务中的提供者与消费者 服务提供者&#xff1a;一次业务中&#xff0c;被其他微服务调用的服务。即提供接口给其他微服务。…

<Linux> 初识线程

目录 前言&#xff1a; 一、什么是线程 &#xff08;一&#xff09;基本概念 &#xff08;二&#xff09;线程理解 &#xff08;三&#xff09;线程与进程的关系 &#xff08;四&#xff09;简单实用线程 &#xff08;五&#xff09;重谈虚拟地址空间 1. 页表的大小 2…