百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

python编程实践:mamba加速神器,体验飞一般的感觉

itomcoil 2025-01-20 13:53 14 浏览

如果你使用anaconda3环境,一定是使用conda管理下载Python package、构建环境。下载慢,我就设置国内的源,修改过来修改过去,就是很慢。继续检查,明明设置了国内源,依旧很慢,很慢,很慢......

可恶的转圈~~~等待~~~~

conda好不容易solving结束开始下载包,然后发现龟速。慢慢的等待,然后呢,又检查出来一大堆的包之间的冲突,继续,我睡着了,第二天一看,conda自己退出了,依然没有安装好。是不是非常痛苦,我都要摔键盘了。

是不是很抓狂,有过类似经历,文末点个赞或在看。

用了mamba,我欣喜如狂,软件包秒装秒删。本来装conda的一个需求是创建分隔的虚拟环境,但是conda每次操作慢得要死,实际上根本懒得用,装软件包都用pip搞定,有时即使用pip,有些包就是安装搞不定,我的天呀~~~和谁去讲理去。最后搞成了一个非常庞大的base环境,依赖冲突时有发生。换了mamba后,完全平替conda,无缝衔接管理已有的conda环境,一切都那么丝滑。


高效Python包管理器mamba

  • 自带多线程下载下载?repository data和packages;
  • mamba使用??libsolv加速解决依赖关系?? (安装过程中Solving environment:转圈圈的时间);
  • Mamba的核心部分是通过C++实现,以获得最大执行效率;
  • 最重要的是??Mamba可与conda完美兼容,学习成本极小?? (将conda执行命令中的conda换做mamba即可)。

mamba与conda使用区别

下面就以win10环境下,安装Anaconda3-2022.05-Windows-x86_64版本进行阐述,版本或环境不一致,或许有些区别,有不明白的地方可以留言讨论。

(1)conda或conda --h 帮助内容

(2)mamba或mamba --h 帮助内容

仔细比较一下,几乎完全一样,所以用过conda,mamba几乎不用学习就可使用。

mamba命令

  • mamba命令大全命令:mamba 或 mamba --h
  • mamba查看环境命令:mamba info --envs
  • mamba激活环境命令:mamba activate MyEnvs(mamba activate <envs-name>)
  • mamba创建环境命令:mamba create -n MyEnvs(mamba create -n <envs-name>)
  • mamba包的安装命令:mamba install package(mamba install <package-name>)
  • mamba包的卸载命令:mamba uninstall package(mamba uninstall <package-name>)

mamba安装

在Anaconda Prompt(anaconda3)环境下,就可以安装好了。

conda install mamba -c conda-forge

安装mamba的坑

安装上面的命令安装mamba,如果在base环境里,因为base环境已经预装了400多个包,导致极有可能安装不成功,这个是我踩过的坑~~~。既然conda是管理环境,我首先建立一个虚拟环境,然后第一个包就安装mamba。步骤如下:

(1)建立python3.9虚拟环境,当然也可以建立python2.7等其他版本的虚拟环境。
conda create --name python39 python=3.9
 (2)切换到python39环境
conda activate python39
(3)安装mamba加速安装程序,完全替代conda,使用通道 -c conda-forge  
conda install mamba -c conda-forge

安装完后,就可以使用mamba进行包packages的安装和管理了。

需要指出的,安装包时,最好后面指明安装通道-c conda-forge,这样会加快安装速度,并且提高快速找到安装包的效率。不指明安装通道,有时安装不成功,这个也是我踩过的另外一个坑。下面给一个安装例子:

mamba install cartopy -c conda-forge

最后,由于平台规则,只有当您跟我有更多互动的时候,才会被认定为铁粉。如果您喜欢我的文章,可以点个“关注”,成为铁粉后能第一时间收到文章推送。

相关推荐

Python高效数据处理——从基础方法到性能优化

数据处理是数据分析的核心环节,高效的数据处理方法能显著提升代码性能。本文将深入介绍Pandas中的各种数据处理技术,并分析它们的性能特点。使用apply方法应用自定义函数apply是Pandas中最灵...

正态分布-置信区间计算(正态90%置信区间)

