RAG架构进阶:从基础检索到GraphRAG
📅 2026/7/8 14:36:55
👁️ 次浏览
RAG架构进阶从基础检索到GraphRAG检索增强生成RAG已成为大语言模型解决知识时效性和领域适配问题的标准方案。但基础RAG向量检索提示拼接在面对复杂查询时暴露出明显短板无法捕捉实体关系、缺乏全局推理能力。GraphRAG的出现标志着RAG架构从语义匹配向结构理解的范式升级。本文将系统梳理RAG的技术演进并深入解析GraphRAG的实现原理。一、基础RAG的架构与局限1.1 标准RAG流水线from langchain.vectorstores import Chroma from langchain.embeddings import OpenAIEmbeddings class BasicRAG: def __init__(self, documents): self.embeddings OpenAIEmbeddings() self.vectorstore Chroma.from_documents( documents, self.embeddings ) self.llm ChatOpenAI() def query(self, question: str, k: int 3) - str: # 1. 向量检索Top-K相关文档 relevant_docs self.vectorstore.similarity_search(question, kk) # 2. 拼接上下文 context \n\n.join([doc.page_content for doc in relevant_docs]) # 3. LLM生成答案 prompt f基于以下上下文回答问题\n\n{context}\n\n问题{question} return self.llm.predict(prompt)1.2 基础RAG的固有缺陷| 问题类型 | 具体表现 | 根因 | |----------|----------|------| | 语义鸿沟 | 检索到表面相关但实质无关的文档 | 向量相似度≠语义相关性 | | 关系盲区 | 无法回答A和B有什么关系 | 丢失实体间关联信息 | | 全局缺失 | 无法回答总结全文档的主题分布 | 分段检索缺乏全局视图 | | 多跳推理 | 需要跨多个文档串联信息 | 单次检索无法覆盖推理链 |二、RAG增强策略从局部到全局2.1 多路召回与重排序class MultiWayRAG: def __init__(self): self.keyword_store BM25Retriever() # 关键词检索 self.vector_store Chroma() # 向量检索 self.reranker CrossEncoder(cross-encoder/ms-marco-MiniLM-L-6-v2) def retrieve(self, query, k10): # 多路召回 keyword_results self.keyword_store.retrieve(query, kk*2) vector_results self.vector_store.similarity_search(query, kk*2) # 合并去重 candidates self.deduplicate(keyword_results vector_results) # 重排序 pairs [(query, doc.page_content) for doc in candidates] scores self.reranker.predict(pairs) # 返回Top-K return [candidates[i] for i in np.argsort(scores)[-k:]]2.2 查询重写与多步检索class MultiStepRAG: def query(self, question): # 第一步分解查询 sub_queries self.decompose(question) # 第二步逐个子查询检索 all_evidence [] for sq in sub_queries: docs self.retrieve(sq) all_evidence.extend(docs) # 第三步基于证据链推理 answer self.reason(question, all_evidence) return answer def decompose(self, question): prompt f将复杂问题分解为2-3个子问题{question}\n输出JSON数组 return json.loads(self.llm.predict(prompt))三、GraphRAG知识图谱驱动的RAGGraphRAG由微软研究院提出核心思想是在检索阶段引入知识图谱的拓扑结构实现全局推理和关系感知。3.1 GraphRAG索引构建流程class GraphRAGIndexer: def __init__(self, llm): self.l
Function Calling 链路追踪:参数从 Prompt 到执行的全路径可视化
一、当 Agent 告诉你"我已经调用了搜索",但实际没有
一个常见的场景:用户问 Agent 某个问题。Agent 回复"我已查询了最新数据,结果是……"但实…
📅 2026/7/8 14:36:55
Windows更新修复指南:3步诊断与Reset Windows Update Tool解决方案 【免费下载链接】Script-Reset-Windows-Update-Tool This script reset the Windows Update Components. 项目地址: https://gitcode.com/gh_mirrors/sc/Script-Reset-Windows-Update-Tool
…
📅 2026/7/8 14:36:55
Python 协程池设计模式:在 RAG 场景下复用 Embedding 请求的最佳实践
一、深度引言与场景痛点
RAG 系统的 Embedding 调用有一个非常典型的特点:短请求、高频次、有状态。每次调用只需要几十毫秒,但调用的频次可以高到每秒几百次,…
📅 2026/7/8 14:36:55
GitHub汉化插件终极指南:让GitHub说中文的3分钟免费解决方案 【免费下载链接】github-chinese GitHub 汉化插件,GitHub 中文化界面。 (GitHub Translation To Chinese) 项目地址: https://gitcode.com/gh_mirrors/gi/github-chinese
还在为GitHub…
📅 2026/7/8 15:43:30
ENVI 非监督分类后处理:5x5 核函数小斑块消除与类别合并技巧遥感影像分类是地物信息提取的关键环节,而非监督分类因其无需先验知识的特性,在缺乏地面调查数据时展现出独特优势。然而ISODATA或K-Means算法生成的初始分类结果往往存在两大痛点&…
📅 2026/7/8 15:43:30
GitHub中文界面终极指南:3分钟告别英文障碍的完整教程 【免费下载链接】github-chinese GitHub 汉化插件,GitHub 中文化界面。 (GitHub Translation To Chinese) 项目地址: https://gitcode.com/gh_mirrors/gi/github-chinese
还在为GitHub的英文…
📅 2026/7/8 15:43:30
5分钟快速上手Ncorr:MATLAB开源DIC软件完整指南 【免费下载链接】ncorr_2D_matlab 2D Digital Image Correlation Matlab Software 项目地址: https://gitcode.com/gh_mirrors/nc/ncorr_2D_matlab
数字图像相关(DIC)技术在现代工程测量…
📅 2026/7/8 15:43:30
PostgreSQL 体系结构深度解析:从 1 个数据文件到 MVCC 并发控制的 5 层逻辑1. 存储引擎:物理与逻辑的双重视角PostgreSQL 的存储系统采用"文件即数据库"的设计哲学。每个数据库在base目录下以OID命名的子目录中存储,而表空间则通过…
📅 2026/7/8 15:43:30
碧蓝航线Alas脚本:你的智能游戏管家,5步实现全自动日常管理 【免费下载链接】AzurLaneAutoScript Azur Lane bot (CN/EN/JP/TW) 碧蓝航线脚本 | 无缝委托科研,全自动大世界 项目地址: https://gitcode.com/gh_mirrors/az/AzurLaneAutoScrip…
📅 2026/7/8 15:41:27
Docker 彻底卸载指南:CentOS/Ubuntu 双系统 5 步清理残留文件当 Docker 环境出现版本冲突、安装失败或需要迁移时,常规的卸载命令往往无法彻底清理系统。残留的配置文件、依赖项和缓存文件可能导致新安装的 Docker 出现各种诡异问题。本文将提供一套完整…
📅 2026/7/8 0:00:10
SQL 数据分析性能优化实战:窗口函数 vs 子查询 vs 临时表 在数据分析工作中,SQL查询性能往往是决定工作效率的关键因素。面对复杂的业务场景,如何选择最优的查询方案?本文将深入对比窗口函数、子查询和临时表三种技术方案…
📅 2026/7/8 0:00:10
日期:2026-07-07> 本期聚焦近一日(2026-07-06 至 07-07)出台的金融与行业政策,按"背景—核心—影响—受益/风险"四维度解读。政策内容依据原始发布信息整理,解读仅供参考,不构成投资建议。一、…
📅 2026/7/8 0:00:10
1. 项目背景与核心需求 在嵌入式系统开发中,快速精确的数据检索是一个常见但极具挑战性的需求。特别是在工业控制、医疗设备和物联网终端等场景下,系统往往需要在毫秒级时间内完成关键参数的读取和写入操作。传统基于Flash存储的方案存在擦写次数有限、操…
📅 2026/7/8 14:10:54
1. 工业电流环信号传输的基础认知在工业自动化领域,4-20mA电流环传输技术已经持续服役超过半个世纪。这种看似简单的信号传输方式之所以能经久不衰,核心在于其独特的抗干扰能力——电流信号在长距离传输时几乎不受线路电阻和电压波动的影响。我曾在化工厂…
📅 2026/7/8 14:10:54
最近在项目里尝试用 YOLO 做目标检测,从环境搭建到模型训练,再到推理部署,整个过程踩了不少坑。网上的资料虽然多,但要么版本老旧,要么步骤零散不成体系,对于刚入门的新手来说,很容易卡在某个环…
📅 2026/7/8 11:28:59
目录
第一步:选对模板,省心一半
第二步:打开扫码点餐功能
开启功能按钮
桌台管理与桌码生成
第三步:个性化设计,打造品牌感
调整点餐页面
设置点餐规则 你还在让顾客站着排队点餐吗?2025年ÿ…
📅 2026/7/8 14:10:54
在业务中快速构建一个能理解私有文档、准确回答专业问题的智能助手,是很多开发团队面临的共同挑战。传统方案往往需要从零开始搭建复杂的 RAG(检索增强生成)系统,涉及文档解析、向量化、检索、大模型调用等多个环节,整…
📅 2026/7/8 14:10:54
FAE放射组学分析工具:医学影像特征探索的完整解决方案 【免费下载链接】FAE FeAture Explorer 项目地址: https://gitcode.com/gh_mirrors/fae/FAE
你是否曾经面对海量医学影像数据感到无从下手?想要从CT、MRI等影像中提取有价值的定量特征&#…
📅 2026/7/8 14:10:54