跳到主要内容

171 篇博文 含有标签「rag」

查看所有标签

向量维度税:嵌入维度如何悄然侵蚀你的预算

· 阅读需 9 分钟
Tian Pan
Software Engineer

大多数构建 RAG 系统的团队从不思考嵌入维度的问题。他们直接选用 text-embedding-3-large,保留默认的 3072 维度,然后继续推进。在处理 1 万份文档时,这无关紧要。但在处理 1000 万份文档时,你已经给云服务商每月多付了 30 美元的存储费用,而实际上只需 3.75 美元。在处理 1 亿份文档时,你面对的是 1TB 的 float32 数据,其中大部分并没有物尽其用。

嵌入维度与实际检索质量之间的关系,远弱于维度与运营成本之间的关系。这个差距——你实际支付的成本与所获得的质量之间的鸿沟——就是向量维度税。

知识半衰期问题:为什么你的 RAG 系统现在就已经出错了

· 阅读需 10 分钟
Tian Pan
Software Engineer

你的 RAG 系统通过了所有检索基准测试。准确率看起来很稳健。LLM 评估器评分全部绿灯。然而,在你的索引某处,存在一份描述八个月前已废弃 API 端点的文档、一个已不复存在的定价层级,以及一项在第三季度被新法规取代的合规政策。检索器对此毫不知情。语义相似度没有时间概念。

这就是知识半衰期问题:一种隐蔽的失效模式——RAG 系统在你所有监控指标上看起来健康运行,却在向用户提供越来越陈旧的决策依据。73% 的组织报告称,RAG 部署在 90 天内出现准确率下滑——原因不是检索架构缺陷或 Embedding 模型质量问题,而是没有人将知识过期建模为可靠性关注点。

为什么你的应用日志无法还原 AI 决策

· 阅读需 12 分钟
Tian Pan
Software Engineer

一个 AI 系统将某份求职申请标记为低优先级。候选人提出申诉。法务部门向工程团队询问:"请展示模型当时看到的确切内容、检索的文档、触发的策略规则以及生成的置信度分数。"工程师打开日志,发现的是:时间戳、HTTP 200、响应体,以及延迟指标。其余的信息已经消失。

这不是日志记录的失败。按照所有传统标准,日志是完整的。问题在于,应用日志从来就不是为记录推理过程而设计的——而 AI 系统不只是在执行代码,它们做出的是依赖上下文的概率性决策,只有给定决策时刻存在的完整输入上下文,才能被理解。

面向 Agent 与 RAG 的分块:为什么一套方案会同时拖累两者

· 阅读需 11 分钟
Tian Pan
Software Engineer

大多数团队选择一个分块大小,针对检索质量进行调优,然后就此止步。接着,他们在同一个索引上构建一个 Agent,并纳闷为什么 Agent 会以奇怪的方式失败——它只执行了一半的工作流,忽略了条件逻辑,或者根据不完整的指令自信地采取行动。使你的 NDCG 分数最高的分块大小,恰恰是让你的 Agent 变得不可靠的原因。

RAG 检索和 Agent 执行并不是同一个问题。它们有不同的目标、不同的失败模式,以及对什么是“好的分块”有着根本不同的定义。当你针对其中之一优化分块时,你就在系统性地削弱另一个。大多数团队直到已经在错误的架构基础上构建完产品后才意识到这一点。

上下文长度军备竞赛:为什么填满窗口是错误的目标

· 阅读需 8 分钟
Tian Pan
Software Engineer

每隔六个月,就会有一款配备更大上下文窗口的模型问世。GPT-4.1 达到了 100 万 Token,Gemini 2.5 紧随其后,达到 200 万,而 Llama 4 如今更是号称支持 1000 万 Token。隐含的承诺是:把所有内容都塞进去,不用再纠结该放什么,让模型自己搞定。

这个承诺在生产环境中站不住脚。一项 2024 年针对 18 个主流 LLM 的研究发现,随着输入长度增加,每一个模型的性能都出现下降——不是某些模型,而是每一个。上下文窗口是天花板,而非地板。把它当作地板来用的团队,正在以痛苦的方式发现这一点。

嵌入微调差距:通用向量并不理解你特定领域的“相关性”含义

· 阅读需 13 分钟
Tian Pan
Software Engineer

你的 RAG 流水线在理论上看起来很扎实:分块很清晰,向量库已建立索引,延迟也在可接受范围内。但用户一直在抱怨结果是错的 —— 并不是完全错误,而是在关键细节上“稍微”有些偏差。检索到的片段讨论了正确的概念,但时间点不对。它涵盖了正确的主题,但司法管辖区不对。它提到了正确的产品,但缺少了使其真正有用的库存信号。

这就是嵌入微调鸿沟。通用嵌入模型被训练用来编码语义相似性 —— 即两个文本意思大致相同的属性。但这并不等同于相关性。相关性是特定于领域的、对上下文敏感的,并且对于在互联网规模的通用语料库上训练的模型来说通常是不可见的。

