采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
这俩的嵌入缓存和InMemoryCache 有什么区别吗,使用场景是什么区别
from langchain_community.cache import InMemoryCache
它主要是针对LLMs组件的缓存,比如你调用了deepseek,那么就会将交互的过问题答案进行缓存,它是缓存在内存中的。
from langchain.embeddings import CacheBackedEmbeddings
从包的位置也可以看到,它是为嵌入模型准备的缓存模式,主要是将嵌入模型的输入输出进行缓存,且缓存结果一般是在本地文件夹中。
InMemoryCache主要应用在Chatmodels以及LLMs组件的缓存,而嵌入缓存主要应用在嵌入模型的调用场景,比如RAG或记忆管理等。
举个例子 比如查询制度RAG,当InMemoryCache已经缓存了相同查询,直接取InMemoryCache中的返回,当InMemoryCache没有缓存,下一步取CacheBackedEmbeddings,这时CacheBackedEmbeddings应该也是没有的,如果有那代表查询过,InMemoryCache就会缓存,这样想是不是代表InMemoryCache包含了CacheBackedEmbeddings,他们功能有点重复,只要其中一个就行
过度联想了,两种模型,两种缓存,没有你想的那么复杂,都是原子化执行的
登录后可查看更多问答,登录/注册
AI Agent从0到1定制开发 全栈技术+全流程+企业级落地实战
1.0k 7
546 6
203 5
57 5
431 4
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号