发布时间:2026/8/30 9:34:33
LiteLLM 缓存实战:如何给重复的 LLM 请求省下真金白银 LiteLLM 缓存实战如何给重复的 LLM 请求省下真金白银【免费下载链接】litellmThe fastest, litest AI Gateway. Rust core with Python SDK. Call 100 LLM APIs in OpenAI (or native) format with cost tracking, guardrails, load balancing, and logging [Bedrock, Azure, OpenAI, Anthropic, OpenAI, VertexAI, vLLM, Nvidia NIM]项目地址: https://gitcode.com/GitHub_Trending/li/litellm上周有个读者问我同一个 RAG 应用每天被反复问同一批问题账单却天天涨。查下来重复调用占了总费用的 40% 以上。解法不复杂——LiteLLM 自带一层响应缓存命中缓存的请求根本不打上游 API不产生费用返回也快得多。这篇文章讲清楚 LiteLLM 缓存怎么开、后端怎么选、有哪些坑。先搞清楚命中到底靠什么先说机制不然后面全是玄学。精确缓存的 key 由 model、messages、temperature、max_tokens 等调用参数共同哈希而来换个标点、改个参数就是另一个 key照样全额计费。所以语义完全一样但措辞不同的两个问题在精确缓存里算两次调用。这一点决定了后端怎么选下面直接上表。四种后端一张表后端 type命中逻辑适合场景代价local内存参数完全一致开发、单元测试进程重启即清空多实例互不可见redis参数完全一致多实例生产环境需要跑一个 Redisredis-semantic语义缓存语义相似度达标即命中用户提问措辞多变的成本敏感场景每次查询多一次 embedding 调用s3/gcs/azure-blob参数完全一致跨实例共享、长期留存读写延迟高于 Redis两个补充disk是内存版的落盘替代单机持久化够用DualCache会同时写 Redis 和内存用本地层兜底热点。语义缓存除了 Redis仓库里还有 Qdrant、Valkey 两个实现接口一致按你已有的向量栈挑。开发30 秒挂一个内存缓存import litellm from litellm.caching import Cache litellm.cache Cache(typelocal)local就是进程内字典不碰任何外部服务适合本地开发和 CI。注意它随进程消失别拿它验证重启后数据还在之类的行为。生产Redis 加 TTL 是及格线import litellm from litellm.caching import Cache litellm.cache Cache(typeredis, hostlocalhost, port6379, ttl86400)typeredis所有请求先查 Redis命中直接返回。host/port你的 Redis 地址有密码就加password。ttl条目存活秒数。这里有个坑不设 TTL 意味着今天答对的新闻问题三个月后还在被复用。内容会过期的业务TTL 必填纯知识类问答可以放大甚至不设。另外两点白话说明每个请求想跳过缓存时在调用参数里传cache{no-cache: True}比如健康检查、调试这类调用源码里它自己就是这么做的。用户隔离不用手动操心messages 本来就在 key 里不同问题的 key 天然不同。真正需要担心的是语义缓存——相似问题要跨用户隔离见后面。成本敏感语义缓存和阈值精确缓存对换个说法就失效的提问无能为力。客服、搜索这类入口建议上语义缓存litellm.cache Cache( typeredis-semantic, hostlocalhost, port6379, similarity_threshold0.95, )similarity_threshold是 0 到 1 的相似度线低于线就重新调模型。阈值越低命中越多、省得越多但错误答案的风险也越大越高则保守省钱幅度有限。建议从 0.95 起步跑两周看命中率再调。多租户场景放心LiteLLM 会用 API key、team、org 等字段给语义缓存分组A 用户的相似问题不会命中 B 用户缓存的答案。进阶跨模型共享缓存主用 Claude、备用 GPT-4o 的架构里可以声明它们共享缓存组litellm.completion( modelclaude-3-5-sonnet, messagesmessages, metadata{caching_groups: [[claude-3-5-sonnet, gpt-4o]]}, )任何一次调用写入的条目组内其他模型直接复用降级切换时缓存照样生效。前提是这两个模型在你的场景下输出质量接近别拿差异大的模型凑组。上线前过一遍避坑清单Redis 记得带 TTL过期内容复用是真实事故。语义缓存阈值从 0.95 起步别一上来就 0.8。local缓存在进程重启后全丢别当持久层用。工具调用、代码生成这类输出本来就有波动拿缓存结果做对比测试前先确认输出确实稳定。监控上有个偷懒办法缓存命中的调用不走上游成本几乎为零直接在 Langfuse 这类观测平台的 Trace 里对比命中率前后的花费比看任何面板都直观。一句话回顾开发用local生产用redis TTL成本压力大再叠语义缓存阈值、TTL、no-cache 三个旋钮够你调到满意为止。想继续抠细节可以翻翻 缓存模块源码 里的 key 生成逻辑。【免费下载链接】litellmThe fastest, litest AI Gateway. Rust core with Python SDK. Call 100 LLM APIs in OpenAI (or native) format with cost tracking, guardrails, load balancing, and logging [Bedrock, Azure, OpenAI, Anthropic, OpenAI, VertexAI, vLLM, Nvidia NIM]项目地址: https://gitcode.com/GitHub_Trending/li/litellm创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

2026/8/30 9:34:33

BT下载提速实践:3步配置公共Tracker列表

BT下载提速实践:3步配置公共Tracker列表 【免费下载链接】trackerslist Updated list of public BitTorrent trackers 项目地址: https://gitcode.com/GitHub_Trending/tr/trackerslist trackerslist 项目维护一份公共 BitTorrent Tracker 列表,由…

2026/8/30 9:34:33

