郁兰娜 发表于 2026-1-30 12:15:01

AI开发-python-langchain框架(1-8-1 缓存机制——让 AI 应用“记住”高频问题)

想象一下,你现在是一家大型电商平台的AI架构师。双十一期间,你的智能客服系统每天要处理千万级的用户咨询。每个问题都要调用昂贵的GPT-API,响应慢、成本高,用户投诉飙升……这时候,你会怎么做?"
"我们会发现一个奇怪的现象——每天有30%的问题是完全相同的!用户都在问:'快递几天能到?'、'怎么退货?'、'商品有保修吗?'……每个问题都要调用GPT-4,每次花费0.03美元,一天就是数万美元!更糟的是,相同的回答,用户要等3-5秒才能看到……"
解决方案:引入缓存机制(如下使用sqlite当缓存数据库),当用户问道相同问题时,从缓存里直接给出答案不用将问题在送给大模型,既节约金钱成本也节约时间成本。
直接看代码:
from langchain_community.cache import SQLiteCache
from langchain.globals import set_llm_cache
from langchain_openai import ChatOpenAI
import os

#指定缓存 对比提问同样的问题,返回时间
set_llm_cache(SQLiteCache(database_path="langchain_demo.db"))

llm = ChatOpenAI(
    api_key=os.getenv("DEEPSEEK_API_KEY"),
    base_url=os.getenv("DEEP_URL"),# Deepseek 的 API 基础地址
    model="deepseek-v3:671b",# Deepseek 对话模型(可选:deepseek-chat-pro 等高级模型)
    temperature=0.7,# 温度参数(0-1,越低越稳定)
    max_tokens=1024# 最大生成 tokens
)


#这时会向数据库里插入一条数据
response =llm.invoke("hello world")
print(response.content)

#再插入一条数据 注:是否插入要根据提示词和调用的模型(模型参数改变也会认为是不同)
response =llm.invoke("how are you")
print(response.content)

#这时就会从缓存里直接出结果不会送往大模型,数据库里也不会新插入一条数据
response =llm.invoke("hello world")
print(response.content) 运行结果:可以看到 第一次的回答和第三次的回答是完全一样的。
Hello!
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

赙浦 发表于 2026-2-1 02:31:22

yyds。多谢分享

筒霓暄 发表于 2026-2-1 05:27:35

东西不错很实用谢谢分享

司寇涵涵 发表于 2026-2-8 00:32:09

收藏一下   不知道什么时候能用到

水苯 发表于 2026-2-9 17:54:12

用心讨论,共获提升!

樊涵菡 发表于 2026-2-10 04:35:19

过来提前占个楼

跟尴 发表于 2026-2-10 14:03:11

鼓励转贴优秀软件安全工具和文档!

频鹏凶 发表于 2026-2-11 16:15:58

分享、互助 让互联网精神温暖你我

挡缭 发表于 2026-2-12 18:43:45

收藏一下   不知道什么时候能用到

琶轮 发表于 2026-2-13 13:15:59

感谢分享,下载保存了,貌似很强大

咸和璧 发表于 2026-2-13 19:06:02

喜欢鼓捣这些软件,现在用得少,谢谢分享!

诉称 发表于 2026-3-7 08:43:11

喜欢鼓捣这些软件,现在用得少,谢谢分享!

尝琨 发表于 2026-3-8 06:40:53

过来提前占个楼

廖彗云 发表于 2026-3-9 19:12:35

前排留名,哈哈哈

后沛若 发表于 2026-3-12 03:36:02

yyds。多谢分享
页: [1]
查看完整版本: AI开发-python-langchain框架(1-8-1 缓存机制——让 AI 应用“记住”高频问题)