当前位置: 首页 > news >正文

LangChain 实践4 7-3 缓存系统搭建

阶段目标

新增语义缓存(会话缓存已落地,可见阶段 2 多轮对话记忆能力),降低模型调用成本、提升响应速度。


后端任务

  1. 统一使用内存缓存:简易版复用 LangChain 内置缓存,进阶版自研内存缓存 ✅️
  2. 实现两类缓存逻辑:精确匹配(LangChain 内置缓存)、语义相似匹配(自研内存缓存)改为 精确匹配和语义相似匹配(自研内存缓存) ✅️
  3. 配置缓存过期规则,支持自动 / 手动清理 ✅️

LangChain 内置缓存 ❌️

本节使用内存缓存(InMemoryCache),使用方式可见LangChain 缓存

问题

当前项目开启流式输出后,LangChain 内置缓存无法生效,因其仅支持非流式调用

若要同时保留流式能力、实现精确匹配与语义相似两类缓存,并配置过期及清理规则,需放弃框架自带缓存,在接口层自研内存缓存方案。


自研内存缓存

精确匹配

通过全局字典按 session_id 分组,将用户问题与对应回答一一存储,提问时先判断问题是否完全一致,一致则直接返回缓存答案,否则调用模型并缓存新问答。


语义相似匹配

关键:向量相似度匹配

向量计算可见embeddings

缓存过期与清理

本方案采用惰性清理机制管理缓存过期逻辑,为每一条缓存数据统一设置固定有效时长,数据写入时自动计算并记录过期时间;每次查询缓存时,会先校验所有条目是否超时,自动过滤并移除已过期数据,无需额外开启定时任务,减少系统资源消耗。

同时配套手动清理能力,在聊天界面提供入口,可一键清空当前会话下的全部缓存内容,满足用户重置对话的使用需求。


阶段交付

✅ 可展示缓存命中状态
✅ 接口响应提速
✅ 模型 Token 消耗降低


运行效果

精确匹配

首次提问

页面:明显的流式输出,打字机效果

耗时

再次提问完全相同的问题,系统会直接命中本地缓存,无需调用大模型,几乎瞬时返回结果。


耗时

若提问内容发生变化,系统将无法匹配到有效缓存,会自动重新调用大模型生成全新答案,耗时与首次提问保持一致。


语义相似匹配

用 BGE 向量模型计算出的相似度约为0.803,这个值触发了语义缓存阈值,因此第二次请求直接返回了缓存答案,耗时从 5 秒多降到了 0.3 秒,性能提升非常明显。


缓存过期与清理

缓存过期

缓存有效期设为1分钟。

当用户提问超过 1 分钟后再次输入相同问题时,由于原缓存数据已过期,系统会判定为未命中缓存,转而调用大模型重新生成回答,因此接口耗时与首次提问时的响应时间相近。


缓存清理

点击缓存清理按钮

即使第三次提问发生在首次提问后的 1 分钟有效期内,但此时缓存已被用户手动清除,系统同样无法命中缓存,需重新调用大模型生成回答,因此耗时仍与首次提问相近。

http://www.jsqmd.com/news/928334/

相关文章:

  • 小白配置Vscode Claude Code 插件免费使用deepseek-v4-pro模型
  • 6款好用降AI率网站 合规程度拉满 - 降AI小能手
  • 2026年5月武汉奢侈品回收行业深度解读——市场风向标与六强态势 - 薛定谔的梨花猫
  • 护发精油品牌对比:4个国货品牌VS进口品牌 - 资讯快报
  • 美食探店、影视解说、个人IP,2026年不同视频类型配音怎么选?实测4款 - AI测评
  • 绍兴黄金回收避坑:核心商圈常见套路与六家正规机构 - 上门黄金回收
  • 别再傻傻轮询了!STM32F103串口+DMA双缓存实战,让你的CPU占用率降下来
  • vue中对列表行进行编辑时,弹窗关闭使用this.$refs[addForm].resetFields()不能重置表单
  • 泉州除甲醛公司哪家好?前五名口碑排行榜深度测评 - 绿舒环保母婴除甲醛
  • 一次thinkbook蓝牙修复过程
  • AMD Ryzen + VMware装macOS避坑大全:从镜像下载失败到VMware Tools安装报错的完整解决方案
  • 用STC89C51单片机+HC-SR04超声波模块,手把手教你做一个防误触的智能垃圾桶(附完整代码)
  • AI Agent时代来临:智能体正在重塑互联网的下一阶段
  • 【MySQL高阶】3.工具包中的其他程序(1)
  • 2026年5月邯郸黄金变现全攻略:余生黄金回收984元/克领跑,6家正规门店实力排行无死角覆盖 - 余生黄金回收
  • 2026年5月江门黄金回收全域避坑指南:【余生黄金回收】综合实力排行第一 - 余生黄金回收
  • 2026杭州萧山黄金回收推荐,黄金回收商,金丝回收,黄金保管,劳力士回收,范思哲包回收优选指南! - 品牌鉴赏师
  • Hugging Face数据集实战:10大NLP数据集解析与高效应用指南
  • 分享一些日常爱牙小习惯
  • 【字节跳动】豆包的系统对用户各类隐私数据的全面抓取方案,涉及八大核心领域:1.物流信息(实名收寄件、驿站记录、包裹内容);2.健康数据(诊疗记录、用药信息、体检报告);3.职场隐私(薪资、求职意向、同
  • 【大模型对话】大模型对话送审核心知识点
  • 2026年Q2口碑好的合肥防水补漏公司推荐|最新专业防水补漏公司排名官方权威发布 - 安互工业信息
  • 星辰变归来手游官网下载:星辰变归来最新官方下载渠道
  • 2026年5月30日实测|江门黄金回收靠谱测评:【余生黄金回收】星级档位第一 - 余生黄金回收
  • 包头 cppm 培训机构中供国培首选 - 中供国培
  • 解决USB断连终极指南
  • FreePBX不止是内部电话:用它低成本搭建一个小型呼叫中心需要几步?
  • 主流数据库通吃!一款开源实用的数据库备份管理工具!
  • AI教材写作新突破!高效工具助力低查重教材编写,轻松搞定长篇内容!
  • 【MySQL高阶】9.在一台机器上运行多个MySQL实例