Hotdry.
ai-systems

LightRAG 双本地-全局图索引与查询融合蒸馏 Pipeline:低资源高效 RAG 实现

LightRAG 通过双层图索引(local 实体、全局关系)和查询融合,实现低资源高效 RAG 检索增强生成。详解 pipeline 参数配置、落地清单与监控要点。

LightRAG 的双本地 - 全局图索引与查询融合蒸馏 pipeline 是实现低资源高效 RAG 的核心创新。它将知识图谱结构化存储实体与关系,同时通过 hybrid/mix 模式融合 local(实体聚焦)和 global(关系聚焦)检索,避免传统 RAG 的扁平向量局限,提升复杂查询的全面性和多样性。相比 GraphRAG,这种设计只需单次 LLM 调用(<100 tokens),支持增量更新,适用于边缘设备和实时场景。

双图索引构建是 pipeline 的基础。首先,文档分块(默认 chunk_token_size=1200,overlap=100),LLM(如 GPT-4o-mini)提取实体(person、organization 等)和关系,形成节点与边。实体 / 关系描述经总结(summary_max_tokens=500)后,向量化嵌入(embedding_batch_num=32,dim 如 bge-m3 的 1024)存入 vector_storage(如 NanoVectorDB),图结构存入 graph_storage(如 NetworkX 或 Neo4j)。去重合并确保唯一性,仅保留核心描述,避免冗余。“LightRAG 的知识图谱可以增量更新,避免 GraphRAG 全量重建。” 关键参数:entity_extract_max_gleaning=1(迭代提取次数),node2vec_params 用于可选节点嵌入(默认不启用)。此过程 LLM 需求低(推荐 >=32B 参数,context >=32K),并启用 llm_cache 复用提示。

查询融合蒸馏是 pipeline 的高光。QueryParam 控制模式:local 检索 top_k=60 实体邻域(max_entity_tokens=6000);global 检索关系(max_relation_tokens=8000);hybrid/mix 融合二者,总上下文 max_total_tokens=30000。流程:查询分词提取 low-level(具体实体)和 high-level(抽象概念)关键词,向量检索实体 / 关系 → 扩展邻接节点 → 融合 chunks(chunk_top_k=20,经 rerank 如 bge-reranker-v2-m3) → 注入 LLM(gpt_4o_complete)。蒸馏指上下文精炼:统一 token 预算控制,避免幻觉,支持 conversation_history 维持对话。证据显示,在农业 / 法律等数据集,LightRAG 胜率超 60%(comprehensiveness、多样性),因融合捕捉多跳关系。

落地清单确保零门槛部署:

  1. 环境准备:uv pip install lightrag-hku [api];export OPENAI_API_KEY=sk-... 或 Ollama 配置。

  2. 初始化

    rag = LightRAG(
        working_dir="./rag_storage",
        embedding_func=openai_embed,  # 或 ollama_embed(nomic-embed-text)
        llm_model_func=gpt_4o_mini_complete,
        chunk_token_size=1200,
        llm_model_max_async=4
    )
    await rag.initialize_storages()
    
  3. 索引:rag.insert ("文档内容", file_paths=["doc.txt"]);批量 max_parallel_insert=4。

  4. 查询

    param = QueryParam(mode="hybrid", top_k=60, enable_rerank=True)
    result = await rag.aquery("查询问题", param=param)
    
  5. 存储扩展:.env 中 NEO4J_URI=neo4j://localhost:7687;graph_storage="Neo4JStorage"。

  6. 服务化:lightrag-server 启动 WebUI/API,支持 Ollama 兼容。

监控要点:Langfuse 集成追踪 token/latency(pip install lightrag-hku [observability]);RAGAS 评估 context_precision;阈值 cosine_better_than_threshold=0.2,回滚 clear_cache (modes=["hybrid"])。

风险控制:embedding 模型切换需清数据;大文档分批 insert;生产用 PostgreSQL 一体化(kv/vector/graph)。优化:mix 模式默认,user_prompt 自定义输出(如 "用 Mermaid 图");embedding_cache_config={"similarity_threshold":0.95} 加速重复查询。

此 pipeline 在低资源下实现高效 RAG,落地参数如上清单,监控确保稳定。

资料来源

查看归档