AI开发-python-langchain框架(1-8-2 缓存机制——验证缓存的效果)
在AI应用中缓存机制的经济价值不仅节省Token成本还能消除用户等待焦虑、提升系统吞吐量、保障服务稳定性——这才是企业级应用的真正痛点。当用户提出一个常见问题时首次调用大模型需要经历网络传输、排队等待、模型推理等完整链路响应时间通常在1至3秒。这个时长已超过人类对“流畅交互”的心理阈值200毫秒用户会明显感知到“卡顿”和“等待焦虑”。而启用缓存后相同问题的后续请求直接从本地数据库读取结果响应时间骤降至10毫秒以内——这种“无感秒回”的体验让用户感觉系统始终在线、反应迅捷极大提升了产品专业度和信任感。下面看看这段代码就能清晰的体现使用缓存后能提升的用户体验。同一个问题问大模型三次第一次没有缓存后两次有缓存import os import time from langchain_community.cache import SQLiteCache from langchain_openai import ChatOpenAI from langchain.globals import set_llm_cache, get_llm_cache # 1. 清理旧缓存确保演示纯净 CACHE_DB langchain_demo.db if os.path.exists(CACHE_DB): os.remove(CACHE_DB) print(f 已清理旧缓存: {CACHE_DB}) # 2. 启用缓存 set_llm_cache(SQLiteCache(database_pathCACHE_DB)) print(f 缓存已启用: {get_llm_cache()}\n) # 3. 配置 LLM llm ChatOpenAI( api_keyos.getenv(DEEPSEEK_API_KEY), base_urlos.getenv(DEEP_URL), # Deepseek 的 API 基础地址 modeldeepseek-v3:671b, # Deepseek 对话模型可选deepseek-chat-pro 等高级模型 temperature0.7, # 温度参数0-1越低越稳定 max_tokens1024 # 最大生成 tokens ) # 4. 核心演示函数 def demonstrate_cache_effect(query: str, repeat: int 3): 演示缓存效果首次调用慢 vs 后续调用快 Args: query: 要提问的问题 repeat: 重复调用次数第1次未缓存后续应命中缓存 print( * 60) print(f 测试问题: \{query}\) print(f 将重复调用 {repeat} 次第1次无缓存后续应命中缓存) print( * 60 \n) durations [] for i in range(repeat): print(f\n[第 {i 1} 次调用]) start time.perf_counter() # 高精度计时 # 关键使用完全相同的输入触发缓存 response llm.invoke(query) duration (time.perf_counter() - start) * 1000 # 转为毫秒 durations.append(duration) # 判断是否命中缓存通过耗时阈值粗略判断 is_cached i 0 # 首次通常 500ms缓存通常 50ms if i 0: print(缓存命中,耗时str(duration)) else: print(真实请求,耗时str(duration)) print(f 回答: {response.content[:60]}...) # 5. 执行演示 if __name__ __main__: # 测试标准问题确保完全相同的字符串 demonstrate_cache_effect(太阳系哪个行星最大, repeat3)运行结果已清理旧缓存: langchain_demo.db缓存已启用: langchain_community.cache.SQLiteCache object at 0x000001D668B50410测试问题: 太阳系哪个行星最大将重复调用 3 次第1次无缓存后续应命中缓存[第 1 次调用]真实请求,耗时17445.118000000093回答: 太阳系中最大的行星是**木星**。以下是关于木星的一些关键信息### 木星的基本特征1. **体积与质量** ...[第 2 次调用]缓存命中,耗时410.93799999998737回答: 太阳系中最大的行星是**木星**。以下是关于木星的一些关键信息### 木星的基本特征1. **体积与质量** ...[第 3 次调用]缓存命中,耗时1.475199999731558回答: 太阳系中最大的行星是**木星**。以下是关于木星的一些关键信息### 木星的基本特征1. **体积与质量** ...结论从时间消耗上看缓存命中几何倍数的缩短了用户等待时间提升了用户的使用体验。

相关新闻

