linux配置魔搭社区modelscope时的whl下载中断问题和解决方案

本文涉及的产品
交互式建模 PAI-DSW,5000CU*H 3个月
简介: 本文提供了断点续传和手动安装两个方案。

**01

背景**

我一直习惯早上看一会互联网早间新闻,约摸是在几个月前,看到了阿里云大模型开源的消息,并且其还建立了开源平台——魔搭社区。

不得不说,最起码在国内这是一个比较大胆的举动,无论其AI大模型的质量如何,总归是将这等先进的技术开放给大家免费商用,或者是提供给初学者进行学习了。

作为一个对潮流技术始终非常感兴趣的入门级产品经理,我也认为AI大模型技术在数字化转型领域还是有相当多的用武之地,所以决定也将魔搭社区的学习提上了日程。

不过学习的道路总归不会一帆风顺,在刚开始的环境配置阶段,就遇到了一些问题。

image.png

**02

准备工作**

【Linux系统】

魔搭社区的文档中心开始便说:建议在Linux系统中使用,因为很多模型只兼容Linux系统。笔者也比较听话,于是在一个旧电脑上安装了Ubuntu 22.04.3 LTS。Ubuntu系统的安装过程也比较简单,大家如果有想玩的,网上可以搜到很多保姆级教程。

【Python环境】

笔者所使用的这个Ubuntu镜像自带了Python环境,记得好像是3.7版本,也足够使用了,如果要是想自己安装其他版本的Python环境,使用指令直接安装并不难,大家同样也可以在网上搜到很多教程。当然,这个步骤也可以直接跳过,安装anaconda的同时,Python环境也就准备好了,毕竟anaconda本身也就是一个用于科学计算的Python发型版嘛!

【anaconda安装】

之后,笔者按照指引安装了anaconda,anaconda的安装并不难,大家可以根据魔搭社区的指引文档,从官网下载合适版本的安装包,之后通过bash指令,对这个安装包进行安装。安装好以后,可以通过anaconda -V查看版本的方式检查其是否安装成功。

【虚拟环境配置】

在anaconda中,我分别为modelscope(魔搭)、pytorch和TensorFlow配置了虚拟环境。pytorch和TensorFlow暂时还用不到,现在主要研究魔搭。创建虚拟环境并进入虚拟环境的指令分别如下(指令也是从魔搭社区文档中心摘抄的):

创建虚拟环境:conda create -n modelscope python=3.8

进入modelscope这个虚拟环境:conda activate modelscope

【安装ModelScope Library】

按照指引文档,我们来到了ModelScope核心框架的安装环节。运行pip install modelscope这个指令时,大家可能也会遇到许多问题,比如没有安装pip需要单独安装、或者下载源下载速度慢等问题,这些在网络上也都一一有破解之法。

关于下载源,笔者使用最多感觉体验最好的还是清华源,现在魔搭社区的指引文档中,给出的指令包含阿里云源较多,其实也建议大家尝试下,毕竟是阿里自己的社区和产品。

**03

问题来源**

准备工作讲到这里,笔者遇到的问题也就来了,在安装ModelScope这个核心框架时,里面总有一个依赖一直下载中断并报错,如下图所示:

image.png

每次下载到这个.whl文件时,总会中断下载,最一开始我并不能意识到哪出了问题,毕竟我的网络环境一直是不错的。所以就进行了多次重试,方法简单粗暴,同样也非常浪费时间,毕竟看上去好像需要安装大大小小百八十个依赖,每次重试,系统都要进行半天检查。

最一开始,我尝试使用wget -c命令重启下载,没想到跟重新安装的效果是一样的,当然,后来发现也有可能是笔者的方法不对,这个会在下文说到,也欢迎大家来交流。

后来一想,这么下去总归不是办法,于是笔者根据系统指令界面中的提示,打开了这个下载总是中断的.whl依赖文件,将其粘贴到浏览器中,果然是个下载链接,浏览器自动开始下载这个.whl文件了。

后来也发现,可能也的确是这个文件下载路径的问题,即使是在浏览器中下载,这个依赖文件的下载也总是中断,好在浏览器的下载文件时,遇到这种情况再点一下下载按钮也就好了,在疯狂点击很多次重新下载后,总算将这个五百多MB的依赖文件下载完成了。

