LightRAG 通过双图索引机制(实体节点与关系边),结合查询融合策略,实现高效RAG pipeline。该框架的核心在于图增强文本索引与双层检索范式,支持低资源环境下的快速部署,尤其适用于资源受限场景。通过参数化“学习权重”模拟融合权重,并结合蒸馏技术,可将大模型能力转移至小型模型,显著降低延迟与成本。
双图索引工程是LightRAG的基础。首先,文档按chunk_token_size=1200、overlap=100切分,利用LLM执行R(·)提取实体/关系,P(·)生成键值对描述,D(·)去重合并,形成异构知识图(NetworkX默认,大规模用Neo4j)。实体节点存储描述与嵌入向量,关系边捕获高阶关联。该机制证据于UltraDomain基准,在农业/法律数据集上,LightRAG胜率超GraphRAG 50%以上,全面性提升67.6%。工程中,embedding_batch_num=32、llm_model_max_async=4控制并发,避免LLM限流;cosine_better_than_threshold=0.2过滤低质向量,确保图纯净。
查询融合采用hybrid/mix模式,模拟“learned query fusion weights”。local模式用低级关键词匹配实体(top_k=60),global用高级关键词匹配关系(chunk_top_k=20),融合时通过max_entity_tokens=6000、max_relation_tokens=8000、max_total_tokens=30000动态分配token预算,实现加权上下文构建。mix模式默认启用reranker(如bge-reranker-v2-m3),进一步重排序融合结果。证据显示,hybrid模式下多样性提升76.4%,赋能性达83.6%。调优清单:top_k从60降至40测试召回-精度权衡;enable_rerank=True提升混合查询10%;user_prompt注入自定义指令,如“优先关系推理”模拟权重偏置。
低资源蒸馏部署是LightRAG亮点,支持Ollama/Qwen小模型蒸馏大模型知识。初始化时llm_model_func=ollama_model_complete、embedding_func=ollama_embed(nomic-embed-text,dim=768),结合llm_model_kwargs={"options": {"num_ctx": 32768}}扩展上下文。MiniRAG变体用gpt-4o-mini(索引)+qwen2.5-coder:7b(查询),蒸馏过程:教师模型(gpt-4o)构建图,学生继承embedding/llm,缓存kv_store_llm_response_cache.json复用。部署参数:max_parallel_insert=4避免OOM;enable_llm_cache=True,similarity_threshold=0.95加速重复查询。低资源pipeline延迟<1s/Q,成本降80%,适用于边缘设备。
落地参数/监控清单:
- 索引:chunk_token_size=1200/overlap=100/entity_extract_max_gleaning=1;存储graph_storage="Neo4jStorage"(URI=neo4j://host:7687)。
- 查询:mode="mix"/top_k=60/chunk_top_k=20/max_async=16;rerank_model_func=jina_rerank。
- 蒸馏:llm_model_name="qwen2.5-coder:7b"/embedding_dim=768;embedding_cache_config={"enabled":True,"similarity_threshold":0.95,"use_llm_check":False}。
- 监控:TokenTracker上下文管理器追踪usage;Langfuse集成([observability])观察latency/cost;RAGAS评估context_precision。
风险控制:LLM质量依赖,用≥32B参数模型索引,避免reasoning模型;graph>10k节点切换Neo4j/PGGraphStorage,回滚clear_cache(modes=["hybrid"])。部署Docker compose up,支持PostgreSQL一站式(kv/vector/graph)。
资料来源:HKUDS/LightRAG GitHub(EMNLP2025),arXiv:2410.05779。