LightRAG 简介
LightRAG 是一个旨在实现简单、快速检索增强生成(Retrieval-Augmented Generation)的框架。它通过从文档中构建知识图谱来增强传统 RAG,能够更深入、更具上下文感知地理解源材料。相比简单的基于关键词的检索,LightRAG 利用广泛上下文和具体细节,实现了一种双层检索范式。
技术栈要求
搭建一个稳定的 LightRAG 系统,选择合适的模型至关重要。
-
大型语言模型 (LLM) 建议参数至少 320 亿,上下文长度不低于 32KB,推荐 64KB。索引阶段避免使用纯推理模型,查询阶段建议使用更强的模型以获得更好效果。
-
Embedding 模型 需要高性能、多语言的嵌入模型,如 BAAI/bge-m3 或 text-embedding-3-large。注意一致性:文档索引和查询必须使用相同的 Embedding 模型,否则需清除向量数据重新生成。
-
重排序器模型 (Reranker model) 集成 Reranker 能显著提升检索性能,特别是在混合查询模式下。推荐使用 BAAI/bge-reranker-v2-m3 或 Jina 等商业产品。其机制是通过 Cross-Encoder 输出语义相关性分数,对候选文档降序排列,过滤冗余信息。
环境部署
我们以 Python 3.10.5 和 Windows 11 为例,在 PyCharm 中进行配置。
1. 配置环境与安装 Bun
首先配置好 Python 环境,打开 LightRAG 源代码目录。在终端中使用 PowerShell 安装 Bun 运行时:
powershell -c "irm bun.sh/install.ps1|iex"
2. 安装服务器与 Core
接下来安装核心依赖并构建前端代码:
pip install "lightrag-hku[api]"
pip install lightrag-hku
# 构建前端代码
cd lightrag_webui
bun install --frozen-lockfile
bun run build
cd ..
# 配置环境变量
cp env.example .env
# 启动服务
lightrag-server
3. 配置 LLM 与 Embedding
修改 .env 文件以适配你的模型服务。例如使用阿里云 DashScope 的 Qwen 和 Embedding 接口:
### LLM Configuration
LLM_BINDING=openai
LLM_MODEL=qwen3-max
LLM_BINDING_HOST=https://dashscope.aliyuncs.com/compatible-mode/v1
LLM_BINDING_API_KEY=sk-XXXXXXXXXXXXXXX
### Embedding Configuration
EMBEDDING_BINDING=openai
EMBEDDING_MODEL=text-embedding-v1
EMBEDDING_DIM=1536
EMBEDDING_BINDING_HOST=https://dashscope.aliyuncs.com/compatible-mode/v1
=sk-XXXXXXXXXXXXXXX


