企业可商用的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.pswp.cn/diannao/95546.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/95546.shtml

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

相关文章

Flutter ExpansionPanel组件(可收缩的列表)

可以展开或者收缩的面板组件&#xff0c;收缩面板组件效果由ExpansionPanelList组件和ExpansionPanel组件共同完成。 ExpansionPanelList属性说明属性说明children子元素expansionCallback设置回调事件ExpansionPanel属性说明headerBuilder收缩的标题body内容isExpanded设置内容…

C/C++ 进阶:深入解析 GCC:从源码到可执行程序的魔法四步曲

引言距离上一篇博客更新已经过去了大概一两周的时间&#xff0c;而对于 Linux 系统的基本指令以及 Shell 编程的学习其实基本讲解完毕&#xff0c;Linux基础一块的知识就将告一段落了&#xff0c;如果有细节性的知识&#xff0c;我也会及时分享给各位&#xff0c;作为一名正在攀…

云服务器运行持续强化学习COOM框架的问题

1 环境要求 下载地址&#xff1a;https://github.com/TTomilin/COOM tensorflow 2.11以上 python 3.9以上 tensorflow2.12.0&#xff0c;需要安装tensorflow-probability0.19 2 修改代码 COOM/wrappers/reward.py 将 from gym import RewardWrapper修改为 from gymnasium impor…

MyBatis Interceptor 深度解析与应用实践

MyBatis Interceptor 深度解析与应用实践 一、MyBatis Interceptor概述 1.1 什么是MyBatis Interceptor MyBatis Interceptor&#xff0c;也称为MyBatis 插件&#xff0c;是 MyBatis 提供的一种扩展机制&#xff0c;用于在 MyBatis 执行 SQL 的过程中插入自定义逻辑。它类似…

【自动化测试】Web自动化测试 Selenium

&#x1f525;个人主页&#xff1a; 中草药 &#x1f525;专栏&#xff1a;【Java】登神长阶 史诗般的Java成神之路 测试分类 了解各种各样的测试方法分类&#xff0c;不是为了墨守成规按照既定方法区测试&#xff0c;而是已了解思维为核心&#xff0c;并了解一些专业名词 根…

2025 电赛 C 题完整通关攻略:从单目标定到 2 cm 测距精度的全流程实战

摘要 2025 年全国大学生电子设计竞赛 C 题要求“仅用一颗固定摄像头”在 5 s 内完成 100 cm~200 cm 距离、误差 ≤2 cm 的单目测距&#xff0c;并实时显示功耗。本文整合国一选手方案、CSDN 高分博文、B 站实测视频及官方说明&#xff0c;给出从硬件选型→离线标定→在线算法→…

Day 10: Mini-GPT完整手写实战 - 从组件组装到文本生成的端到端实现

Day 10-2: Mini-GPT完整手写实战 - 从组件组装到文本生成的端到端实现 📚 今日学习目标 掌握GPT架构组装:将Transformer组件组装成完整的生成模型 理解生成式预训练:掌握自回归语言建模的核心机制 端到端代码实现:从数据预处理到模型训练的完整流程 文本生成实战:训练Mi…

深入解析Prompt缓存机制:原理、优化与实践经验

深入解析Prompt缓存机制&#xff1a;原理、优化与实践经验 概述 在大型语言模型应用中&#xff0c;API请求的延迟和成本始终是开发者关注的核心问题。Prompt缓存&#xff08;Prompt Caching&#xff09;技术通过智能地复用重复内容&#xff0c;有效减少了API响应时间和运行成本…

CV 医学影像分类、分割、目标检测,之【3D肝脏分割】项目拆解

CV 医学影像分类、分割、目标检测&#xff0c;之【3D肝脏分割】项目拆解第1行&#xff1a;from posixpath import join第2行&#xff1a;from torch.utils.data import DataLoader第3行&#xff1a;import os第4行&#xff1a;import sys第5行&#xff1a;import random第6行&a…

Mybatis学习笔记(七)

Spring Boot集成 简要描述&#xff1a;MyBatis-Plus与Spring Boot的深度集成&#xff0c;提供了自动配置、启动器等特性&#xff0c;大大简化了配置和使用。 核心概念&#xff1a; 自动配置&#xff1a;基于条件的自动配置机制启动器&#xff1a;简化依赖管理的starter配置属性…