微软新出的AI Agents课程太顶了,通宵刷完!

微软新出的AI Agents课程太顶了,通宵刷完!

最近又帮大家挖到了微软推出的一门Al Agents课程,完全free面向对AI感兴趣的同学,帮助学习者从0开始构建和理解AI Agents,以快速掌握AI代理的核心技能,了解如何将这些技术应用于实际场景。🌿课程内容:一共包…

2026/7/5 6:11:54 阅读更多 →
MySQL详解

MySQL详解

MySQL 详解(2026 最新实用版,从入门到生产级掌握) MySQL 是全球最流行的开源关系型数据库(RDBMS),2026 年主流版本为 MySQL 8.0.x(长期支持到 2029 年)和 MySQL 8.4 LTS&#xff08…

2026/7/5 6:28:09 阅读更多 →
降AI工具多少钱一篇?2026年价格对比(附省钱攻略)

降AI工具多少钱一篇?2026年价格对比(附省钱攻略)

降AI工具多少钱一篇?2026年价格对比(附省钱攻略) 降AI工具到底要花多少钱? 这是很多同学关心的问题。这篇文章帮你算清楚账,顺便分享几个省钱方法。 2026年主流降AI工具价格 工具价格8000字费用效果性价比嘎嘎降AI…

2026/7/5 7:18:06 阅读更多 →

最新新闻

基于协同过滤的SpringBoot+Vue商品推荐系统:从算法原理到工程实践

基于协同过滤的SpringBoot+Vue商品推荐系统:从算法原理到工程实践

这次我们来看一个基于协同过滤算法的商品推荐系统,这是一个典型的Java Web毕业设计/课程实践项目。项目采用SpringBoot Vue MySQL MyBatis的技术栈,实现了从用户行为数据采集到个性化商品推荐的全流程。对于正在学习Java后端开发、SpringBoot框架&…

2026/7/5 11:01:17 阅读更多 →
动作游戏开发:UE与Unity双引擎核心技术与实践指南

动作游戏开发:UE与Unity双引擎核心技术与实践指南

1. 动作游戏开发的核心预备知识体系作为从业十余年的游戏开发者,我经常被问到一个问题:"想开发一款UD(Unreal/Unity双引擎)动作游戏,应该从哪里开始准备?"这个问题看似简单,但实际上包…

2026/7/5 10:59:16 阅读更多 →
AI大模型API的CC攻击防御:构建多层算力防线与实战方案

AI大模型API的CC攻击防御:构建多层算力防线与实战方案

1. 项目概述:当AI算力成为攻击目标最近和几个做AI应用开发的朋友聊天,发现大家普遍遇到了一个头疼的新问题:自己辛辛苦苦搭建、调优的大模型API服务,上线没多久,访问量就异常飙升,服务器CPU和GPU瞬间拉满&a…

2026/7/5 10:57:16 阅读更多 →
Linux磁盘挂载:用UUID彻底解决盘符漂移,保障系统稳定

Linux磁盘挂载:用UUID彻底解决盘符漂移,保障系统稳定

🚀 30款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度 在服务器运维和日常开发中,给 Linux 系统挂载新硬盘是一项基础但至关重要的操作。很多朋友,尤其是刚接触 Linu…

2026/7/5 10:57:16 阅读更多 →
从零构建Coze多智能体应用:架构设计与工程实践详解

从零构建Coze多智能体应用:架构设计与工程实践详解

🚀 30款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度 在实际项目中,当我们需要构建一个能够处理复杂、多步骤任务的智能助手时,单一的逻辑处理单元往往会变得臃肿且…

2026/7/5 10:55:16 阅读更多 →
Dify:从AI原型到生产级应用的工程化平台实战指南

Dify:从AI原型到生产级应用的工程化平台实战指南

🚀 30款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度 你是不是也遇到过这样的场景:想快速验证一个AI应用的想法,比如做个智能客服、文档问答机器人,或者…

2026/7/5 10:55:16 阅读更多 →

日新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