From c605823567e0033391d4da9a710e3bb09ce6a05d Mon Sep 17 00:00:00 2001 From: wenyongda Date: Tue, 2 Dec 2025 17:18:52 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/_posts/PowerShell.md | 2 +- source/_posts/大模型.md | 155 ++++++++++++++++++++++++++++++++++++ 2 files changed, 156 insertions(+), 1 deletion(-) diff --git a/source/_posts/PowerShell.md b/source/_posts/PowerShell.md index 9ed629a..da0d537 100644 --- a/source/_posts/PowerShell.md +++ b/source/_posts/PowerShell.md @@ -85,7 +85,7 @@ notepad $Profile 将其内部文字改为: ```powershell -oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH/dracula.omp.json" | Invoke-Expression +oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH/montys.omp.json" | Invoke-Expression ``` # 文件 diff --git a/source/_posts/大模型.md b/source/_posts/大模型.md index 3d1d354..e73eef0 100644 --- a/source/_posts/大模型.md +++ b/source/_posts/大模型.md @@ -347,6 +347,161 @@ modelscope download --model 'Qwen/Qwen2-7b' --include '*.json' --local_dir './lo echo 'export MODELSCOPE_CACHE=/AI/modelscope/hub' >> ~/.bashrc ``` +# Code-forge + +![在这里插入图片描述](https://rustfs.wenyongdalucky.club:443/hexo/cf0364a3ad694f1d8ac6ba97e005c238.png) + +**先说结论(适用于企业/商用环境)** + +- **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 安装路径(含各环境) + + ```bash + conda info --base + ``` + +2. 删除用户侧配置与缓存 + + ```bash + rm -rf ~/.condarc ~/.conda ~/.continuum + ``` + +3. 清理 shell 初始化残留 + + 在 `~/.bashrc`、`~/.bash_profile`、`~/.zshrc` 中搜索并删除与 `conda init`、`anaconda` 相关的初始化片段,保存后重新加载: + + ```bash + source ~/.zshrc # 或 source ~/.bashrc + ``` + +1. Windows 清理(如之前安装过 Anaconda/Miniconda) + + - 通过“应用和功能”卸载 Anaconda/Miniconda。 + - 删除用户目录:`C:\\Users\\<你的用户名>\\.conda`、`C:\\Users\\<你的用户名>\\.continuum`、`C:\\Users\\<你的用户名>\\.condarc`(若存在)。 + - 检查“环境变量”中与 Anaconda/Miniconda 相关的 Path 条目并移除。 + +## 安装 Miniforge + +> Miniforge 默认只使用 conda-forge,装好即合规、可商用。 + +- 发布页(选择你的平台与架构): + `https://github.com/conda-forge/miniforge/releases` + +### macOS/Linux检查 + +```bash +conda list --show-channel-urls | grep -v "^#" | awk '{print $4}' | sort | uniq -c +``` + +![image-20251202155105034](https://rustfs.wenyongdalucky.club:443/hexo/image-20251202155105034.png) + +### Windows检查 + +```powershell +conda list --show-channel-urls | Where-Object { +$_ -notmatch '^#' +} | ForEach-Object { +($_ -split '\s+')[3] +} | Sort-Object | Group-Object | Select-Object Count,Name +``` + +![image-20251202155140771](https://rustfs.wenyongdalucky.club:443/hexo/image-20251202155140771.png) + +到这里,「Miniforge」+「conda-forge」的安装就`已经完成了`!因为「Miniforge」`默认的就是「conda-forge」源`。 + +## 将通道固定为 conda-forge(严格优先) + +> 如果你此前用过 Miniconda,请务必执行本小节以彻底规避 defaults。 + +```bash +# 移除 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` 环境中开发,创建独立环境更干净: + +```bash +conda create -n ai python=3.11 -y +conda activate ai +``` + +## 验证是否仍引用 Anaconda 源 + +> 下面的命令会统计当前环境中每个包来自哪个 channel,方便确认是否“纯 conda-forge”。 + +macOS/Linux: + +```bash +conda list --show-channel-urls | grep -v "^#" | awk '{print $4}' | sort | uniq -c +``` + +Windows: + +```powershell +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:导出依赖、切换通道、重建环境: + + ```bash + conda env export --from-history > env.yml + # 按第三节配置通道为 conda-forge 后 + conda env create -n ai-new -f env.yml + conda activate ai-new + ``` + +## 参考命令清单(便捷复用) + +```bash +# 卸载相关(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 +``` + # Anaconda >