从零开始搭建知识问答系统
好的,我给你整理一个从零开始搭建 Mini RAG 项目的详细步骤,包括你笔记本上需要安装的软件和环境:
1️⃣ 安装 Python
下载并安装Python 3.11+
官网:Python 官方下载
勾选“Add Python to PATH”
检查安装:
python --version pip --version2️⃣ 安装包管理工具(推荐 pip + virtualenv)
创建虚拟环境:
python -m venv venv激活:
Windows:
venv\Scripts\activatemacOS/Linux:
source venv/bin/activate
升级 pip:
pip install --upgrade pip3️⃣ 安装必要 Python 包
pip install fastapi uvicorn python-dotenv langchain langchain-openai faiss-cpu tiktokenfastapi:Web API 框架
uvicorn:开发服务器
python-dotenv:管理环境变量
langchain:AI 应用框架
faiss-cpu:本地向量数据库
tiktoken:OpenAI token 处理
4️⃣ 获取 API Key
注册 OpenAI 或本地 LLM 服务
在项目根目录新建
.env文件:
OPENAI_API_KEY=你的API_KEY5️⃣ 准备项目目录
mini-rag/ ├── app.py # Web接口 ├── ingest.py # 构建知识库 ├── ask.py # 命令行问答 ├── docs/ │ └── demo.txt # 示例文档 ├── vectorstore/ # 存放向量库 ├── requirements.txt └── .envdocs/放你的测试文档(txt, PDF 后续可扩展)vectorstore/存储 FAISS 向量数据库
6️⃣ 构建知识库
用
ingest.py把文档切分、向量化、存入 FAISS
python ingest.py输出:
vectorstore文件夹,里面是向量数据库
7️⃣ 命令行测试问答
用
ask.py测试知识库问答:
python ask.py示例:
远程办公一周最多几天? 报销多久内提交? 加班需要审批吗?8️⃣ Web 接口部署
用
app.py部署 FastAPI:
uvicorn app:app --reload打开浏览器访问:
http://127.0.0.1:8000/docs可以通过 Swagger UI 测试 API
9️⃣ 后续升级
支持 PDF / Word 文档
支持多轮对话
接入 LangGraph Agent
增加前端界面(React/Next.js)
