Browse Source

Update README.md

nianshilan 3 weeks ago
parent
commit
a10c697706
1 changed files with 157 additions and 0 deletions
  1. 157 0
      README.md

+ 157 - 0
README.md

@@ -1,3 +1,160 @@
+
+
+# LightRAG - 轻量级快速检索增强生成系统
+一款结合知识图谱与向量检索的高性能RAG框架,支持多模态文档处理与多模型灵活接入,可快速搭建生产级私有智能知识库问答系统。
+
+## (一)项目简介
+本项目核心定位是解决传统RAG系统检索精度不足、上下文理解能力弱、部署配置复杂的行业痛点,通过创新的知识图谱增强检索架构,在保持轻量高效的同时大幅提升问答的全面性、多样性与准确性。支持文本、图片、表格、公式等多模态内容处理,兼容OpenAI、Hugging Face、Ollama等主流大模型生态,以及PostgreSQL、Neo4J、Faiss等10余种存储后端,提供开箱即用的Web UI、RESTful API与Python SDK,显著降低RAG系统的开发与运维成本。
+
+核心优势包括:性能优于传统RAG及GraphRAG等主流方案,在法律、农业、计算机等多个领域评测中表现突出;内置自动化知识图谱构建、编辑与可视化能力;支持本地/全局/混合等6种检索模式,适配不同查询场景;完整的多模态处理能力(集成RAG-Anything);灵活的插件化架构,支持自定义模型与存储扩展;提供Docker与K8s部署方案,可直接用于生产环境。
+
+## (二)环境前置要求
+- **操作系统**:支持Windows、Linux、macOS全平台
+- **Python版本**:Python 3.9+(推荐3.10+)
+- **Docker部署**:需提前安装Docker 20.10+及Docker Compose v2+
+- **硬件要求**:最低2核4G内存,推荐4核8G以上;使用本地大模型需8G以上显存GPU
+- **可选依赖**:Git版本管理工具、CUDA 11.8+(GPU加速)、textract(多格式文档解析)
+
+## (三)快速开始 / 安装部署
+### 1. PyPI 安装(推荐)
+#### 服务器版(含Web UI与API)
+```bash
+pip install "lightrag-hku[api]"
+```
+
+#### 核心版(仅Python SDK)
+```bash
+pip install lightrag-hku
+```
+
+### 2. 源码安装
+```bash
+git clone https://github.com/HKUDS/LightRAG.git
+cd LightRAG
+# 创建并激活虚拟环境(可选)
+python -m venv venv
+source venv/bin/activate  # Windows: venv\Scripts\activate
+# 安装带API支持的开发版本
+pip install -e ".[api]"
+```
+
+### 3. Docker Compose 部署(生产环境推荐)
+```bash
+git clone https://github.com/HKUDS/LightRAG.git
+cd LightRAG
+cp env.example .env
+# 编辑.env文件,配置LLM API密钥与模型参数
+docker compose up -d
+```
+
+## (四)基础使用示例
+### 1. 核心库快速入门(OpenAI模型)
+```python
+import os
+import asyncio
+from lightrag import LightRAG, QueryParam
+from lightrag.llm.openai import gpt_4o_mini_complete, openai_embed
+from lightrag.kg.shared_storage import initialize_pipeline_status
+
+# 设置工作目录与API密钥
+WORKING_DIR = "./rag_storage"
+os.environ["OPENAI_API_KEY"] = "你的OpenAI API密钥"
+if not os.path.exists(WORKING_DIR):
+    os.mkdir(WORKING_DIR)
+
+async def main():
+    # 初始化LightRAG实例
+    rag = LightRAG(
+        working_dir=WORKING_DIR,
+        embedding_func=openai_embed,
+        llm_model_func=gpt_4o_mini_complete,
+    )
+    # 必须执行的初始化步骤
+    await rag.initialize_storages()
+    await initialize_pipeline_status()
+    
+    # 插入文档内容
+    rag.insert("LightRAG是香港大学数据科学实验室开发的轻量级快速检索增强生成系统,结合了知识图谱与向量检索技术。")
+    
+    # 执行混合检索问答
+    result = await rag.query(
+        "LightRAG是什么?它有什么技术特点?",
+        param=QueryParam(mode="hybrid", response_type="Bullet Points")
+    )
+    print(result)
+    
+    await rag.finalize_storages()
+
+if __name__ == "__main__":
+    asyncio.run(main())
+```
+
+### 2. Web UI 使用
+1. 部署完成后访问 `http://localhost:8000` 进入管理界面
+2. 在「文档管理」页面上传PDF、DOCX、PPTX、CSV等格式文档
+3. 等待系统自动完成文档解析、实体提取与知识图谱构建
+4. 在「问答」页面输入问题,支持流式响应与多轮对话
+5. 在「知识图谱」页面可视化查看实体关系与检索路径
+
+### 3. 多模态文档处理
+```bash
+# 安装多模态依赖
+pip install raganything
+```
+```python
+import asyncio
+from raganything import RAGAnything
+from lightrag.llm.openai import openai_complete_if_cache, openai_embed
+
+async def main():
+    rag = RAGAnything(
+        working_dir="./multimodal_rag",
+        llm_model_func=lambda prompt, **kwargs: openai_complete_if_cache(
+            "gpt-4o-mini", prompt, api_key="你的API密钥", **kwargs
+        ),
+        embedding_func=lambda texts: openai_embed(
+            texts, model="text-embedding-3-large", api_key="你的API密钥"
+        ),
+        embedding_dim=3072,
+    )
+    
+    # 处理包含图片、表格、公式的PDF文档
+    await rag.process_document_complete("path/to/your/document.pdf")
+    
+    # 查询多模态内容
+    result = await rag.query_with_multimodal(
+        "请总结文档中表格展示的实验数据",
+        mode="hybrid"
+    )
+    print(result)
+
+if __name__ == "__main__":
+    asyncio.run(main())
+```
+
+## (五)开源许可证
+本项目开源许可证详情请参考项目根目录下的 `LICENSE` 文件。
+
+## 补充信息
+- 学术引用:
+  ```bibtex
+  @article{guo2024lightrag,
+    title={LightRAG: Simple and Fast Retrieval-Augmented Generation},
+    author={Zirui Guo and Lianghao Xia and Yanhua Yu and Tu Ao and Chao Huang},
+    year={2024},
+    eprint={2410.05779},
+    archivePrefix={arXiv},
+    primaryClass={cs.IR}
+  }
+  ```
+- 支持的存储后端:
+  - KV存储:JSON、PostgreSQL、Redis、MongoDB
+  - 向量存储:NanoVector、PGVector、Milvus、Chroma、Faiss、Qdrant
+  - 图存储:NetworkX、Neo4J、PostgreSQL+AGE
+- 支持的大模型:OpenAI系列、Hugging Face开源模型、Ollama本地模型、LlamaIndex兼容模型
+- 核心功能:引用溯源、Token使用统计、数据导出、缓存管理、自定义知识图谱、批量文档处理
+- 交流社区:项目Discord频道(链接见官方README)
+
 <div align="center">
 
 <div style="margin: 20px 0;">