评估, 工具, 与示例
评估、工具与示例
相关源文件
本章引用的主要源码文件:
lightrag/evaluation/__init__.pylightrag/evaluation/eval_rag_quality.pylightrag/evaluation/sample_dataset.jsonlightrag/evaluation/sample_documents/01_lightrag_overview.mdlightrag/evaluation/sample_documents/02_rag_architecture.mdlightrag/evaluation/sample_documents/03_lightrag_improvements.mdlightrag/evaluation/sample_documents/04_supported_databases.mdlightrag/evaluation/sample_documents/05_evaluation_and_deployment.mdlightrag/evaluation/sample_documents/README.md
本节概述了核心引擎之外的 LightRAG 生态系统,重点介绍如何衡量系统质量、使用开发者工具以及实现各种用例。它弥合了核心检索增强生成(RAG)逻辑与实际部署需求之间的差距。
检索增强生成(RAG)质量评估
LightRAG 包含一个基于 RAGAS 框架构建的专用评估模块。这使开发者能够使用行业标准指标定量评估其检索增强生成(RAG)管线的性能。评估侧重于用户问题、检索到的上下文以及生成的答案之间的关系。
核心指标
评估脚本 lightrag/evaluation/eval_rag_quality.py:5-9 衡量以下指标:
- 忠实度(Faithfulness):答案相对于检索到的上下文的事实准确性。
- 答案相关性(Answer Relevance):答案对特定问题的匹配程度。
- 上下文召回率(Context Recall):检索系统是否找到了所有必要信息。
- 上下文精确率(Context Precision):检索到的文档中信噪比。
评估工作流
系统提供了一个示例数据集 lightrag/evaluation/sample_dataset.json:1-34 和相应的文档 lightrag/evaluation/sample_documents/README.md:1-22,以便立即测试评估管线。结果会以 CSV 和 JSON 两种格式导出,用于详细分析 lightrag/evaluation/eval_rag_quality.py:29-31。
详情请参见 检索增强生成(RAG)质量评估。
开发者工具与实用程序
提供了一套维护和可视化工具,用于协助调试和优化 LightRAG 实例。这些工具处理从缓存管理到 3D 知识图谱可视化等各种任务。
可视化
- 3D 可视化工具:一个使用 Sigma.js 和 ModernGL 的高性能查看器,用于探索大型知识图谱。
- HTML/Neo4j 导出:将图谱结构导出到浏览器或专用图数据库中进行外部分析的工具。
维护工具
- 缓存迁移:
migrate_llm_cache.py将旧版缓存格式更新为大语言模型(LLM)响应缓存当前使用的扁平化键方案lightrag/utils.py:10-15。 - 数据准备:
prepare_qdrant_legacy_data.py等脚本帮助在不同版本或后端之间迁移向量数据。 - 安全:
hash_password.py用于为 REST API 服务器生成安全凭证。
详情请参见 开发者工具与实用程序。
使用示例
代码库包含大量示例,展示了与各种大语言模型(LLM)提供商、向量数据库以及高级智能体工作流的集成。
集成模式
- 大语言模型(LLM)提供商:针对 OpenAI、Azure、Ollama、Gemini 和 vLLM 的实现。
- 向量数据库:针对 Milvus、Qdrant、MongoDB Atlas 和 OpenSearch 的示例。
- 高级工作流:与 AG2 集成,用于多智能体检索增强生成(RAG)和自定义知识图谱插入逻辑。
详情请参见 使用示例。
系统架构:评估与工具
下图说明了评估和工具层如何与核心 LightRAG 实体及外部服务交互。
评估与工具集成
来源: lightrag/evaluation/eval_rag_quality.py:115-118、lightrag/evaluation/__init__.py:19-25、lightrag/evaluation/sample_dataset.json:1-5
自然语言到代码实体映射
此图将评估概念映射到评估过程中使用的具体代码实现和数据结构。
来源: lightrag/evaluation/eval_rag_quality.py:86-91、lightrag/evaluation/sample_dataset.json:3-6
关键文件汇总表
| 类别 | 文件路径 | 用途 |
|---|---|---|
| 评估 | lightrag/evaluation/eval_rag_quality.py | RAGAS 指标评估的主要入口点。 |
| 评估 | lightrag/evaluation/sample_dataset.json | 用于测试的参考问题和真实答案。 |
| 工具 | lightrag/utils.py | 包含 SanitizingJSONEncoder 和基于优先级的异步装饰器。 |
| 示例 | examples/lightrag_openai_demo.py | 针对 OpenAI 的标准实现模板。 |
| 示例 | examples/lightrag_api_server_demo.py | 与 FastAPI 服务器交互的模板。 |
来源: lightrag/evaluation/eval_rag_quality.py:1-38、lightrag/evaluation/sample_dataset.json:1-34
来源: lightrag/evaluation/eval_rag_quality.py:1-180 lightrag/evaluation/sample_dataset.json:1-34 lightrag/evaluation/__init__.py:1-26 lightrag/evaluation/sample_documents/README.md:1-22