C++实时预览Markdown编辑器:解析机制与性能优化实践

先直接说结论:用 C 写一个带 live preview 的 Markdown 编辑器,这件事一点都不神秘,核心就是三件事:一个能编辑文本的控件、一个能把 Markdown 转成 HTML 的解析器、一个能把 HTML 呈现出来的渲染区域。难点不在翻译 Markdown&…

2026/8/30 9:44:33

EMFE:基于轻量CNN与Grad-CAM的疟疾细胞可解释分类框架

在医学图像分类任务里,准确率并不是唯一的验收指标。尤其是疟疾细胞分类这类需要辅助医生判断的场景,模型不仅要回答“这张涂片是否感染”,还要说明“模型根据哪些细胞形态特征作出判断”。EMFE 正是围绕这个目标设计的一套轻量级、可解释的机…

2026/8/30 9:44:33

生成式界面进入项目之前,先把它关进组件边界里

生成式界面进入项目之前,先把它关进组件边界里生成式 UI 的演示很有吸引力:一句指令就能出现表单、图表和操作按钮。但演示默认输入完整、组件存在、接口成功,真正的前端页面并没有这么宽容。模型返回内容会被截断,字段会变形&…

2026/8/30 9:44:33

CSS 层级故障复盘,别只写一句“加硬件加速”

CSS 层级故障复盘,别只写一句“加硬件加速”复杂仪表盘、弹窗和动画集中在一个页面时,掉帧常被归咎于“CSS 太多”。这个说法没有帮助。浏览器如何分层、何时栅格化、哪个动画占用主线程,都要回到性能记录和实际设备上看。给每个元素加 trans…

2026/8/30 9:44:33

CUDA优化实战:用Shared Memory Swizzling消除Bank Conflict

在 CUDA 性能优化里,Shared Memory Swizzling 是很多同学从“能写对”到“能写快”的分水岭。很多 kernel 跑起来结果没问题,但用 Nsight Compute 一测,shared memory 的 bank conflict 高达 20 多路,一次访存被硬件拆成二十多次串…

2026/8/30 9:44:33

前端智能审查,先给调用链设一条止损线

前端智能审查,先给调用链设一条止损线把大模型接进 PR 审查,最容易被忽略的不是提示词,而是调用边界。有人先把完整 diff 发给模型,等账单、429 和重复评论一起出现,才发现这件事没有“默认安全”的运行方式。 模型审查…

2026/8/30 9:39:33

人形机器人金属腿的“意志力”:腿部柔顺控制与阻抗控制解析

如果你最近看过人形机器人的演示视频,会发现一个很有意思的现象:真正抓眼球的往往不是机器人的上半身,而是它那条金属腿。跑起来能腾空,落地能缓冲,踩到不平地面还能迅速调整姿态。很多人把这些能力归功于“强大的关节…

2026/8/30 0:03:35

vSound小提琴数字处理器实操指南:从接线到演出的完整配置

电小提琴或者原声小提琴插电演出,第一个绕不开的坎就是声音难听。原声琴的共鸣和空气感一旦进了拾音器,出来的往往是一坨干瘪、发尖、带着奇怪塑料味的信号。我当初第一次把琴接上乐队调音台,直接被主唱吐槽"你这声音像在锯钢丝"。…

2026/8/30 0:03:35

传感器接口IC如何攻克生物化学传感的微弱信号难题?

1. 从电极到比特流:为什么生物化学传感必须依赖专用接口IC 做生物化学传感的人都有过类似的经历:明明传感器本身性能很好,信号输出却一塌糊涂——噪声大、漂移明显、重复性差,怎么调都达不到预期。很多时候问题并不在传感器&#…

2026/8/30 0:03:35

STM32F411CEU6多通道ADC采集:扫描模式+DMA实现详解

1. 多通道 ADC 的用武之地把“Multichannel ADC”和“STM32F411CEU6”这两个关键字放在一起,其实就是嵌入式开发里最常遇到的一类需求:用一块不算贵的 MCU,同时采集多路模拟信号。STM32F411CEU6 是 48 引脚的 Cortex-M4F 主控,主频…

2026/8/30 0:03:35

vSound小提琴数字处理器实操指南:从接线到演出的完整配置

电小提琴或者原声小提琴插电演出,第一个绕不开的坎就是声音难听。原声琴的共鸣和空气感一旦进了拾音器,出来的往往是一坨干瘪、发尖、带着奇怪塑料味的信号。我当初第一次把琴接上乐队调音台,直接被主唱吐槽"你这声音像在锯钢丝"。…

2026/8/30 0:03:35

传感器接口IC如何攻克生物化学传感的微弱信号难题?

1. 从电极到比特流:为什么生物化学传感必须依赖专用接口IC 做生物化学传感的人都有过类似的经历:明明传感器本身性能很好,信号输出却一塌糊涂——噪声大、漂移明显、重复性差,怎么调都达不到预期。很多时候问题并不在传感器&#…

2026/8/30 0:03:35

STM32F411CEU6多通道ADC采集:扫描模式+DMA实现详解

1. 多通道 ADC 的用武之地把“Multichannel ADC”和“STM32F411CEU6”这两个关键字放在一起,其实就是嵌入式开发里最常遇到的一类需求:用一块不算贵的 MCU,同时采集多路模拟信号。STM32F411CEU6 是 48 引脚的 Cortex-M4F 主控,主频…

2026/8/28 16:16:48

实测才敢推 AI论文网站 2026最新测评与推荐

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。一、综…

2026/8/28 16:16:50

2026必备!AI论文网站测评:最新推荐与深度对比

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

2026/8/28 11:06:45

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…