当前位置: 首页 > news >正文

企业可商用的conda:「Miniforge」+「conda-forge」

文章目录

  • 一、彻底卸载现有 Anaconda/Miniconda
  • 二、安装 Miniforge(推荐)
    • macOS/Linux检查
    • Windows检查
  • 三、将通道固定为 conda-forge(严格优先)
  • 四、验证是否仍引用 Anaconda 源
  • 五、常见问题(FAQ)
  • 六、参考命令清单(便捷复用)

🍃 作者介绍:25届双非本科网络工程专业,阿里云专家博主,专注于 AI 原理、AI 应用开发、AI 产品设计。大学期间具备扎实的 Java 后端基础,现任 AI 工程师。
🦅 个人主页:@逐梦苍穹
🌻 Gitee 地址:xzl 的人工智能代码仓库
✈ 您的一键三连,是我持续创作的最大动力 🌹

在这里插入图片描述
先说结论(适用于企业/商用环境)

  • Anaconda(defaults 源)不能免费商用:在公司/商业场景下使用 Anaconda 的默认源通常需要付费许可。
  • Miniconda + conda-forge 能用,但要彻底移除 defaults,并避免在 base 开发:否则仍可能触发 Anaconda 许可风险。
  • 最稳妥方案:Miniforge + conda-forge:安装即默认使用 conda-forge,规避 defaults,合规且轻量。

简单理解:不是“conda 这款工具”收费,而是“使用 Anaconda/Defaults 源的二进制分发”涉及商业许可;改用 conda-forge 社区源即可规避许可问题。


一、彻底卸载现有 Anaconda/Miniconda

目标:清掉默认源、配置与 shell 残留,避免后续“误连 defaults”。

  1. 查看 conda 安装路径(含各环境)
conda info --base
  1. 删除用户侧配置与缓存
rm -rf ~/.condarc ~/.conda ~/.continuum
  1. 清理 shell 初始化残留

~/.bashrc~/.bash_profile~/.zshrc 中搜索并删除与 conda initanaconda 相关的初始化片段,保存后重新加载:

source ~/.zshrc   # 或 source ~/.bashrc
  1. Windows 清理(如之前安装过 Anaconda/Miniconda)
  • 通过“应用和功能”卸载 Anaconda/Miniconda。
  • 删除用户目录:C:\\Users\\<你的用户名>\\.condaC:\\Users\\<你的用户名>\\.continuumC:\\Users\\<你的用户名>\\.condarc(若存在)。
  • 检查“环境变量”中与 Anaconda/Miniconda 相关的 Path 条目并移除。

二、安装 Miniforge(推荐)

Miniforge 默认只使用 conda-forge,装好即合规、可商用。

  • 发布页(选择你的平台与架构):
    https://github.com/conda-forge/miniforge/releases

无法访问的同学可以一键三连后私信,我发离线安装包给你 🌹

macOS/Linux检查

conda list --show-channel-urls | grep -v "^#" | awk '{print $4}' | sort | uniq -c

在这里插入图片描述

Windows检查

conda list --show-channel-urls | Where-Object {$_ -notmatch '^#'} | ForEach-Object {($_ -split '\s+')[3]} | Sort-Object | Group-Object | Select-Object Count,Name

在这里插入图片描述
到这里,「Miniforge」+「conda-forge」的安装就已经完成了!因为「Miniforge」默认的就是「conda-forge」源


三、将通道固定为 conda-forge(严格优先)

如果你此前用过 Miniconda,请务必执行本小节以彻底规避 defaults。

# 移除 defaults(如不存在会提示,无妨)
conda config --remove channels defaults || true# 仅使用 conda-forge,并设置严格优先级
conda config --add channels conda-forge
conda config --set channel_priority strict# 查看当前配置
conda config --show | sed -n '/channels:/,/^$/p'

建议:不要在 base 环境中开发,创建独立环境更干净:

conda create -n ai python=3.11 -y
conda activate ai

四、验证是否仍引用 Anaconda 源

下面的命令会统计当前环境中每个包来自哪个 channel,方便确认是否“纯 conda-forge”。