统计学有两大主要分支,分别是描述性统计学和推断统计学。描述性统计学用于描述和概括数据的特征以及绘制各类统计图表。总体数据,往往因为数据量太大而难以被获取,所以就有了通过较小的样本数据推测总体特性的推断...

一篇文章搞定人工智能之深度学习创建训练数据集的方法

基础数据准备训练所需要的数据集合都存储在数据库中,还有部分文本文件首先对数据进行分类结构化存储[因为涉及到的是多分类问题]整理并存储原始数据集使用numpy将所有需要数据读取出来splitlines(...

向量搜索之 k-means 算法(annoy向量检索)

一直好奇向量数据库的索引是如何实现的,我们可以推断向量搜索的简单实现:把数据存入向量数据库时,会计算每个分段文档的向量(文档向量),然后把分段文档和文档向量同时存入向量数据库。从向量数据库中搜索文档时...

融合贝叶斯生存模型与Transformer注意力的客户重参与策略优化

本文提出了一个集成三种核心技术的下一代智能优惠券分发系统:基于贝叶斯生存模型的重购概率预测、采用注意力机制的Transformer利润预测模型,以及用于策略持续优化的Dyna-Q强化学习代理。该系统构...

用Deepseek编写代码计算今天大乐透开奖号码

以下是一个基于Python的示例代码,用于分析大乐透历史数据并生成可能的号码组合。请务必注意:这仅是统计学模拟,无法真正预测开奖结果,所有结果均为随机性参考。代码实现步骤1.数据准备(模拟数据)假设...

拆解特斯拉L2家用充电桩:技术细节太多了

本文是对第三代特斯拉家用充电桩(L2级)的拆解分析报告。深入探究该充电桩的内部结构、设计特点、性能参数等内容。产品概述设备为第三代特斯拉家用充电桩,属于Level2充电器,是特斯拉推出的家用充电设备...

《光环5》2月更新“战锤风暴”正式推送“枪林弹雨”模式即将到来

今天(2月25日)微软和343工作室正式向Xboxone玩家推送了《光环5》的2月更新补丁“战锤风暴HammerStorm”。本次更新包括了1张全新Arena竞技场地图Torque;3个全新游戏模式...

Spring Boot(十一)Redis集成从Docker安装到分布式Session共享

一、简介Redis是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API,Redis也是技术领域使用最为广泛的存储中间件,它是「...

Mac 基于HTTP方式访问下载共享文件,配置共享服务器

方法一:使用Python的SimpleHTTPServer进行局域网文件共享Mac自带Python,所以不需要安装其他软件,一条命令即可1):进入需要共享的文件夹,如Public文件夹cd/Us...

移动端性能专项测试之 CPU(移动端cpu天梯图2020百度贴吧)

指标背景很多场景下我们去使用App,可能会碰到手机会出现发热发烫的现象。这是因为CPU使用率过高、CPU过于繁忙,会使得整个系统无法响应用户,整体性能降低,用户体验变得相当差,也容易引起AN...

如何三天学会Phyton?这篇文章教你快速编程入门

Phyton作为一门常用的语言在很多领域都有很应用,很多人都想学习这门语言,那么我们就开始从头学习这门语言吧!首先你需要在官网下载你的Phyton的编程工具,也就是下载你的解释器!登录Phyton官网...

学习Python第一天 ---Hello World

引言人生苦短,请用Python(3.+)越来越多的情况下使用Python语言进行"代码粘合"和"数据分析"变得非常方便,而且Python在"爬虫"...

mysql的MVCC多版本并发控制机制(mysql并发情况下怎么解决)

认识MVCCMVCC是英文Multi-VersionConcurrencyControl多版本并发控制的首字母简拼。在上文MYSQL事务隔离级别中,我们已经知道,在可重复读的级别下,不管其他事...

爆炸,MySQL9.0大版本发布,我严重怀疑,它是不...

MySQL在本月发布了9.0大版本,作为MySQL的忠实粉丝,简单说下这次大版本更新。1.企业版,支持JS存储程序(JavaScriptstoredprograms)了。例如,可以像这样定一个函...