💡 使用 uv 进行包管理:本项目使用 uv 进行快速可靠的 Python 包管理。
首先安装 uv:curl -LsSf https://astral.sh/uv/install.sh | sh(Unix/macOS)或powershell -c "irm https://astral.sh/uv/install.ps1 | iex"(Windows)注意:如果您愿意,也可以使用 pip,但推荐使用 uv 以获得更好的性能和更可靠的依赖管理。
📦 离线部署:对于离线或隔离环境,请参阅 离线部署指南 了解预安装所有依赖项和缓存文件的说明。
LightRAG 服务器旨在提供 Web UI 和 API 支持。Web UI 便于文档索引、知识图谱探索和简单的 RAG 查询界面。LightRAG 服务器还提供与 Ollama 兼容的接口,旨在将 LightRAG 模拟为 Ollama 聊天模型。这使得 AI 聊天机器人(如 Open WebUI)可以轻松访问 LightRAG。
### 使用 uv 安装 LightRAG 服务器作为工具(推荐)
uv tool install "lightrag-hku[api]"
### 或使用 pip
# python -m venv .venv
# source .venv/bin/activate # Windows: .venv\Scripts\activate
# pip install "lightrag-hku[api]"
### 构建前端产物
cd lightrag_webui
bun install --frozen-lockfile
bun run build
cd ..
# 设置环境文件
# 通过从 GitHub 仓库根目录下载或从本地源码检出复制来获取 env.example 文件。
cp env.example .env # 使用您的 LLM 和嵌入配置更新 .env 文件
# 启动服务器
lightrag-server
git clone https://github.com/HKUDS/LightRAG.git
cd LightRAG
# 使用 uv(推荐)
# 注意:uv sync 会自动在 .venv/ 中创建虚拟环境
uv sync --extra api
source .venv/bin/activate # 激活虚拟环境(Linux/macOS)
# 或在 Windows 上:.venv\Scripts\activate
### 或使用 pip 和虚拟环境
# python -m venv .venv
# source .venv/bin/activate # Windows: .venv\Scripts\activate
# pip install -e ".[api]"
# 构建前端产物
cd lightrag_webui
bun install --frozen-lockfile
bun run build
cd ..
# 设置环境文件
cp env.example .env # 使用您的 LLM 和嵌入配置更新 .env 文件
# 启动 API-WebUI 服务器
lightrag-server
git clone https://github.com/HKUDS/LightRAG.git
cd LightRAG
cp env.example .env # 使用您的 LLM 和嵌入配置更新 .env 文件
# 在 .env 中修改 LLM 和 Embedding 设置
docker compose up
LightRAG 的历史版本 Docker 镜像可以在这里找到:LightRAG Docker 镜像
cd LightRAG
# 注意:uv sync 会自动在 .venv/ 中创建虚拟环境
uv sync
source .venv/bin/activate # 激活虚拟环境(Linux/macOS)
# 或在 Windows 上:.venv\Scripts\activate
# 或:pip install -e .
uv pip install lightrag-hku
# 或:pip install lightrag-hku
LightRAG 对大语言模型(LLM)能力的要求显著高于传统 RAG,因为它需要 LLM 从文档中执行实体-关系提取任务。配置合适的 Embedding 和 Reranker 模型对于提高查询性能也至关重要。
BAAI/bge-m3 和 text-embedding-3-large。BAAI/bge-reranker-v2-m3 或 Jina 等服务提供的模型。要开始使用 LightRAG 核心,请参考 examples 文件夹中提供的示例代码。此外,还提供了一个 视频演示 来指导您完成本地设置过程。如果您已经拥有 OpenAI API 密钥,可以立即运行演示:
### 您应该在项目文件夹中运行演示代码
cd LightRAG
### 提供您的 OpenAI API-KEY
export OPENAI_API_KEY="sk-...your_opeai_key..."
### 下载查尔斯·狄更斯的《圣诞颂歌》演示文档
curl https://raw.githubusercontent.com/gusye1234/nano-graphrag/main/tests/mock_data.txt > ./book.txt
### 运行演示代码
python examples/lightrag_openai_demo.py
有关流式响应实现的示例,请参阅 examples/lightrag_openai_compatible_demo.py。在执行之前,请确保相应地修改示例代码中的 LLM 和嵌入配置。
注意 1:运行演示程序时,请注意不同的测试脚本可能使用不同的嵌入模型。如果切换到不同的嵌入模型,必须清除数据目录(./dickens);否则,程序可能会遇到错误。如果您希望保留 LLM 缓存,可以在清除数据目录的同时保留 kv_store_llm_response_cache.json 文件。
注意 2:只有 lightrag_openai_demo.py 和 lightrag_openai_compatible_demo.py 是官方支持的示例代码。其他示例文件是社区贡献,尚未经过全面测试和优化。
⚠️ 如果您希望将 LightRAG 集成到您的项目中,我们建议使用 LightRAG 服务器提供的 REST API。LightRAG 核心通常用于嵌入式应用程序或希望进行研究和评估的研究人员。
LightRAG 在使用前需要显式初始化。 创建 LightRAG 实例后,必须调用 `await rag.initialize_storages