超长上下文

目录

一、超长上下文和RAG

二、超长上下文的应用场景


前面RAG的内容算是更新完了,我们今天是对RAG做一个扩展。讲讲宣称能代替RAG的三个技术,分别是超长上下文 、Agentic Retrieval 与LLM Wiki 。我们先在开始给出一个结论,就是他们互相之间都没有任何的替代关系。都只是在不同的场景下的不同技术路线,仅此而已。

一、超长上下文和RAG

RAG的过程就像一个流水线,把用户的query转换成embedding向量, 在向量数据库中检索(Retrive)出一些相似度比较高的chunk,再经过ReRank重排序,得到TOK K个chunk,把这些chunk塞到提示词中,让大模型来根据问题和这些chunk来回答问题。

在构建这一套流程时,我们必须做的一个工作就是知识切片,然后将chunk向量化后存入向量数据库中。但是切片可能把知识拆散,割裂文档内部逻辑,关键片段若没被检索出来,就不会进入 prompt。模型不知道答案、又没拿到关键参考资料时(召回率不够高),被迫输出就容易幻觉。

现在推出模型的上下文越来越长,有的甚至宣称百万上下文。那么就有一种观点:利用大模型不断扩展的 "记忆容量",直接将完整的文档库作为上下文输入,从根本上绕过传统 RAG 架构中的检索与拼接步骤。

但是我们前面给了结论了,这种方法不能替代RAG的,从直观的角度看,提示词太长会非常的耗费token,而且速度也会很慢。从技术上来讲,现在的百万上下问是一件很虚的事情,百万token的上下文窗口只是理论最大值,实际有效利用率仅约25%,如果提示词塞得太多会导致性能大幅下降。我们看一下上一阶段的几个模型:

我们看到95%的模型预训练窗口都是基于4K窗口完成的,也就是说95%的训练的训练数据的提示词 字数是不超过4000个token。5%的后训练是通过一些技术让模型像揠苗助长一样的,从4K窗口4000 token的这个提示词的限制,在极短的时间里,然后硬给它拉到百万级别的窗口上下文。这样的训练,导致这些模型其实没有那么强的能力去消化百万上下文。

现在的模型已经有所改善了,DeepSeek V4只有6%以下的模型训练是在小窗口完成的。大部分数据已经在64K/1M的窗口训练了。

这样的训练对模型的百万上下文的真正能力是有所提升的。那么不考虑成本和速度问题,百万上下文可能也做不到,因为没有太多百万token级别的训练数据,真正的能力还是要打个问号的。

总结一下:百万token级别的上下文

1)对算力消耗太大,成本太高

2)响应速度慢

3)有一定的技术瓶颈

所以到目前为止百万长上下文去替代RAG的可行性确实是偏弱一些。

二、超长上下文的应用场景

超长上下文与 RAG 并非完全对立,而是互补关系。在小体量、单文档场景下,它能提供更连贯的语境;但面对海量知识,RAG 仍是企业级应用的基石。

像单文档强相关的内容如合同,财报;代码,日志,表格等等不适合切片的内容都可以用超长上下问,把文件全部塞到提示词中。

相关推荐
跟我学机器学习21 小时前
拥有短期记忆的RAG Agent:记忆增强检索实战
人工智能·深度学习·语言模型·数据挖掘·rag
香吧香2 天前
BM25 详解
rag
神也畏惧菠萝2 天前
Coze 工作流实战 Day05:RAG 检索机制、多模态 AIGC 与智能体编排
aigc·音频处理·rag·视频生成·智能体·coze·图形处理
星野云联AIoT技术洞察2 天前
设备手册离线 RAG:先管住版本、权限和引文,再谈本地大模型
llama·rag·设备告警·rag知识库·设备运维·设备离线·设备手册
张张123y3 天前
后端第十二课:Agent 开发(让大模型从“会答“升级到“会做“)
前端·大模型·llm·agent·rag
云水初3 天前
【agent篇】RAG Agent避坑指南(附高级RAG Agent汇总)
开发语言·笔记·python·学习·langchain·agent·rag
张张123y3 天前
后端第十一课:RAG 落地实战(从 0 到 1 接上私有知识库,并设计一个好用的 RAG)
开发语言·人工智能·python·机器学习·fastapi·rag
今年下半年4 天前
AI智能体项目实战记录(06):RAG项目实战之文件上传及文档读取解析
人工智能·rag·文档解析
for_ever_love__4 天前
知识图谱构建流水线实战:实体关系抽取的提示词、质量抽检与增量维护
知识图谱·实体·文档·构建·rag·关系·抽取