macOS/Linux:

conda list --show-channel-urls | grep -v "^#" | awk '{print $4}' | sort | uniq -c

Windows:

conda list --show-channel-urls | Where-Object {$_ -notmatch '^#'} | ForEach-Object {($_ -split '\s+')[3]} | Sort-Object | Group-Object | Select-Object Count,Name

若输出仅包含 conda-forge,说明你的环境是合规的;若还出现 defaults/anaconda,请返回第三节重新清理并创建新环境。


五、常见问题(FAQ)

  • Q:Miniconda + conda-forge 能不能商用?
    A:可以,但务必移除 defaults,并新建环境后再安装依赖。历史 base 或旧环境中若残留来自 defaults 的包,仍可能存在许可风险。更稳妥的做法是直接使用 Miniforge

  • Q:为什么不在 base 环境开发?
    A:base 常被用于初始化与管理,历史上最容易“混入” defaults 包。独立环境可保证依赖与渠道的可控性与可复现性。

  • Q:国内下载慢怎么办?
    A:可配置 conda-forge 的国内镜像(如清华镜像站),并保持 channel_priority strict,避免回落到 defaults。

  • Q:已有项目如何迁移?
    A:导出依赖、切换通道、重建环境:

    conda env export --from-history > env.yml
    # 按第三节配置通道为 conda-forge 后
    conda env create -n ai-new -f env.yml
    conda activate ai-new
    

六、参考命令清单(便捷复用)

# 卸载相关(macOS/Linux)
conda info --base
rm -rf ~/.condarc ~/.conda ~/.continuum# Miniforge 安装(示例)
curl -LO https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-MacOSX-arm64.sh
bash Miniforge3-MacOSX-arm64.sh -b -p $HOME/miniforge3
source "$HOME/miniforge3/bin/activate" && conda init zsh && exec $SHELL# 仅使用 conda-forge(严格优先)
conda config --remove channels defaults || true
conda config --add channels conda-forge
conda config --set channel_priority strict# 创建与使用环境
conda create -n ai python=3.11 -y
conda activate ai

需要完整安装包,可在评论区或私信交流。也欢迎一键三连支持创作!

http://www.dtcms.com/a/331938.html

相关文章:

  • Data Augmentation数据增强
  • 快速部署一个鉴黄服务
  • Android 项目:画图白板APP开发(二)——历史点、数学方式推导点
  • SQL详细语法教程(三)mysql的函数知识
  • 区块链 + 域名Web3时代域名投资的新风口(上)
  • Gemma 3 多模态推理 通过vllm运行Gemma-3-27B-IT模型的推理服务
  • 【系统安装】虚拟机中安装win10IOT企业版系统记录
  • 解决安装 scikit-learn==1.3.1 时出现的版本匹配错误
  • PHP 开发全解析:从基础到实战的进阶之路
  • sFlow原理与配置
  • Java面试场景题大全精简版
  • MySql——聚簇索引(主键索引)和非聚簇索索引(非主键索引)引区别(即聚集索引和非聚集索引区别)
  • MyBatis学习总结(六)
  • 【面板数据】各省及市省级非物质文化遗产数据合集(2005-2024年)
  • 《嵌入式 C 语言编码规范与工程实践个人笔记》参考华为C语言规范标准
  • 解锁 Docker:一场从入门到源码的趣味解谜之旅
  • 卸载python遇到msi文件权限不足
  • Python闭包详解:理解闭包与可变类型和不可变类型的关系
  • 新手如何高效运营亚马逊跨境电商:从传统SP广告到DeepBI智能策略
  • docker 容器管理入门教程
  • 身份全景图
  • Encoder-Decoder Model编码器-解码器模型
  • 【学习笔记】Java并发编程的艺术——第4章 Java并发编程基础
  • CMake笔记:Alias Target在哪些地方可以使用
  • 傅里叶变换+attention机制,深耕深度学习领域
  • shellgpt
  • Linux计划任务
  • 当GitHub宕机时,我们如何协作?
  • nginx入门需知(含安装教程)
  • OpenCV图像注册模块