LightRAG作为一款高效的图增强RAG系统,其核心在于双图索引机制:实体节点与关系边的知识图(KG),结合向量存储,实现local(实体检索)和global(关系检索)的双层查询融合。这种设计特别适合长上下文场景,能捕捉跨文档的语义关联,避免传统RAG的碎片化召回问题。通过hybrid或mix模式融合两种检索,显著提升复杂查询的全面性和精度,同时支持reranker进一步重排,提升召回质量。
在查询融合中,权重调优是关键优化点。LightRAG的QueryParam提供精细控制:mode设为"hybrid"或"mix"启用融合,top_k默认60控制实体/关系检索规模,chunk_top_k=20限定向量chunk数量,避免token爆炸。核心参数vector_db_storage_cls_kwargs中的cosine_better_than_threshold=0.2作为动态阈值,过滤低相似度节点,仅保留高置信结果。该阈值在长文档集上调至0.15-0.25,根据数据集噪声动态调整:低阈值扩充召回,高阈值提升精度。实践显示,在混合查询中启用rerank(如BAAI/bge-reranker-v2-m3),融合权重可隐式通过enable_rerank=True和mix模式实现,实验中chunk_top_k: top_k比例1:3最佳,减少80%无关chunk同时保持95%召回。
进一步,动态阈值融合需结合监控实现。使用max_entity_tokens=6000和max_relation_tokens=8000控制token预算,max_total_tokens=30000防OOM。落地清单:1)初始化LightRAG时设embedding_func为bge-m3(多语言支持),llm_model_func用32B+模型如Qwen2.5-32B;2)索引阶段chunk_token_size=1200、overlap=100,确保实体提取完整;3)查询时param=QueryParam(mode="mix", top_k=40, chunk_top_k=15, enable_rerank=True),阈值从0.2起步,A/B测试RAGAS指标(context_precision>0.85)迭代;4)生产中集成Langfuse追踪latency<2s/token,fallback到"local"模式若hybrid超时。
为低资源部署,知识蒸馏压缩是高效路径。LightRAG支持Ollama/HF小模型集成,无需重训,通过教师-学生蒸馏转移KG构建知识:教师用GPT-4o-mini处理文档生成高质量实体/关系,学生如Llama-3.2-1B用相同prompt微调(loRA,lr=1e-4,epochs=3)。蒸馏实践:1)教师索引全数据集,导出KG(export_data(format="json"));2)学生加载KG,llm_model_kwargs={"num_ctx":32768}扩展上下文;3)distill时用embedding_cache_config={"similarity_threshold":0.95}复用相似查询,减少90%LLM调用。风险监控:蒸馏后RAGAS faithfulness降<5%,回滚策略为双模型路由(confidence<0.8转教师)。参数清单:学生embedding_dim=768(nomic-embed),llm_max_async=2防资源争用,enable_llm_cache=True。
实际落地中,上例法律数据集(500万token)调优后,LightRAG hybrid模式胜率达84.8%,较NaiveRAG提升2倍。蒸馏后1B学生模型精度仅降3%,推理速提5x。回滚:若精度<基线80%,禁用蒸馏用原教师;监控embedding_batch_num=16,警报>500ms。
资料来源:LightRAG GitHub(https://github.com/HKUDS/LightRAG),arXiv:2410.05779。