基于 LangGraph 的自适应 RAG 系统,支持网页内容索引和智能问答。
| 特性 | 说明 |
|---|---|
| 🔄 自适应检索 | 检索失败时自动重写查询,最多 3 次迭代 |
| 🧠 LangGraph 工作流 | Agent 式架构:Retrieve → Grade → Rewrite/Generate |
| 📊 MMR 检索 | 最大边际相关性,平衡相关性与多样性 |
| 🔐 URL 去重 | 基于哈希的双重检查,防止重复存储 |
| ☁️ 云端向量库 | Qdrant Cloud 持久化存储 |
LangChain + LangGraph # Agent 编排
Qdrant Cloud # 向量数据库
BGE-small-zh # 中文 Embedding
GPT-4o-mini # LLM
Streamlit # Web UI
# 1. 安装依赖
uv sync
# 2. 配置环境变量 (.env)
QDRANT_HOST=your_qdrant_host
QDRANT_API_KEY=your_api_key
OPENAI_API_KEY=your_openai_key
# 3. 运行
uv run streamlit run main.py
graph LR
A[用户提问] --> B[Agent]
B --> C[Retrieve]
C --> D{Grade}
D -->|相关| E[Generate]
D -->|不相关| F[Rewrite]
F --> B
E --> G[输出答案]
Router Agent → 分类问题类型
├─ RAG Agent → 知识库问答
├─ Search Agent → 实时搜索
└─ Summary Agent → 文档摘要
MIT