目录
Node 环境
nvm 安装 node
不要下载 Node 安装包直接安装,由于各项目支持的 Node 版本不一定相同,老旧有兼容性问题,使用 node 版本管理工具 nvm 可以安装多版本 node,方便管理与切换。
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.6/install.sh | bash在当前窗口使 node 路径生效,重新加载执行:
source ~/.bashrc检查 nvm 是否安装成功:
nvm --version # 0.40.6根据需要安装 node 版本,不确定的话,目前推荐安装 Node 24 LTS:
nvm install 24查看安装列表
nvm ls安装更多版本,例如 22
nvm install 22当前是 22 版本,需要切回 24
nvm use 24 # nvm use node or nvm use stable,因为 24 是最新稳定都指向了它们检查:
node -v
npm -vnvm use xx 只是在当前窗口临时改变 node 版本,每次新开窗口 node 版本是指定的 default 版本,默认是 24,如果需要其他,可以修改指定,例如默认改成 22 :
nvm alias default 22这样,每次打开都是你想要的 node 版本了。
corepack 安装 pnpm
现在很多项目例如 Next.js 都开始使用 pnpm。新项目推荐使用 pnpm。
原因:
- 极大节省空间,多个项目依赖同一个版本的包,只在全局下载一份,可以避免 node_modules 俏俏蚕食你的硬盘空间
- 速度快很多,由于多项目共享包,不用重复下载
- 减少依赖问题,由于对于依赖书写要求更严格
如果需要团队协作,建议使用 corepack 代理 pnpm。 corepack 是 node 从 14.19.0 到 24 版本默认带的,25 后可能不再默认集成在 node 里。
corepack 是用来管理 pnpm、yarn 多版本的工具,例如项目指定 pnpm 版本,输入 pnpm install 安装时,corepack 会检查是否安装指定版本,如果没有会提示你下载指定版本。
查看 node 是否自带 corepack
corepack --version如果没有 corepack,需要先卸载 pnpm、yarn,再安装 corepack 让其代理 yarn、pnpm 命令行工具
npm uninstall -g yarn pnpm
npm install -g corepack
# 更新到最新版本
npm install -g corepack@latest这里举个例子,你的项目中的 package.json,设置了如下字段
{
"packageManager": "[email protected]"
}corepack enable # 开启 corepack 代理
pnpm install提示你下载指定版本
! Corepack is about to download https://registry.npmjs.org/pnpm/-/pnpm-10.14.0.tgz
? Do you want to continue? [Y/n]输入 Y 后,会下载安装指定的 pnpm,并把项目的依赖装好
查看版本
pnpm -v # 显示 10.14.0pnpm 会把包安装在特殊目录,进行管理,避免不同项目之间相同的包,多次下载,占用空间。查看 pnpm 存储目录:
pnpm store path # ~/.local/share/pnpm/store查看包占用硬盘大小
du -sh $(pnpm store path)清理无用包,会删除当前没有任何项目引用的包:
pnpm store prune跳出当前项目目录,再查看
cd ..
pnpm -v提示你安装最新版本
! Corepack is about to download https://registry.npmjs.org/pnpm/-/pnpm-11.18.0.tgz
? Do you want to continue? [Y/n] Y这次,输入 Y ,相当与在全局安装了最新版本。切回项目目录,依然是项目指定版本
pnpm -v # 显示 11.18.0
cd - # 切换刚才项目目录
pnpm -v # 显示 10.14.0pnpm 多版本会下载在如下目录
~/.cache/node/corepack清空所有下载的 pnpm,执行 pnpm 命令会再次提醒下载安装
corepack cache clean以实际 Ubuntu-24.04 为例
WSL Ubuntu
~/.cache/node/corepack
|
└── pnpm 10.14.0
└── pnpm 11.18.0
~/.local/share/pnpm/store
|
└── React / Next / AI 前端依赖缓存
项目目录
|
└── node_modules
(链接)
如果不想使用 corepack,仅考虑个人日常使用,可以简单点如下安装:
npm install -g pnpmPython 环境
Ubuntu 自带 Python:
检查:
python3 --version # 3.12.3安装 python 包管理器 uv
uv(Python 世界的 pnpm,一个工具替代 pip + venv + pip-tools + poetry)
uv 非常适合管理 Python 包:
FastAPI- AI API
- 自动化脚本
安装:
curl -LsSf https://astral.sh/uv/install.sh | sh在当前窗口使 uv 路径生效,重新加载执行:
source ~/.bashrc检查:
uv --version创建 Python 项目:
mkdir python-test
cd python-test
uv init安装依赖:
uv add requests # 安装在 项目目录 .venv/lib/pythonX.XX 下面新建 main.py 文件
import requests
print(requests.__version__)运行:
uv run main.py以后简单的 Python 项目,不要:
pip install xxx推荐做项目隔离,例如新建项目,需要使用新的 python 版本
# 系统默认 3.12.3
uv venv --python 3.12.0Using CPython 3.12.0
Creating virtual environment at: .venv
Activate with: source .venv/bin/activate会下载 python 3.12.0 到以 ~/.local/share/uv/python 目录,查看安装 python 多版本情况
uv python list当前命令行窗口,改为项目 python 版本,执行:
source .venv/bin/activate
python3 --version # 3.12.0可以查看 uv python 命令行更多细节
uv pythonAI 深度学习 Python 环境
对于普通 Python 包:
- numpy
- pandas
- requests
uv 足够,但是 AI 库
- PyTorch
- CUDA
- cuDNN
- OpenCV
- TensorRT
涉及:python -> C++ -> CUDA -> GPU Driver,这就是 Conda 擅长的了,
Conda 不仅擅长 Python 包管理,并且擅长管理复杂的二进制依赖:
- Python版本
- C/C++库
- CUDA相关依赖
- 系统库
Conda 版本演变
- Anaconda :大而全的 Conda 发行版本,零配置,开箱即用,但有些包你未必需要,浪费磁盘空间
- Miniconda :精简版 Conda,依赖解析速度慢,官方包渠道有版权问题
Conda-forge :社区渠道,其中的包开源免费,解决了包版权不清的问题
Miniforge + Mamba
Miniforge = Miniconda + 默认的社区 Conda-forge 渠道 + 默认高速依赖解析器 Mamba。Miniforge 解决了以下问题
- 臃肿问题:Miniforge 本质是轻量版的 Conda,预安装包小,轻量
- 版权问题:默认使用 conda-forge 社区开源,没有版权问题
- 解析依赖慢的问题:默认使用 Mamba
- Mamba C++ 使用业界顶尖解析器 libsolv 重写用来替代 Conda 解析器
- Manba 多线程下载,比 Conda 单线程下载,能充分利用宽带提速
- Manba 完全兼容 Conda
AI 生态兼容性极佳,完美支持 PyTorch、CUDA 等底层复杂依赖,几乎不会遇到找不到包或安装报错的问题。
推荐个人学习研究,跑 AI 时使用。
uname # Linux
uname -m # x86_64下载 Miniforge 安装脚本:
curl -L -O "https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-$(uname)-$(uname -m).sh"执行脚本:
bash Miniforge3-$(uname)-$(uname -m).sh- Enter 键查看协议
- 看完后同意协议输入 yes
- 提示默认装在 ~/miniforge3 目录,Enter 确定
- 提示 Conda 初始化,输入 yes
使得 Conda 生效:
source ~/.bashrc检查:
conda --version # conda 26.3.2查看 Conda 初始化详细信息
conda info默认每次进入 WSL 都会激活 Conda base 环境,命令行用户名前面会有 (base) 提示,如果不喜欢可以取消
conda config --set auto_activate_base false需要时,再激活
conda activate查看渠道,默认只有 conda-forge
conda config --show channels
# channels:
# - conda-forge如果有多渠道,可以开启严格优先级,优先从开源免费社区 conda-forge 获取,避免版权问题
conda config --set channel_priority strict改用 mamba 比 conda 会快很多
mamba --version
mamba deactivate
mamba activate
mamba install numpy
# 替代 conda
conda deactivate
conda activate
conda install numpypixi
pixi 和 uv 合作,使用 uv 的依赖解析器,Rust 编写,速度比 Miniforge 更快。适合
- 追求极致的安装和切换速度的用户
- 团队开发完整的 AI 工程项目,需要团队共享一致的依赖版本(锁定
pixi.lock),环境复现极其精准,开发体验类似 npm
了解即可,生态发展稳定后,可以考虑使用。
至此,Windows 上一个基础的 AI 开发环境就搭建完毕,开始 Coding 吧。



