大家好,我是老赵,一名程序员老兵,平时主要从事企业级应用开发,最近打算从零学习、并落地一套完整的RAG检索增强生成系统。不搞虚头理论,全程边学边做,把遇到的问题、踩过的坑、能直接跑通的代码,全都真实记录下来。
本系列适合:想从零上手RAG、落地本地知识库、厌倦了纸上谈兵的开发者。后续会持续更新,最终整理成完整教程+源码+部署手册
一、今日目标
- 确定技术栈与稳定版本
- 基于Miniconda搭建RAG专属开发环境
- 安装核心依赖
- 验证所有依赖正确安装
二、技术选型与版本
我直接选用稳定、企业常用的组合,不追新:
- Python:3.10.12
- Python环境管理工具:miniconda3(安装包管理器)
- 向量数据库:Milvus(后续用Docker部署)
- 开发框架:LangChain
- Embedding模型:bge-m3
三、环境搭建步骤
- 安装miniconda3(Windows平台)
- 下载miniconda3安装包:官网下载地址、国内镜像下载(推荐,速度快)
- 双击下载的exe文件,安装到指定目录,如:d:\miniconda3,尽量避免使用C盘
- 验证是否安装成功:在cmd中输入:conda --version命令,如果显示版本号如:conda 24.11.3,说明安装成功了。
- 配置国内源,加快下载速度
- 打开「此电脑」,进入用户目录(如C:\Users\你的用户名)
- 新建文本文档,重命名为.condarc(注意:前缀有.,删除默认的.txt后缀,若看不到后缀,先开启「显示文件扩展名」)
- 打开.condarc文件,复制以下内容到.condarc,并保存:
channels: - defaults show_channel_urls: true default_channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2 custom_channels: conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud- 清除缓存并验证源是否生效
conda clean -i conda config --show-sources
- 为pip配置国内源
由于有些库在conda源中可能版本较旧,我们需要使用pip安装最新版本的依赖。为了加快下载速度,我们也需要为pip配置国内源。在cmd中,运行以下命令:
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
pip config set install.trusted-host mirrors.aliyun.com
- 创建并激活虚拟环境
conda create -n rag-env python=3.10.12
conda activate rag-env
- 安装基础依赖
pip install langchain==0.2.14 langchain-core==0.2.35 langchain-community==0.2.12 pymilvus==2.6.9 sentence-transformers==5.2.2
避坑
- 一开始我指定pymilvus的版本为2.3.7,但是在做下面的import验证时,出现下图所示的找不到pkg_resources的错误,当指定版本为2.6.9时,问题顺利解决。
四、验证基础依赖正确安装
- 打开Python交互环境
在激活的虚拟环境中执行:
python
- 逐行导入核心包并打印版本
# 验证 langchain
import langchain
print("langchain version: ", langchain.__version__)
# 验证 langchain_core
import langchain_core
print("langchain-core version:", langchain_core.__version__)
#验证 langchain-community
import langchain_community
print("langchain-community version:", langchain_core.__version__)
# 验证 pymilvus
import pymilvus
print("pymilvus version:", pymilvus.__version__)
# 验证 sentence-transformers
import sentence_transformers
print("sentence-transformers version:", sentence_transformers.__version__)
- 验证成功的输出示例
langchain version: 0.2.14
langchain-core version: 0.2.35
langchain-community version: 0.2.35
pymilvus version: 2.6.9
sentence-transformers version: 5.2.2
- 退出Python交互环境:执行exit()即可
五、明日计划
用Docker部署Milvus向量数据库,继续实战。
我是老赵,一名程序员老兵,全程真实记录RAG从零搭建全过程。本系列会持续更新,最后整理成完整视频教程+源码+部署手册。
关注 老赵全栈实战,不迷路,一起从0落地RAG系统。