Lecture 03 学习讲义
正文
工具
按问题查找
Lecture 034 · 缓存节约什么,不能节约什么?

4 · 缓存节约什么,不能节约什么?

独立阅读

并入相关学习路径

同一CLIP缓存、exact/IVF搜索、延迟/扫描量、区域交互基线

4 · 缓存节约什么,不能节约什么?

下表是同一 N=24,Q=12,d=512N=24,Q=12,d=512 任务的解析工作量,不是把未执行的全部逐对编码写成实测。每次“样本编码”指一个图片或一条文字通过对应编码器;批处理调用可以一次处理多个样本,二者不相等。

组织方式 图像样本编码 文字样本编码 相似度计算 可复用内容
每对都重编码 288 288 288 个512维点积 无
双编码器缓存 24(入库一次) 12 288 个512维点积 图像向量可跨查询复用
新增一条查询 0 1 exact为24个点积 原图像库不变
IVF nprobe=1 入库同上 查询同上 每查询8个中心点积+平均4.17个图片点积 中心、倒排表、图片向量

图片矩阵为 24×512×4=49,15224×512×4=49,152 字节;8个中心另占16,384字节,倒排 ID 另占192字节(保存基准使用的 int64)。这没有计入 Python 对象、图片文件和模型权重,不能直接称整个服务的内存。

2026-09-22 的全部实测编码还包括候选与关系扩展,共 36 个图像样本和24条文字,分别以9个图像批次和1个文字批次编码;另做两对逐对重编码核验(额外2图+2文),与缓存点积最大差8.94×10⁻⁸。将CLIP按配对重复调用,算的仍然是 f(I)⊤g(T)f(I)^\top g(T),并没有出现图文联合注意力。

这次36图编码含预处理共2.726秒、24文共0.205秒,是一趟本地CPU墙钟时间,不含模型加载/下载,不能当作稳定线上延迟。代码另行测量缓存搜索分布,已经在上表展示。更换模型、revision、预处理或图片内容会使旧缓存失效;只增加候选文字不会改变已有图片向量。