LLM 应用的特征存储模式:停止检索那些你可以预计算的内容

· 阅读需 12 分钟
Tian Pan
Software Engineer

大多数构建 LLM 应用的团队最终都会趋向于同一种临时架构:散乱的计算用户摘要的定时任务(cron jobs),每次请求都要重新查询的向量数据库,因延迟到了令人尴尬的地步而添加的 Redis 缓存,以及三个对“用户偏好”定义略有不同的代码库。通常只有在生产事故发生后,他们才会意识到自己构建了什么:一个特征存储(feature store)—— 而且是一个拼凑出来的劣质品。

特征存储是传统机器学习(ML)基础设施中经过实战检验的最成熟模式之一。当有意识地将其应用于 LLM 上下文组装时,它可以消除困扰大多数检索流水线的延迟、成本和一致性问题。本文将解释其原理。

多语言 RAG 检索鸿沟:为什么跨语言查询会悄无声息地破坏你的向量搜索

· 阅读需 14 分钟
Tian Pan
Software Engineer

一个团队构建了一个 RAG 系统。英语检索召回率达到了 94%。他们发布了产品。三个月后,来自法国和德国用户的支持工单堆积如山——聊天机器人不断返回无关结果或根本没有结果。工程师们查看他们的监控仪表盘。整体召回率:91%。看起来一切正常。

语料库是英语。嵌入模型(Embedding model)仅支持英语。用户则不然。每一个法语查询都被嵌入到一个向量空间中,而这个空间的设计初衷从未考虑过与它所检索的英语文档共享坐标。余弦相似度并不低——但它们在几何上毫无意义。而且因为聚合指标掩盖了分布问题,在用户大声抱怨之前,这个问题是不可见的。

这就是多语言 RAG 检索差距,也是服务于非英语受众的生产级 AI 系统中最常见的静默失败模式之一。

当 RAG 让你的 AI 变差:创造力与事实锚定的权衡

· 阅读需 10 分钟
Tian Pan
Software Engineer

某家产品公司的团队为市场部门构建了一款头脑风暴助手。他们在文档语料库——营销简报、品牌指南、竞品分析——上添加了 RAG,认为更丰富的上下文会产出更好的创意。三周后,使用率下降了。定性反馈如下:输出"太安全"、"太可预测"、"感觉只是在重混我们现有的东西"。他们从头脑风暴功能中移除了检索。创意改善了,参与度也恢复了。

这种模式在实践中出现的频率远比人们承认的要高。检索增强生成已成为将 LLM 输出锚定到事实的默认架构,对于事实性任务,它当之无愧。但对于生成类任务——创意构思、创意写作、新颖方案生成——添加检索层可能会悄然压低模型产出的上限。这不是因为检索坏了,而恰恰是因为它按照设计在正常运转。

重排序才是核心:为什么检索系统的瓶颈从来不在索引

· 阅读需 12 分钟
Tian Pan
Software Engineer

构建 RAG 系统的团队几乎普遍都会遇到同样的瓶颈:他们花一周时间调整 HNSW 索引参数,添加乘积量化(product quantization),将 recall@100 从 0.81 提高到 0.87 —— 然后发现 LLM 的输出质量几乎没有任何改观。投入数月努力所基于的假设是:更好的索引等于更好的回答。事实并非如此。瓶颈从来不在索引上。

真正的卡点在于候选集与上下文窗口(context window)之间的重排序(ranking)步骤。你喂给 LLM 的内容决定了它的输出,而重排序的工作就是确保那些真正相关的文档,而不仅仅是语义上最相似的文档,能够进入上下文。这种区别比你调整的任何 HNSW 配置都更重要。

工具输出 Schema 设计:你的工具响应如何塑造智能体推理

· 阅读需 9 分钟
Tian Pan
Software Engineer

大多数团队在设计 LLM 智能体时,会花大量精力在工具选择和系统提示措辞上。而几乎没有人认真思考工具返回什么内容。这是一个后果不断叠加的错误——因为工具响应的结构决定了智能体能否有效推理、消耗多少上下文窗口,以及产生幻觉解读的频率。

工具输出 schema 设计是基础设施,而非管道细节。设计失误,你的智能体将以表面上像推理问题的方式失败,而根源其实是 schema 问题。

向量数据库分片:HNSW为何在分区边界失效及应对策略

· 阅读需 10 分钟
Tian Pan
Software Engineer

大多数向量数据库教程只展示如何插入百万条嵌入并运行查询。但它们不会告诉你六个月后会发生什么——当你的语料库已经超出单节点承载能力,你不得不对整个检索管道所依赖的HNSW索引进行分片时,实际情况如何。答案是:供应商在营销材料中刻意回避的事实是,HNSW图在分区方式上存在特殊阻力,会导致无声的召回率下降,而恢复这一质量所需的运营模式会带来真实的复杂性。

本文将深入探讨HNSW分片失效的技术原因、实际中召回率损失的表现,以及团队在超出单节点容量后用于维持检索精度的运营模式。