Conda 是什么?
#python #2025/12/25
目录
一句话总结
Conda 是一个跨平台的包管理器和环境管理器,主要用于 Python 开发(也支持其他语言)。
作用 为不同项目创建隔离的开发环境
问题场景:为什么需要 Conda?
项目A 需要 Python 3.8 + TensorFlow 2.0
项目B 需要 Python 3.11 + TensorFlow 2.15
❌ 如果在同一个 Python 环境,会冲突!
✅ 用 Conda 创建两个独立环境,互不影响
💡 核心理解
Conda = 虚拟的"独立电脑"
每个项目有自己的:
├─ Python 版本
├─ 安装的库
└─ 配置
互不干扰,随时切换
就像:
- 不用 Conda = 所有衣服堆在一个衣柜(混乱)
- 用 Conda = 每个季节独立衣柜(整洁)
Conda vs Pip
| 特性 | Conda | Pip |
|---|---|---|
| 管理范围 | Python + 非Python库(如 CUDA) | 仅 Python 库 |
| 环境隔离 | ✅ 内置 | ❌ 需配合 venv |
| 依赖处理 | 更智能(解决版本冲突) | 基础 |
| 速度 | 较慢 | 较快 |
| 包数量 | 较少 | 更多 |
简单理解:
- Conda =
包管理 + 环境管理 + 系统库管理 - Pip = 仅包管理
常用场景
1. 数据科学/AI 开发
# 创建 AI 项目环境
conda create -n ai_project python=3.10
conda activate ai_project
conda install pytorch tensorflow pandas jupyter
2. 多项目隔离
项目结构:
├─ project_a/ (Python 3.8, Django 3.2)
├─ project_b/ (Python 3.11, Django 5.0)
└─ project_c/ (Python 3.10, Flask 2.3)
# 每个项目用独立的 conda 环境
安装方式
Anaconda(完整版,3GB+)
- 包含 Conda + 数百个预装科学计算库
- 适合:数据科学初学者
Miniconda(精简版,几百MB)
- 只包含 Conda + Python
- 需要的库自己安装
- 适合:有经验的开发者
常用命令速查
# 环境管理
conda create -n 环境名 python=3.10 # 创建环境
conda activate 环境名 # 激活环境
conda deactivate # 退出环境
conda env list # 查看所有环境
conda remove -n 环境名 --all # 删除环境
# 包管理
conda install 包名 # 安装包
conda install 包名=版本号 # 安装指定版本
conda update 包名 # 更新包
conda list # 查看已安装的包
conda search 包名 # 搜索包
# 环境导出/复制
conda env export > environment.yml # 导出环境配置
conda env create -f environment.yml # 根据配置创建环境
场景:开发 LLM 应用
# 1. 创建项目环境
conda create -n llm_app python=3.10
conda activate llm_app
# 2. 安装依赖
conda install numpy pandas
pip install openai langchain # Conda 没有的用 pip
# 3. 开发...
python my_app.py
# 4. 导出环境(方便团队协作)
conda env export > environment.yml
# 5. 团队成员复现环境
conda env create -f environment.yml
与你学习 LLM 的关系 → 为本书创建专属环境
你的学习路径:
《大模型应用开发极简入门》
↓
需要安装:
- openai
- langchain
- llama-index
- faiss-cpu
↓
最佳实践:
用 Conda 创建独立环境
避免污染系统 Python
推荐配置:
# 为本书创建专属环境
conda create -n llm_book python=3.10
conda activate llm_book
# 安装本书用到的库
pip install openai langchain llama-index faiss-cpu python-dotenv