之后就是手动安装,进入到whl文件所在文件路径下打开终端,运行pip install 文件名.whl命令,进行依赖的手动安装即可。安装此依赖时,发现还有一个前置依赖需要安装,不要慌,同样的方法下载这个前置依赖然后安装即可。

回过头来,这个难缠的whl依赖文件安装完成后,再重新运行pip install modelscope指令安装modelscope核心框架,系统自动检验,发现安装好了,便跳过这个依赖,去下载安装其他依赖去了,直到全部安装完成。

**04

解决方案**

第一个解决方案:断点续传

笔者对Linux的操作还不太熟练,在遇到以上多个依赖中有一个依赖死活安装不了的情形时,或许也是wget -c命令重启下载用错了方法,后来看到一篇文章的叙述是这样的:

如果是大文件下载,则可能会在某些时候停止下载,在这种情况下,我们可以使用-c选项恢复从上次取消下载的文件。 但是,当您不指定-c选项而开始下载文件时,wget会在文件末尾添加.1扩展名,视为全新下载。 因此,在下载大文件时,最好添加-c参数选项。

(以上信息来源于知乎)

这个笔者并没有亲身尝试,所以这个试验性的问题就留给大家慢慢测试吧!

第二个解决方法:手动安装

在上文已经提到了操作方法,此处不赘述。虽然听起来比较笨,不过也不太费劲,毕竟也就是解决中间一两个文件下载中断的问题。

另外这种方式应该也是比较釜底抽薪,比较接近根本的解决方式了,遇事不决时,最朴实无华的方式往往最有效!

**05

图书推荐**

本次推荐一本由埃森哲出品,巴斯卡尔·戈什等专家编著的《自动化进阶·人工智能产业化应用》书籍。大模型技术在不断高速发展,然而与之匹配的落地应用却还没有跟上脚步,现象级的爆品也还基本没有出现。

虽然本书并没有具体的应用场景和落地细节,但以一个战略级的维度,提供了很多有价值的指导思想,建议一读!

同时,对于刚入门人工智能产品经理的同学,建议也可以从一些较为基础的书籍看起

相关文章
|
3天前
|
Oracle Java 关系型数据库
Linux环境安装配置JDK11
Linux环境安装配置JDK11
21 0
|
19天前
|
安全 Ubuntu Java
Linux配置使用篇
Linux配置使用篇
|
1月前
|
存储 负载均衡 索引
linux7安装elasticsearch-7.4.0集群配置
linux7安装elasticsearch-7.4.0集群配置
113 0
|
1月前
|
存储 Shell Linux
【Shell 命令集合 系统管理 】Linux 修改用户的属性和配置 usermod命令 使用指南
【Shell 命令集合 系统管理 】Linux 修改用户的属性和配置 usermod命令 使用指南
35 1
|
19天前
|
网络协议 Linux
在Linux中,管理和配置网络接口
在Linux中管理网络接口涉及多个命令,如`ifconfig`(在新版本中被`ip`取代)、`ip`(用于网络设备配置)、`nmcli`(NetworkManager的CLI工具)、`nmtui`(文本界面配置)、`route/ip route`(处理路由表)、`netstat/ss`(显示网络状态)和`hostnamectl/systemctl`(主机名和服务管理)。这些命令帮助用户启动接口、设置IP地址、查看连接和路由信息。不同发行版可能有差异,建议参考相应文档。
19 4
|
3天前
|
Ubuntu Linux
Linux(Ubuntu)系统临时IP以及静态IP配置(关闭、启动网卡等操作)
请注意,以上步骤是在临时基础上进行配置的。如果要永久保存静态IP地址,通常还需要修改 `/etc/network/interfaces`文件,以便在系统重启后保持配置。同时,确保备份相关配置文件以防止出现问题。
15 1
|
4天前
|
存储 监控 中间件
Linux双机热备解决方案之Heartbeat
Linux双机热备解决方案之Heartbeat
|
5天前
|
Ubuntu Linux 测试技术
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试(下)
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试
35 1
|
5天前
|
运维 网络协议 Linux
Linux(28) Linux双网卡配置为连接到Linux主机的PC提供外网访问
Linux(28) Linux双网卡配置为连接到Linux主机的PC提供外网访问
33 1
|
5天前
|
Ubuntu Linux 开发工具
WSL2(3)安装Linux headers完美解决方案
WSL2(3)安装Linux headers完美解决方案
5 0

热门文章

最新文章