用 Rust/WASM 构建 LLM 的开源边缘语义缓存——对架构的合理性检查?[D]
摘要
提议使用 Rust/WASM 在 CDN 边缘构建一个轻量级的开源 LLM 语义缓存,以降低延迟和 API 成本,并寻求社区对架构和用例有效性的反馈。
嘿,大家好。我正在规划一个新的开源基础设施项目,希望能从那些在生产环境中运行高负载 LLM 工作负载的人那里获得关于架构和用例有效性的犀利反馈。**问题:** 基于 Python 的代理/网关会为实时流式 agent 步骤或快速 UI 补全引入过多的延迟开销。此外,集中式语义缓存仍然存在跨区域网络延迟(例如,从伦敦到 us-east-1),而企业 API 成本对于重复/可预测的用户查询(如客户支持或结构化数据提取)来说仍然是一个巨大的瓶颈。**提议的架构:** 目标是构建一个轻量级、零依赖的语义缓存,直接使用从 Rust 编译的 WebAssembly (WASM) 在 CDN 边缘运行,而不是依赖笨重的集中式网关。流程如下:1. **入站提示:** 到达最接近用户的边缘节点(例如,Cloudflare Workers / Fastly Compute)。2. **边缘嵌入:** Rust/WASM 模块拦截原始文本提示,并使用边缘原生轻量级模型(例如,`bge-small-en-v1.5`)立即生成向量。3. **相似度索引检查:** 对边缘向量数据库(如 Cloudflare Vectorize)执行快速的余弦相似度检查,以找到最相似的语义邻居。4. **缓存命中:** 如果相似度 >= 阈值(例如,0.88),则从边缘 KV 存储中拉取完整的生成响应文本,并在约 5 毫秒内返回。主 LLM 提供商永远不会被计费或触及。5. **缓存未命中:** 将流式请求代理到 OpenAI/Anthropic/vLLM,将结果流式返回给客户端,并异步更新边缘向量索引和 KV 存储。**为什么选择 Rust/WASM?** 为了实现代理本身亚毫秒级的执行开销,避免垃圾回收暂停,并保持内存占用极小,适合传统数据库或 Python 脚本无法运行的边缘运行时约束。**我对社区的疑问:** 1. 对于那些在生产环境中运行 LLM 的人(尤其是客户支持、内部 RAG 或自主 agent),你们实际上的语义缓存命中率是多少?在你们的领域中,重复查询的幂律规律是否足够高,足以证明此方案的合理性?2. 在边缘进行语义缓存的最大陷阱是什么?(例如,缓存失效策略、处理系统提示更新或嵌入模型漂移)。3. 你们是否会实际使用一个即插即用的开源模板/CLI,让您可以在自己的边缘账户上快速部署,还是更喜欢集中式 API 网关?
相似文章
@Alacritic_Super: 正在构建AI应用?使用Rust构建的LLM Cache降低API成本并加快响应速度!每次用户…
本文介绍了一个用Rust构建的LLM Cache,通过精确匹配和语义匹配重用之前的答案,以降低API成本并加快响应速度。
I put together a Rust-native, CPU-only implementation of LFM2.5-8B-A1B
作者发布了一个纯Rust、纯CPU的LFM2.5-8B-A1B模型推理实现(4-bit Q4KM量化),解码速度约37 tokens/s,内存占用~7GB,旨在让LLM在廉价VPS或旧机器上可运行。该实现已开源并发布为cargo crate。
@Mayhem4Markets: https://x.com/Mayhem4Markets/status/2069090022117019928
两大主流LLM服务框架SGLang和vLLM的详细技术对比,涵盖KV缓存管理(RadixAttention vs PagedAttention)的架构差异、吞吐量、延迟以及自托管环境的部署考量。
@Alacritic_Super: 如果你在构建生产级 LLM 应用,学习 LLM 缓存。缓存可降低延迟、GPU 利用率和 AP…
本文强调了在生产系统中使用 LLM 缓存的重要性,以减少延迟、GPU 利用率和成本,并介绍了 LMCache,这是一个用于可扩展 LLM 推理的开源 KV 缓存管理层。
LMCache/LMCache
LMCache 是一个开源的KV缓存管理层,用于LLM推理,通过支持跨推理引擎持久化存储和复用KV缓存,减少首Token延迟并提升吞吐量。