RAG简介

  1. 概述
    RAG(Retrieval Augmented Generation)检索增强生成技术,解决了LLM(Large Language Model)的知识局限性、in-context learning(上下文学习)的token限制、重新进行模型微调成本高以及数据安全考虑等痛点,以已有知识库作为背景知识,让AI模型从基于记忆和理解进行答案编造考试,转换成基于垂直领域知识库的开卷考试。
  2. 架构
    分为在线和离线两部分。
    • 离线
      离线部分主要是实现知识库的向量化存储和索引构建。大致包含了文档解析、拆分、入库以及构建索引等步骤。
    • 在线
      在线部分主要是实现Query的意图识别和结果生成。大致包含了Query的解析、基于相似度的查询匹配、构造prompt以及通过LLM输出结果等步骤。
  1. 为什么用向量数据库
    一方面查询场景不能简单通过文本的精确匹配 来得到结果,而是通过语义匹配 来得到结果。向量Embedding能充分包含语义信息;
    另一方面向量数据库在向量的存储和查询上有特有的优势。
  2. 文档解析拆分
    文档解析拆分包含了数据清洗、文本/图片/表格的识别、数据分段等过程。目前已有对应的机器学习和深度学习模型,如RagFlow。
  3. Query解析
    由于用户提问往往具有模糊性和复杂性,需要对问题进行改写、增强、分解
  4. 查询路由
    理解用户query后,在查询路由步骤,通过定义查询路由器以及各个查询数据插件,将用户查询情况传给LLM,通过LLM决策,决定接下来要调用哪个查询插件,然后调用执行路由选择的插件,最后将各个插件预定义格式返回的结果汇总
相关推荐
秋名山码民6 小时前
Graph RAG 深度解析:从向量检索到知识推理的技术演进
大数据·人工智能·rag
Artech12 小时前
[MAF预定义的AIContextProvider-01]TextSearchProvider——RAG在MAF中的实现
ai·agent·rag·maf
染指111021 小时前
26.RAG进阶(Advanced RAG)-假设性问题索引
人工智能·windows·agent·rag·advanced rag
SXJR1 天前
spring boot + langchain4j +milvus实现向量存储
java·spring boot·后端·大模型·milvus·rag·langchain4j
deephub1 天前
Flash-KMeans:快速且内存高效的精确 K-Means,可在单张 GPU 进行亿级数据的聚类
人工智能·机器学习·kmeans·聚类·rag
四六的六1 天前
WebView里跑RAG——浏览器内知识检索增强实战
前端·实战·个人开发·webview·ai大模型·rag·webview内嵌开发
Attachment George1 天前
山东大学软件学院-项目实训-个人开发日志(十):材料问答链路开发——文档解析、OCR兜底与持续追问完善
python·ai·langchain·kotlin·rag
knight_9___1 天前
AI Agent 是什么?
人工智能·python·agent·rag·mcp
程序员三明治1 天前
【AI】从文本到向量:理解Embedding的作用
java·人工智能·后端·llm·元数据·rag·向量化
不爱洗脚的小滕2 天前
【Agent】如何为 AI Agent 设计高可用的 Tools
人工智能·aigc·ai编程·rag