返回顶部
热门问答 更多热门问答
技术文章 更多技术文章

GraphRAG新增文件会重新索引所有文件吗?探究缓存何时生效

[复制链接]
链载Ai 显示全部楼层 发表于 7 小时前 |阅读模式 打印 上一主题 下一主题

GraphRAG索引消耗Token巨大,所以你可能会问?新增文件后,我之前的文件会不会重新索引一次啊?什么情况下会利用缓存呢?本文带你一探究竟。

GraphRAG默认使用文件缓存,配置如下。当然你也可以考虑使用Azure云端的缓存。

cache:
type:file#orblob
base_dir:"cache"
#connection_string:<azure_blob_storage_connection_string>
#container_name:<azure_blob_storage_container_name>

缓存放在cache目录下,并根据流程分为实体提取、总结描述、社区报告和文本嵌入四个部分,所以缓存基本涵盖了所有涉及LLM调用或者Embedding调用的部分。

缓存的文件名类似 chat-0a0edbed8a583fd6ef2647112f565bd9 create_community_report-chat-v2-0a8d6dcd76f6d92edb9388681da40d1d,tag和hash值组合而成。缓存的内容是什么呢?其实就LLM的请求输入和响应输出,或者是embedding API的调用回复。

{
"result":"(\"entity\"<|>\"Retrieval-AugmentedGeneration\"<|>\"technique\"<|>...<|COMPLETE|>",
"input":"-Goal-\nGivenatextdocument...",
"parameters":{
"model":"deepseek-chat",
"temperature":0,
"frequency_penalty":0,
"presence_penalty":0,
"top_p":0.99,
"max_tokens":4096,
"n":1
}
}

那么何时缓存会生效?修改哪些部分会影响缓存呢?让我们看GraphRAG中如下代码,它是为缓存文件生成文件名,也就是上文看到文件名。

defcreate_hash_key(operation:str,prompt:str,parameters:dict)->str:
"""Computecachekeyfrompromptandassociatedmodelandsettings.

Args:
prompt(str):Thepromptrunthroughthelanguagemodel.
llm_string(str):Thelanguagemodelversionandsettings.

Returns
-------
str:Thecachekey.
"""
llm_string=_llm_string(parameters)
returnf"{operation}-{_hash(prompt+llm_string)}"

从这份代码上,我们能够了解到,有两个影响hash值的生成

  • 输入的Prompt,包含用户输入
  • LLM的参数

这是实际运行过程中打印的参数

tag:chat
llm_string:{'model':'llama3-70b-8192','temperature':0.0,'frequency_penalty':0.0,'presence_penalty':0.0,'top_p':0.99,'max_tokens':2000,'n':1}
[('frequency_penalty',0.0),('max_tokens',2000),('model','llama3-70b-8192'),('n',1),('presence_penalty',0.0),('temperature',0.0),('top_p',0.99)]

所以当你

  • 换一个LLM,或者修改LLM的参数,都会导致重新索引

  • 加入新的文件,只会索引该文件,已经索引的文件不会重新索引。

  • 修改现有文件,可能导致整个文件重新索引,或者是部分,因为修改文件,如果只是部分chunk改变,那么只会是这部分chunk需要重新索引。

因此,如果你的单个文档较大,并且可能会经常修改,可以考虑将其拆分,以充分利用缓存,节省你的Money。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

链载AI是专业的生成式人工智能教程平台。提供Stable Diffusion、Midjourney AI绘画教程,Suno AI音乐生成指南,以及Runway、Pika等AI视频制作与动画生成实战案例。从提示词编写到参数调整,手把手助您从入门到精通。
  • 官方手机版

  • 微信公众号

  • 商务合作

  • Powered by Discuz! X3.5 | Copyright © 2025-2025. | 链载Ai
  • 桂ICP备2024021734号 | 营业执照 | |广西笔趣文化传媒有限公司|| QQ