- 博客(317)
- 收藏
- 关注
原创 事故复盘报告的可视化:用时间线和因果图完整还原故障过程
事故复盘可视化的核心价值不是"好看",而是把复杂故障的故事讲清楚。时间线回答"发生了什么",因果图回答"为什么会这样",鱼骨图回答"根因在哪"。三张图配上结构化的数据模型,比 3000 字的纯文本更能在团队间建立共识。代码量不大,但模型设计要花心思——CausalLink的relation类型和confidence字段是建立可信度的关键,不要偷懒全部标causes。
2026-07-24 14:44:35
1
原创 Geo-向量混合检索:地理位置和语义向量的联合检索在本地生活场景的应用
Geo-向量混合检索不是简单地把两个分数加权相加,而是要在索引层就做好联合查询,避免多次网络往返。Redis/RediSearch 恰好能在一个FT.SEARCH里同时处理 Geo 和 KNN,省去了多引擎编排的复杂度。在本地生活场景里,距离的重要性天然高于语义匹配度——把 w_geo 设为最高值不会错的,错的是没对距离衰减函数的上限做约束。
2026-07-24 14:42:15
8
原创 大规模文档管理系统中的 RAG 架构:权限、版本和检索的三位一体设计
权限告诉你"能不能看",版本告诉你"该看哪个",检索告诉你"哪个最相关"。三者不是独立的 pipeline 阶段,而是交织在一起的约束条件。架构上做对一件事就能避免大部分坑:让权限和版本成为检索的前置过滤器,而不是结果阶段的掩码。上线三个月后,安全团队没再找过我们——这对做过企业系统的工程师来说,就是最好的 KPI 了。
2026-07-24 14:38:15
12
原创 Prompt 工程在 Agent 测试中的角色:如何用 Prompt 驱动自动回归测试
Prompt-Driven Testing 不是银弹,它更像是给 Agent 测试加了一层"智能容差"。传统测试确保 Agent 没有"硬故障"(崩溃、超时、格式错误),Prompt 评估确保 Agent 没有"软故障"(理解偏差、信息遗漏、风格不合适)。两者配合,才是 Agent 回归测试的完整方案。自从在 CI 里挂上这套,Agent 发版前的人工测试时间从 2 小时降到了 20 分钟——QA 工程师终于有时间去做他们真正擅长的事了:写更多刁钻的测试用例。
2026-07-24 14:33:45
5
原创 Redis 监控指标选择:什么指标真正反映向量搜索服务的健康状态
告诉你索引是不是在正常工作;FT.PROFILE的延迟分解告诉你瓶颈在哪;SLOWLOG里的FT.SEARCH告诉你哪些查询需要优化;的变化率告诉你什么时候该重建索引。其它的指标,除非你在排查具体问题,否则少看少焦虑。凌晨三点的报警电话,就让它停留在梦里吧。
2026-07-24 14:27:11
35
原创 RAG 在专利检索中的应用:技术特征提取和跨语言专利比对方案
RAG 做专利检索的关键改造就三点:把文档级检索升级为技术特征级检索;用多语言模型替代翻译管线来降低跨语言检索的信息损失;把检索结果组织为可解释的对比报告而非原始列表。跑下来中文查英文的 Top-10 准确率比传统关键词方案高了约 40%,但说实话这个数字看看就好——专利检索的最终裁判永远是人类代理人,RAG 只是一个越来越聪明的助理。
2026-07-24 14:21:54
24
原创 Python 项目配置管理:用 pydantic-settings 管理 RAG 服务的多环境配置
pydantic-settings 治好了我团队的"配置分裂症"。类型校验让拼写错误在启动时就暴露,env_prefix让各子服务隔离但不割裂,SecretStr让敏感信息不再污染 git。整个 RAG 服务集群用这套方案跑了半年,配置相关的事故从每月一两次降到零。唯一的副作用是新人要花半小时理解嵌套配置的加载逻辑——我在入职文档里画了张 Mermaid 时序图,这个问题也解决了。
2026-07-24 14:17:54
35
原创 LangChain 错误处理最佳实践:如何让 Agent 在异常时优雅降级而非崩溃
LangChain 的 Agent 错误处理,说白了就三句话:不要把异常原封不动地抛到 Agent 循环里,LLM 看不懂 stack trace;用结构化的ToolResult替代原始异常,让 LLM 自己做决策;设置错误预算避免无限重试。这套方案跑了一个季度下来,Agent 的非正常终止率从 8.7% 降到了 0.3%,剩下那 0.3% 基本都是用户自己关了浏览器——这种错误 Agent 确实处理不了。
2026-07-24 14:12:04
37
原创 从单体 Agent 到 Agent 平台:一次架构迁移的技术方案和组织挑战
从单体到平台的迁移,代码层面的工作量其实只占 30%,剩下 70% 是组织协调——说服业务团队接受共享能力而非各自造轮子、建立 Prompt 和 Tool 的治理规范、提供够好用的开发者工具降低使用门槛。把 Agent 从代码变成配置,让新建一个 Agent 的时间从天级降到分钟级。跑起来之后最大的感受是:终于不用在 4 个 repo 之间来回切改同一行 LLM 调用的参数了。
2026-07-24 14:07:14
20
原创 招聘筛选 Agent:简历解析和岗位匹配的 RAG 工程方案
RAG 做招聘筛选这件事,本质上是用向量空间的可计算性替代了人工阅读的模糊判断。工程要点就三个:简历的结构化解析决定了数据质量的天花板;chunk 策略和混合检索决定了匹配的精度地板;LLM 的精排决定了最终交付的专业度和可解释性。代码量不大,但每个环节的调优都是工程功力的体现。线上跑起来之后,一个 HR 从一天筛 300 份变成一天审核 AI 推荐的 30 份,省下来的时间足够她们去喝杯咖啡了——哦不,是去做更重要的候选人沟通。
2026-07-24 14:03:04
8
原创 PPT 级技术架构图制作:从架构设计到可视化表达的完整工作流
架构图绘制不是画图技能问题,是架构思维的可视化表达能力问题。先分层,再填充:一张好的架构图,自上而下至少有 3-4 个清晰的逻辑层。用代码管理架构图:Mermaid + Python 代码生成,把架构图纳入 Git 版本管理。颜色和连线有语义:不是随机选颜色——红色 = 瓶颈,绿色 = 存储,虚线 = 异步。给不同受众画不同的图:老板看大局,开发看接口,运维看拓扑。架构图是活的:架构在演进,图必须跟随更新。做到"代码变了,图自动变"是终极目标。
2026-07-23 07:51:56
5
原创 向量搜索在代码库中的应用:用语义检索替代 grep 搜索代码片段
代码向量搜索是 grep 的语义升维。grep 回答"哪里包含这个字符串",向量搜索回答"哪里实现了这个功能"。函数级分块:不要把整个文件做 embedding。每个函数一个 chunk,chunk 中注入上下文(import、类名)。AST 解析:不要用正则解析代码——Python 的ast模块是标准库,免费且准确。双索引策略:代码专用 embedding(CodeBERT)+ 通用 embedding(text-embedding-3),RRF 融合结果。增量索引。
2026-07-23 07:46:36
56
原创 短视频内容理解 Agent:多模态 embedding 在视频检索中的工程挑战
多模态视频 embedding 是视频 RAG 的基础设施。关键帧提取:PySceneDetect 场景分割 + 均匀采样降级,8-16 帧是最佳性价比区间。多模态融合:视觉为主(0.5),音频和字幕为辅(0.3 + 0.2)。字幕信息密度高但覆盖不全。时序信息:时间注意力池化(最后 3 帧加倍)是一个简单有效的时序编码方案。视频 RAG 的工程复杂度远高于文本 RAG,核心原因在于需要进行多模态的解码、理解和融合。
2026-07-23 07:42:45
56
原创 Prompt 在游戏 NPC Agent 中的应用:角色一致性、记忆和交互逻辑
NPC Agent 的 Prompt 工程是一门"角色约束的艺术"——不是让 LLM 自由发挥,而是通过多层约束把 LLM 锁定在一个角色里。角色档案:定义"我是谁"——身份、性格、故事。知识边界:定义"我知道什么"——不能超出。禁令列表:定义"我绝对不能做什么"——最后防线。记忆系统:提供上下文——"我们之前聊过什么"。关系系统:提供情感上下文——"我对你的好感度是多少"。一致性自检:兜底——"我刚才说的符合角色吗?前五层是约束的注入,第六层是约束的验证。两者缺一不可。
2026-07-23 07:40:05
66
原创 Redis 连接管理优化:连接池大小、空闲超时和健康检查的最佳配置
场景是否需要单机单 Pod Redis默认连接池即可多 Pod 共享 Redis需要严格控制 max_connectionsRedis 是性能瓶颈必须优化连接管理有连接泄露历史必须加泄露检测使用 Redis Cluster每个节点独立连接池Redis 连接池管理不是设置几个参数就完事了。配置是起点:根据并发模型计算合理的连接池大小。监控是必须:跟踪连接数、等待时间、错误率。和是排查利器。泄露是定时炸弹。
2026-07-23 07:35:25
155
原创 RAG 在新闻摘要中的应用:多源信息聚合和时效性敏感的检索策略
新闻 RAG 的最大挑战是"如何在 24 小时内覆盖尽可能多的新闻,同时不遗漏重要事件"。分时检索:不是一次性拉取 100 篇,而是分 6 个时间窗口(每 4 小时一段),每个窗口取 Top-20,最终合并去重。这样保证了时效分布均匀。增量更新:突发新闻出现时(如地震、重大事件),触发增量检索和摘要更新。时间是检索的核心维度,而不是辅助过滤条件。时间衰减是必修课:新鲜度必须嵌入到检索评分中,而不是事后过滤。事件去重比检索召回更重要。
2026-07-23 07:30:25
172
原创 Python 部署优化:使用 Docker 多阶段构建缩小 RAG 服务镜像体积
冷启动:从 3 分钟降到 12 秒,K8s 滚动更新几乎无感知。镜像分发:1.8GB → 380MB,跨 Region 分发时间从 40 秒降到 8 秒。磁盘占用:节点磁盘使用率从 90% 降到 35%,不再触发驱逐。安全攻击面:移除 gcc、cmake 等编译工具后,CVE 数量减少 40%。多阶段构建:编译和运行分离。:排除所有不需要上镜像的文件。依赖最小化:embedding 模型走 API,torch 不上生产镜像。镜像优化不是一次性工作。
2026-07-23 07:25:15
158
原创 LangChain RunnableBranch:条件路由在 Agent 决策树中的实战应用
是把 Agent 的决策树从"手写 if-else 面条代码"变成"声明式、可组合、可测试的 LCEL 链"的关键工具。把每个分支封装为独立的 Runnable——独立测试、独立部署、独立迭代。条件函数基于完整的 AgentState——不只是意图,还有用户上下文和历史。后处理统一——所有分支的输出经过同一个后处理环节,保证输出格式和安全一致。超过 10 个分支用层级路由——不要让一个 RunnableBranch 处理所有情况。
2026-07-23 07:18:44
194
原创 Agent 商业化的五个坑:技术之外你还需要考虑的合规、成本和用户
Agent 商业化,技术只占 30% 的难度。合规是入场券:没有等保/数据分级/审计日志,大企业根本不会考虑你。成本是命脉:Token 消耗失控,商业模式就不可持续。必须做模型分层 + 缓存 + 预算控制。质量一致性是口碑:客户不会记得你 99 次正确的回答,但会记得那 1 次致命的错误。用户预期是底线:宁可让用户知道 Agent 不完美,也不要让用户对它产生过度期待后失望。定价是艺术:你的成本按 Token,但客户只想按效果付费。找到让双方都舒服的平衡点。
2026-07-23 07:11:54
152
原创 数据标注 Agent:用 RAG+LLM 加速 NLP 标注任务的工程方案
把标注规范从"人类需要记忆的长文档"变成了"Agent 可以检索的知识库"。标注人员从"读规范→记规则→判类别"变成了"看 Agent 的建议→确认/修改"。这个角色转变让标注效率提升了 3 倍,一致性从 85% 提升到 96%。从高置信度自动标注开始:先让 Agent 只处理最明确的 30%,建立信任。规则检索比 Few-shot 更重要:规范中的规则定义比历史样本更能约束 LLM 的行为。一致性检查是最后防线:标注完成后做交叉比对,发现矛盾样本人工仲裁。增量学习要加门禁。
2026-07-23 07:08:45
205
原创 系统巡检报告的可视化:用监控图、拓扑图和趋势图替代文字流水账
巡检可视化的核心价值不在于"把数字变成图",而在于把趋势从数据中"浮现"出来,让人能一眼看到正在往什么方向发展。雷达图看全局,拓扑图看依赖,趋势图看未来,热力图看异常分布。实践中最有冲击力的是趋势预测图——当你把"磁盘将在 3 天后满"这个预测直接标在一条红色虚线上,比任何文字警告都有效。运维工程师看到这张图,不需要你说服他扩容,他自己就去开 ticket 了。工具再好也替代不了人的判断,但好工具能让人的判断更快、更准。巡检可视化做的就是这个事。
2026-07-22 10:21:30
8
原创 向量检索在推荐系统中的应用:用户行为向量与内容向量的融合排序
它把协同过滤的"用户-内容交互矩阵"变成了一个可检索的向量空间。用户和内容在同一个向量空间里,推荐就变成了一个 KNN 搜索问题。用户塔离线,内容塔在线——分离计算,降低线上延迟。时间衰减 + 行为加权——让用户向量反映最近的、最强烈的兴趣,而不是历史堆砌。多路召回 + MMR 重排——KNN 不能独立工作,需要标签和热门互补,MMR 保证多样性。分层缓存——用户向量缓存 1 小时,内容向量缓存长期。缓存命中率 > 95%,embedding 计算开销降到可忽略。
2026-07-22 10:17:50
76
原创 智能运维 Agent 的日志分析 RAG:海量日志的实时索引与异常检索方案
日志 RAG 的本质是把"运维的隐性经验"变成可检索的向量知识。一个好的运维工程师看到不会慌,因为他见过无数次了,知道大概率是网络抖动或连接池耗尽。但新人可能直接拉群喊 SRE。日志 RAG 的价值就在于:让机器记住"这个错误之前发生过,上次是这么解决的",然后在每次类似错误发生时自动匹配最可能的根因。Drain 模板化:先把海量日志压缩成模式,降低索引量级。ES + 向量双索引:全文检索保证精确性,向量检索保证语义性。LLM 综合诊断:多路检索结果 + 当前上下文 → 生成诊断建议。
2026-07-22 10:14:10
84
原创 Prompt 模板在代码生成 Agent 中的最佳实践:从需求到可运行代码
约束越多,质量越高——但别过度。找到让代码"可用"的最小约束集。上下文比 Prompt 本身更重要——告诉 LLM 项目里已有的函数和类型,比教它写代码规范更有效。自检 + 外检——LLM 自查是辅助,ast.parse__import__mypy才是门神。验证器要独立于 LLM——不要在 Prompt 里让 LLM "保证代码正确",它做不到。你用 Python 解释器来保证。设计良好的 Prompt 模板就像写好了一个"代码规范文档"——新来的 LLM 读一遍就能按你的风格写代码。
2026-07-22 10:09:20
73
原创 Redis 灾备方案:异地多活场景下向量索引的同步延迟和一致性取舍
Redis 异地多活在向量检索场景下,核心挑战不是数据复制本身,而是索引重建的时间窗口。数据复制:异步复制,接受 50ms 的数据丢失窗口。这是所有 Redis 主从方案的固有代价。索引重建:HNSW 索引重建需要时间,需要在"索引就绪"后才将流量切过来。健康检查必须区分数据就绪和索引就绪。一致性:LWW 版本号策略足够简单有效。不要在这个层次追求分布式事务——Redis 不是为此设计的。写入降级:目标 Region 不可用时自动写入其他 Region,保证可用性优先于一致性。
2026-07-22 10:03:59
127
原创 RAG 在工业设备维修手册中的应用:技术术语的向量化检索挑战
工业维修 RAG 的核心挑战不是向量检索算法本身,而是让 embedding 模型"认识"那些对通用模型来说完全陌生的工业术语。分块时保护术语完整性:不在术语中间切断。向量化时加权术语:让术语在 embedding 中占据更大比重。检索时扩展同义词:提高不同说法下的召回率。融合时平衡精确与召回:BM25 精确匹配 + 向量语义补充 + RRF 融合。通用 embedding 模型像是一个"能读所有书的通才",但在工业领域,你需要教它认识这个领域的"方言"。术语词典就是那本方言字典。
2026-07-22 10:00:39
122
原创 Python 代码质量保障:Ruff、mypy 和 pytest 在 RAG 项目中的协作配置
Ruff(防线一):代码格式和基本 Lint,自动修复,零人工成本。mypy(防线二):类型检查。RAG 项目里最重要的是保证向量维度和阈值类型正确,这两个是"隐式 bug"的重灾区。pytest(防线三):逻辑正确性验证。Mock 保证了测试速度,维度校验保证了运行时安全。这三者配置好之后,代码质量提升是非常直观的——我们项目里 embedding 维度不匹配的 bug 从"每周至少一次"降到了零。不是说工程师变厉害了,是 mypy 替我们挡住了。
2026-07-22 09:55:19
186
原创 LangChain 自定义 LLM Wrapper:封装自部署模型为标准接口的工程实践
格式转换在 Wrapper 内部完成:外部传入的自动转为 vLLM 需要的 OpenAI Chat 格式,响应也自动转回ChatResult。连接池复用:使用的连接池,避免每次请求重新建立 TCP 连接。指数退避重试:2s → 4s → 8s,最多 3 次重试。降级链路:vLLM 集群完全不可用时,自动切换到本机 Ollama 运行的小模型,保住基础可用性。LangChain 的继承体系为自部署模型提供了一个干净的接入点。通过实现。
2026-07-22 09:51:39
214
原创 Agent 系统从原型到 10 万 DAU 的技术演进:踩过的坑和学到的教训
Agent 系统从原型到生产,技术挑战远小于工程挑战。"让 LLM 回答问题"只需要 100 行 Python。但"让 LLM 在 10 万并发下稳定地回答问题,同时控制成本、防止注入、保证质量"——这是一个系统工程问题,而不是 LLM 问题。安全(防注入、防泄漏、防越权)——这是底线,出了事故会被开除。稳定(异步化、重试、降级、限流)——用户能接受慢,不能接受挂。质量(检索准确率、幻觉率、回答后编辑率)——决定了用户会不会回来。成本。
2026-07-22 09:46:49
187
原创 内容审核 Agent:多模态内容安全检测系统的 RAG 增强方案
把审核标准的隐性知识变成可检索的显性向量。纯 LLM 审核像一个刚入职的审核员——能力有,但不了解你的平台规范。RAG 相当于给他配了一本"审核判例手册",每次审核前先翻翻类似案例是怎么判的,准确率自然上去了。第一步:规则引擎兜底,手机号/身份证/银行卡直接拦截,不走 LLM。第二步:搭建案例向量库,从历史审核日志中抽取高置信度判例入库。第三步:接入 LLM 综合判断,RAG 案例作为上下文增强,人工复审兜底。审核领域的容错原则是"宁可多审不漏审"。RAG 增强让这个原则有了工程上的落地路径。
2026-07-22 09:42:49
210
原创 RAG 在教育领域的应用:基于课程知识库的个性化学习助手设计
教育RAG和通用RAG的最大区别是:通用RAG只需要"找到相关信息并回答",教育RAG还需要"判断学生为什么不会"。这个"为什么"的答案在知识图谱的前置依赖关系中——学生不会解二次函数,很可能是因为一次函数或者方程的知识有漏洞。知识图谱+学生模型+RAG,这三者加在一起,才能把"AI学习助手"从"会答题的机器人"升级为"能诊断问题的老师"。把每次提问变成一个教学诊断的机会,比单纯给出正确答案更有教育价值。
2026-07-21 23:52:13
186
原创 Python 项目 CI/CD 最佳实践:RAG 服务的测试、构建和自动部署流水线
RAG服务的CI/CD和传统Web服务最大的区别在于:你不仅要测"代码能不能跑",还要测"检索准不准"。在传统CI的Lint→Test→Build→Deploy流程中,Test环节需要增加RAG特有的质量测试(检索召回率、Embedding一致性、答案质量)。Deploy环节需要金丝雀发布+自动回滚,因为RAG服务的"正常"不是简单的200 OK,而是回答质量是否符合预期。
2026-07-21 23:49:03
153
原创 LlamaIndex 在大数据量场景的性能瓶颈分析与工程化解决方案
LlamaIndex在中小规模下是个很好的框架,它的抽象层让RAG开发效率很高。但到了百万级文档,你需要自己加三个东西:多进程数据Pipeline突破单线程瓶颈、分区索引突破单内存瓶颈、多级缓存突破重复计算瓶颈。这些改造不是让你离开LlamaIndex,而是在它的基础上做"工程化加固"。框架负责业务逻辑的抽象(Document、Node、Index等概念),你负责性能的优化(并行、分区、缓存)。两者各司其职,才能在百万级规模下保持良好的性能和可维护性。
2026-07-21 23:44:13
191
原创 从 Side Project 到产品:一个 Agent 工具的 6 个月迭代复盘
Side Project做成产品这事儿,技术难度其实只占30%,剩下70%是产品判断、用户洞察、时间管理和坚持。技术上"做出来"的难度确实越来越低(LLM把这个门槛又降了一大截),但"做对""做久"永远不变。产品不是设计出来的,是生长出来的。你最初设计的那些"核心功能",可能一半都没人用;你最初完全没想到的功能(比如我们的API),反而成了用户留存的关键。所以核心策略不是"做对很多事",而是"快速验证哪些事值得做"——把功能当成实验,而不是承诺。
2026-07-21 23:38:33
227
9
原创 法律文档 Agent:长文本合同的条款提取与风险识别 RAG 方案
法律文档RAG的核心挑战不是向量检索本身,而是"结构化信息的保留"——合同是高度结构化的(条款→段落→引用),你把结构拆散再检索,就等于丢失了法律文本最重要的一层信息。双层检索(条款级+段落级)加上跨段引用追踪,本质上就是用多级索引保留这种结构信息,让检索结果不只是"一段相似文本",而是"一个完整条款及其关联条款"。如果你的RAG场景也有类似的"长文本+强结构"特征(除了法律合同,还有技术规范、医疗指南、政策文件),这个双层检索的思路可以复用。在切分文本之前,先把文本的结构信息提取出来作为一级索引。
2026-07-21 23:33:23
203
原创 Agent 项目技术选型复盘:6 个工程决策的当时理由与事后验证
好决策和坯决策的区别不在结果,在过程。一个决策即使事后证明"选错了",如果当时有清晰的理由、完整的记录、明确的触发条件(什么情况下需要重新评估),那它也是一个好决策——因为它为后续调整提供了充分的上下文。这6个决策里,2个(LangChain、Celery)证明选择正确且仍在运行,2个(Redis向量搜索、Embedding服务)需要调整方向,2个(多Agent模式、可观测性)在不同规模下可能需要不同方案。
2026-07-20 23:59:02
162
原创 客服 Agent 系统落地复盘:从 0 到 1 构建企业级智能客服的实践经验
三个月做下来,最大的感受是:Agent不是银弹。它擅长处理有明确工具支持的结构化任务,但在纯自由对话场景下,过度依赖Agent架构反而会增加不稳定性。一个好的客服系统,本质上是把"确定性"和"智能性"结合起来——规则处理确定的部分,Agent处理模糊的部分,人工兜底处理复杂和情绪化的部分。这个系统的代码框架我已经整理到GitHub上了,想直接复用的同学可以在这个脚手架基础上,替换成你们自己的知识库和API工具就差不多了。最关键的是定义好你的工具集——工具越清晰、边界越明确,Agent的稳定性就越高。
2026-07-20 23:53:32
233
原创 技术博客的图表公式:如何让复杂公式和图解协同讲清一个技术概念
技术博客写作中,图、公式、文字是三件套。三者不是独立的,而是互相标注、互相解释、互相增强的关系。先画图,再写文。图是概念的骨架,画清楚图之后,文章的叙述自然就出来了。图-公式对照。用 Markdown 表格建立公式符号到图中节点的映射,这是降低认知负荷最有效的手段。一张图一个点。别怕图多。5 张简洁的小图比 1 张复杂的大图好理解 10 倍。公式前先给直觉。在贴 LaTeX 之前,用一句白话解释"这个公式在算什么"。让读者带着预期去读公式。用工具检查。写完后跑一遍。
2026-07-19 15:28:36
11
原创 向量检索的分布式索引构建:MapReduce 模式在大规模向量建库中的应用
MapReduce 这个 20 年前的概念,在向量建库这个新场景里依然是神器。它的核心价值是把不可并行的任务(全量全局索引构建)变成了可并行的任务(分片局部索引构建 + 中心点二次聚类)。两层聚类是核心:Map 局部聚类 + Reduce 全局聚类,通信量压缩 100×。FAISS IVF 是天然搭档:聚类中心可分治,倒排列表独立可合并。用 ProcessPoolExecutor 绕过 GIL:FAISS 的 K-Means 是 CPU 密集型,多线程没用。
2026-07-19 15:25:05
96
原创 RAG 服务的内存池设计:复用 embedding 模型推理结果减少重复计算
Embedding 缓存是 RAG 服务优化中最"投资回报比"最高的手段之一:几十行代码,几十 MB 内存,能把 embedding 推理量降低 50%-80%。L1 精确匹配:搞定高频重复问题。命中率高、延迟极低、实现最简单。L2 语义匹配:搞定"换个说法问同一个问题"。命中率补充,代价是额外的 FAISS 索引和粗粒度 embedding 推理。生产建议:先从 L1 开始上线,观察命中率。如果命中率已经超过 70%,L2 的价值会打折扣。
2026-07-19 15:20:35
62
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