虚拟环境与依赖管理

入门·10 分钟·通过可运行代码讲解「虚拟环境与依赖管理」,覆盖环境准备、核心代码、参数说明、异常处理、工程化改造和练习任务,适合 AI 编程入门。

虚拟环境与依赖管理

虚拟环境用于隔离项目依赖。AI 项目尤其需要它,因为不同教程、框架和模型工具对依赖版本要求可能不同。

为什么不能全局安装

如果你在全局 Python 中安装所有包,很快会遇到冲突:项目 A 需要 numpy==1.24,项目 B 需要 numpy==2.0。升级一个项目可能导致另一个项目坏掉。

创建venv环境

python -m venv .venv

激活环境:

# Windows
.venv\Scripts\activate
 
# macOS/Linux
source .venv/bin/activate

退出环境:

deactivate

确认pip位置

python -c "import sys; print(sys.executable)"
pip --version

路径应该指向当前项目的 .venv。如果不是,说明环境没有激活成功。

requirements.txt怎么用

pip freeze > requirements.txt
pip install -r requirements.txt

这是最基础的依赖复现方式。团队协作时,必须提交 requirements.txt,不要提交 .venv 目录。

.gitignore配置

.venv/
.env
__pycache__/
.ipynb_checkpoints/

这样可以避免提交虚拟环境、密钥和缓存文件。

pip和conda怎么选

venv + pip 轻量,适合大多数教程和 API 项目。Conda 更适合科学计算、GPU、复杂二进制依赖场景。初学者可以先用 venv。

小结

依赖管理的目标是让项目可复现。每个项目一个虚拟环境、依赖写入 requirements、密钥不提交、环境能从零安装,这些习惯非常重要。