机器人伴侣的智能升级:Deepoc具身智能模型如何重塑成人伴侣体验

引言&#xff1a;机器人伴侣市场的技术变革需求随着人工智能技术的飞速发展和人们情感需求的多元化&#xff0c;机器人成人伴侣市场正在经历前所未有的增长。传统机器人伴侣已经能够满足基础的交互需求&#xff0c;但在智能化、情感化和个性化方面仍存在明显不足。这正是深算纪…

metabase基础使用技巧 (dashboard, filter)

这是metabase系列分享文章的第2部分。本文将介绍metabase的基础概念和使用介绍 question question是metabase中提供的通过UI化操作就能实现简单的 快捷 直接的BI查询。 点击右侧的New -> Question即可创建Question&#xff0c;可以理解为一个格式化的查询&#xff1a; 这里…

机器人成人伴侣的智能化升级:Deepoc具身模型赋能沉浸式体验

引言&#xff1a;成人机器人市场的技术革新需求随着人工智能和机器人技术的快速发展&#xff0c;成人陪伴机器人行业正经历从简单机械运动到智能化交互的转型。据市场研究数据显示&#xff0c;全球成人机器人市场规模预计将在2026年突破100亿美元&#xff0c;年复合增长率保持在…

Go语言企业级权限管理系统设计与实现

最近跟着学长再写河南师范大学附属中学图书馆的项目&#xff0c;学长交给了我一个任务&#xff0c;把本项目的权限管理给吃透&#xff0c;然后应用到下一个项目上。 我当然是偷着乐呐&#xff0c;因为读代码的时候&#xff0c;总是莫名给我一种公费旅游的感觉。 本来就想去了解…

Java应用快速部署Tomcat指南

将Java应用部署到Apache Tomcat服务器是开发Web应用过程中常见的任务。Tomcat是一个免费且开源的Servlet容器,它为Java应用提供了运行环境。本文将介绍如何准备你的Java应用,并将其部署到Tomcat服务器上。 Java 应用部署 tomcat 的根目录结构 Tomcat中默认网站根目录是$CAT…

Java 学习笔记(基础篇2)

1. 分支结构① if 语句&#xff1a;(1) 双分支&#xff1a;if (条件) {// 语句体1 } else {// 语句体2 }(2) 多分支if (条件1) {// 语句体1 } else if (条件2) {// 语句体2 } else {// 语句体N }② switch 语句&#xff1a;(1) 语法&#xff1a;如果都不是&#xff08;default&…

谷歌云代理商:用 AI 启航,Gemini 重塑旅游酒店行业新体验

本文由谷歌云谷歌地图官方授权代理商、高级合作伙伴 CloudAce云一 整理发布。谷歌云谷歌地图在中国授权代理商名单&#xff1a;Cloud Ace云一&#xff0c;全球20分公司&#xff0c;国内核心城市多个据点&#xff0c;谷歌云与谷歌地图代理商、顶级合作伙伴&#xff08;Premier P…

springboot+vue实现通过poi完成excel

前端1、按钮<el-buttontype"text"size"mini"click"handleExport">导出</el-button>2、方法//导出async handleExport() {if (!this.activityId) {this.$message.warning(活动ID不存在);return;}try {this.loading true;const res …

JMeter性能测试详细版(适合0基础小白学习--非常详细)

01性能测试的概念 02性能测试的概念 基准测试 负载测试 稳定性测试 其他&#xff1a;并发测试、压力测试、回归测试等 压力测试就是在系统强负载的情况下&#xff0c;是否会出现功能隐患问题&#xff0c;出现问题后是否可以尽快恢复 负载测试和压力测试的区别: 1,核心目标不…

QT6(创建第一个QT项目)

编写第一个QT项目 QT官网 安装完QT后的界面 创建第一个项目 这里我们选择第一个就好 下一步 下一步 选择CMake&#xff0c;QMake是QT的CMAKE&#xff08;现在官方自己都不推荐了&#xff09; 下一步 选择QWidget我们先创建一个最简单的窗口程序 QMainWindow&#xff1a;主窗…