十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

RAG 的延迟和成本,先把链路拆开看

RAG 的延迟和成本,先把链路拆开看 RAG 的延迟和成本先把链路拆开看检索增强生成系统经常同时面对两个抱怨回答太慢调用费用太高。于是有人把召回数量调小有人直接换更便宜的模型也有人把更多资料塞进上下文希望模型“总能找到答案”。这些做法可能偶尔有效但如果没有知道时间和 token 花在了哪里优化很容易以牺牲答案质量为代价。RAG 的一条请求通常包含查询理解、检索、过滤或重排序、上下文组装、模型生成和后处理。不同业务的瓶颈不同内部文档问答可能卡在权限过滤复杂知识库可能卡在重排序长回答可能主要消耗在模型生成。先针对真实请求建立分段画像再决定如何取舍才不会用一种手段解决所有问题。先定义延迟与质量的目标“越快越好”并不是一个可执行目标。客服的短问答、分析人员的长文档查询、后台批量摘要和面向外部用户的搜索允许的等待时间与答案完整性不同。需要先明确用户在什么场景提出问题系统是否必须给出处、能否回答“不确定”以及什么样的遗漏或错误不可接受。质量指标也不能只看模型是否输出了一段通顺文字。更接近检索链路的指标包括正确资料是否被召回最终上下文是否包含必要证据回答是否引用了不相关内容用户能否找到来源。对高风险领域还应有人工抽检或基于权威答案的评测不能单凭模型自评判断“质量不错”。延迟统计应按阶段和请求类型拆分。只报一个全链路平均值会掩盖长尾问题只盯模型生成时间又会遗漏检索服务或权限检查的排队。记录时也要避免把完整用户问题和敏感文档无差别写入监控。召回不是越多越稳扩大候选集合可能提高找到相关资料的机会但也会增加后续成本。向量检索、关键词检索、元数据过滤和重排序各有角色。一个合理的分层过程通常先用较轻量的条件缩小范围再对有限候选做更昂贵的比较而不是让所有文档都经过最重的模型。具体候选数量不应照搬固定经验。文档长度、领域术语、索引质量、查询类型和硬件条件都会影响结果。可以使用一批代表性问题逐步调整初筛和精排范围观察召回质量、时延和资源使用如何变化。若减少候选几乎不影响答案依据就没有必要继续付出后续计算成本若关键文档经常被漏掉则要优先检查切分、索引和过滤条件。混合检索也不保证天然更好。关键词匹配对精确术语有用向量相似度对表达变化有帮助但两者的分数尺度和偏差不同。组合前应在自有数据上验证不要因为方案名字完整就假设召回一定提升。重排序要用在最需要的地方交叉编码器或其他精排模型能够更细地比较问题与文档但成本通常高于初筛。若对很长的候选列表、很长的文本同时精排排队和资源占用会迅速增加。把精排留给已通过基础过滤的候选并限制输入长度是常见的工程控制方式。输入截断要谨慎。文档的关键信息可能不在开头简单截取前几个字符会造成隐蔽遗漏。更好的做法是根据文档结构、段落边界、标题和查询相关片段选择内容必要时保留指向原文的链接让用户或后续流程可以查看完整上下文。重排序失败、模型不可用或超过预算时也要有可解释的退路。可以回退到基础检索结果并标明限制或提示稍后重试。不能为了维持“高质量”而让所有请求无限等待。上下文预算是产品规则不是字符串截断上下文越长输入成本和等待通常越高也会增加重复、冲突和无关内容干扰。设置 token 预算很有必要但预算应服务于任务回答需要多少证据引用要保留哪些原文模型输出预留多少空间是否有系统指令和工具结果占用窗口这些都要一起计算。组装上下文时可去除重复段落、优先保留与问题最相关且来源可靠的片段并保持资料的基本出处。压缩或摘要能节省空间但它本身可能丢失条件和限定语。对需要精确引用的场景不能把模型生成的摘要当作原始证据应保留可回查的原文位置。当资料相互冲突或检索置信不足时系统应允许回答不确定而不是在预算内硬拼出一个结论。成本优化若导致模型更自信地回答错误内容最终代价通常更高。缓存要有正确性边界缓存可以减少重复检索和生成但相似问题不一定需要相同答案。用户权限、数据更新时间、地区、会话上下文和检索版本都会影响结果。缓存键或命中判定必须包含这些边界不能让一个用户的受限内容因为“语义相近”被返回给另一个用户。对稳定的常见问题预生成答案或结果缓存可能有效对实时数据或个性化问题则应短期缓存、局部复用或直接绕过。缓存命中率高不等于策略正确还要观察命中后的用户反馈、资料版本和权限校验是否一致。缓存失效也需要可观察。知识库更新、文档权限变化或模型版本更换后旧答案何时不能再使用应有明确策略。否则节省下来的调用成本会以过时答案的形式转移给用户和支持团队。用指标支持取舍而不是自动盲调可观测性至少应覆盖检索、精排、上下文组装、模型调用和后处理的时延与失败还要记录候选数量、上下文 token、输出 token、缓存结果、模型与索引版本。将这些数据与质量抽检、引用点击和用户反馈关联才能判断某次优化究竟改善了什么。动态缩减候选或上下文可以作为保护措施但触发条件应经过验证。突然把预算压得很低可能只是在高峰期系统性降低答案质量。对重要任务可以优先限流、排队或回退到检索摘要而不是悄悄删掉全部证据。RAG 的成本和延迟没有单一最优值。清楚用户任务、分段测量链路、在自有评测中比较候选和预算、为缓存与失败留出边界系统才能在速度、费用和可靠性之间做出可解释的取舍。
返回列表