大语言模型RAG,transformer和mamba

1、RAG技术流总结


第一张图是比较经典的RAG知识图谱,第二张图是更加详细扎实的介绍图。

1.1 索引

坦白来说这部分的技术并不是大模型领域的,更像是之前技术在大模型领域的应用;早在2019年我就做过faiss部分的尝试,彼时索引技术已经在互联网领域得到了广泛的应用。

1、大模型需要通过向量化去建立语义理解。

通过将包含高维信息的知识降维到向量空间里,这些知识就变成了一堆数字串;此时,当用户去提问时,先将提问的知识向量化变成一串数字后,再从知识库中通过余弦计算等方式找出和用户提问数字串最相似的信息出来,这就完成了所谓的语义理解。

2、分块能够有效提升检索效率和缓解上下文长度限制。

理想状态下,在检索时将每个信息都遍历一遍肯定就不会漏信息了,但是当信息量大且不能让用户等待过久的时候,还是需要更高效和更具性价比的方式;同时,大模型一次能输入的上下文有长度限制,虽然已经有大模型将上下文长度延伸至了更高量级,但似乎实验证明更大的上下文窗口不一定对检索结果更有效。

而分块技术,则可以理解为将一篇50w字的书籍文档按照段落或者语义等方式划分成n个块。这样,既能够有效解决上下文长度限制问题,同时也对于检索有一定的效率提升;但同时也存在可能会丢失文档的全局结构、不同块之间的前后逻辑等问题(这些问题在陆续通过建立重叠上下块内容、建立块的类似索引结构等方式进行优化)。

1.2 检索Retrieval

当用户提问后,通过检索技术则可以从知识库中召回相关内容块。检索方式将不局限于关键词检索和向量检索,最终的形态一定是多种检索方式的结合和互补。当混合检索结束后,再通过一个Rerank的机制重新对不同渠道的检索结果做一个最终的整合和排序。

1.3 生成(Generation)

将检索得到的前 K 个文本块和用户问题一起送进大模型,让大模型基于给定的文本块来回答用户的问题。

在整个完整的RAG过程中,索引和检索将极大的影响最终生成的质量。其中索引直接决定语义保存的完整度,检索决定提供给大模型的文本质量,值得注意的是检索过程还存在rerank的过程。

知识库问答,数据越多效果越好吗?中,有道大模型团队提出针对query大连医科大学怎么样,主要原因是第三批加入的某些文档中恰好有大连理工大学 xxx 怎么样?的句子,和 query 大连医科大学怎么样?表面上看起来确实非常像,Embedding 给它打了比较高的分。直接向量检索的情况下因为缺乏语义部分导致

而类似大连医科大学师资介绍这样的片段相关性就稍微低了些。而 LLM 输入 token 有限制,前面两个最相关但是实际并不能回答 query 问题的片段就已经占满了 token 的窗口,只能把他俩送进 LLM 里。结果可想而知,啥都不知道。

RAG知识除了可以参考前面有道团队的介绍,另外也可以参考这一篇:
一文读懂:大模型RAG(检索增强生成)含高级方法

相关推荐
一 铭5 分钟前
Onyx(DAnswer)总体实现架构
人工智能·语言模型·大模型·llm
小高Baby@14 分钟前
Deepseek
人工智能·笔记
Amarantine、沐风倩✨23 分钟前
区块链技术未来发展趋势(人工智能和物联网领域)
人工智能·物联网·区块链
LeeZhao@37 分钟前
【AIGC魔童】DeepSeek v3提示词Prompt书写技巧
人工智能·语言模型·自然语言处理·面试·prompt·aigc
nangonghen40 分钟前
user、assistant、system三大角色在大语言模型中的作用(通俗解释)
人工智能·语言模型·大模型
huaqianzkh1 小时前
了解深度信念网络(Deep Belief Networks,DBN)
人工智能
chengpei1471 小时前
Spring Boot整合DeepSeek实现AI对话
人工智能·spring boot·ai
张登杰踩1 小时前
【模型部署】大模型部署工具对比:SGLang, Ollama, VLLM, LLaMA.cpp如何选择?
人工智能·llama
微软技术栈2 小时前
活动预告 |【Part1】Microsoft Azure 在线技术公开课:AI 基础知识
人工智能·microsoft·azure
nbsaas-boot5 小时前
人工智能浪潮下脑力劳动的变革与重塑:挑战、机遇与应对策略
人工智能