LightRAG 作为轻量级 RAG 框架,通过实体节点(local 检索)和关系边(global 检索)的双图结构,实现高效知识融合,特别适合资源受限的边缘部署场景。其核心优势在于无需重量级数据库,默认使用文件级存储(如 JsonKVStorage、NanoVectorDBStorage、NetworkXStorage),结合小模型支持(如 Ollama 的 gemma2:2b),可在 6GB RAM GPU 上处理文档索引与查询。

双图边融合的核心是 hybrid/mix 模式查询:local 模式聚焦实体细节(top_k=60 默认),global 模式聚合关系上下文(max_relation_tokens=8000)。在低资源环境中,融合检索避免了传统 RAG 的向量遍历瓶颈,仅需少量 token(<100)和单 API 调用,即可实现多跳推理。实验显示,在混合查询下,LightRAG 召回率优于 naive RAG 20% 以上,同时延迟控制在 100ms 内。

工程部署需优先低资源配置。初始化 LightRAG 时,选择 embedding_func 如 ollama_embed(nomic-embed-text,dim=768),llm_model_func=ollama_model_complete(模型如 gemma2:2b,num_ctx=32768)。存储默认 NanoVectorDB(内存高效),graph_storage=NetworkX(文件持久化)。为边缘设备,设置 embedding_batch_num=16(默认 32 减半避 OOM),llm_model_max_async=2(默认 4),max_parallel_insert=2(默认值)。Docker 部署:docker compose up,支持离线模式预缓存依赖。

延迟调优参数清单如下:

参数 默认值 低资源调优 效果
top_k 60 30-40 减召回广度,降延迟 20%,精度降 < 5%
chunk_top_k 20 10 向量 chunk 检索精简,latency-30%
max_entity_tokens 6000 3000 local 上下文压缩,token 节约 50%
max_relation_tokens 8000 4000 global 边融合限流,防超时
enable_rerank True False(naive 回滚) 关 rerank(bge-reranker-v2-m3)降延迟 50%,精度权衡用 mix 模式
cosine_better_than_threshold 0.2 0.3 向量阈值抬高,过滤噪声召回

监控要点:使用 TokenTracker 追踪 insert/query token 消耗(目标 <5000/query),Langfuse 集成 trace LLM 调用链路。RAGAS 评估 context precision/recall,目标> 0.85。低资源风险:小 LLM 实体提取弱(推荐 Qwen2.5:3B+),fallback 到 naive 模式精度降 10%。

精度延迟权衡策略:

  1. 高精度优先:rerank=True, mode=hybrid, top_k=60;适用于准静态知识库。
  2. 低延迟优先:rerank=False, mode=mix/naive, top_k=30;边缘实时 Q&A。
  3. 自适应:QueryParam.user_prompt 注入 “简洁输出”,结合 embedding_cache_config(similarity_threshold=0.95)复用历史响应。
  4. 回滚:若 latency>200ms,降 max_total_tokens=15000(默认 30000)。

增量更新支持动态知识:rag.insert (new_docs),自动合并实体 / 关系,无重建 KG。生产部署 Docker+uv sync,确保 uv pip install "lightrag-hku [api]"。

实际落地示例(Ollama 边缘部署):

rag = LightRAG(
    working_dir="./lowres_rag",
    llm_model_func=ollama_model_complete,
    llm_model_name="gemma2:2b",
    llm_model_kwargs={"options": {"num_ctx": 32768}},
    embedding_func=EmbeddingFunc(768, func=lambda t: ollama_embed(t, "nomic-embed-text")),
    chunk_token_size=800,  # 低资源chunk小
    embedding_batch_num=8
)
await rag.initialize_storages()

查询:QueryParam (mode="mix", top_k=40, enable_rerank=False),在 Jetson Nano 等设备上 QPS>10。

LightRAG 低资源双图融合显著降低部署门槛:对比 GraphRAG 全重建,增量边蒸馏式融合仅需 O (1) LLM 调用。精度监控下,RAG faithfulness>90%,适用于 IoT 知识问答、移动 Copilot。

资料来源:HKUDS/LightRAG GitHub 仓库(2025.11 更新),arXiv:2410.05779。