当前位置: 首页 > ops >正文

从原生检索到异构图:Native RAG、GraphRAG 与 NodeRAG 架构全景解析

Below is a comprehensive technical overview comparing Native RAG, GraphRAG, RAG 效果优化 (RAG optimization), and NodeRAG. We describe each approach’s core architecture, key components, and highlight Python snippets to illustrate typical implementations.

摘要

Retrieval-Augmented Generation (RAG) 是将检索到的外部知识与大语言模型 (LLM) 输出相结合的技术。Native RAG(基线 RAG)使用向量索引和相似度检索;GraphRAG 则在此基础上引入知识图谱结构,以捕捉实体间关系并指导检索与生成;RAG 效果优化 主要包含检索器精炼、索引策略与提示工程等技术;NodeRAG 进一步将异构图结构融入 RAG 流程,实现多层次、多类型节点的无缝整合,提升多跳推理能力。以下各节分别阐述它们的框架与组成,并给出 Python 示例。


1. Native RAG

1.1 架构概览

Native RAG(也称 Baseline RAG)流程通常分为两步:

  1. 检索(Retriever):将用户查询编码为向量,并在向量数据库(如 FAISS)中执行相似度搜索,返回最相关的文档切片或段落。
  2. 生成(Generator):将检索到的文本与原始查询一起拼接为提示,输入到 LLM(如 GPT-3/4),生成最终回答 (Welcome - GraphRAG)。

1.2 主要组件

  • Embedding 模型(如 SentenceTransformers)
  • 向量存储(FAISS、Milvus、Pinecone)
  • 提示模板(Prompt Templates)

1.3 Python 示例

from sentence_transformers import SentenceTransformer
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
import faiss# 1. 嵌入模型与向量索引
embedder = SentenceTransformer('all-MiniLM-L6-v2')
docs = ["doc1 text...", "doc2 text...", ...]
embs = embedder.encode(docs, convert_to_numpy=True)
index = faiss.IndexFlatL2(embs.shape[1])
index.add(embs)# 2. 检索
query = "What is RAG?"
q_emb = embedder.encode([query])
_, ids = index.search(q_emb, k=3)
retrieved = [docs[i]
http://www.xdnf.cn/news/2035.html

相关文章:

  • 关注心理健康,开启心灵养生之旅
  • 如何用AI主动突出画面主体!涂鸦新方案助剪辑、工业巡检、医疗影像等领域,实现自动追踪+智能放大
  • BUUCTF-[ACTF新生赛2020]SoulLike
  • 伊克罗德信息亮相亚马逊云科技合作伙伴峰会,以ECRobot 智能云迁移助手在GenAI Tech Game比赛勇夺金牌!
  • 从零开始学Python游戏编程39-碰撞处理1
  • MySQL 从入门到精通
  • 【算法】单词搜索、最短距离
  • 增加首屏图片
  • MCP Server 实现笔记:开发者视角下的优缺点
  • MySQL InnoDB 存储引擎间隙锁(Gap Lock)
  • 《Pinia实战》10.手册
  • 数据结构(java)二叉树的基本操作
  • AI与思维模型【77】——PDCA思维模型
  • 1.2-1.3考研408计算机组成原理第一章 计算机系统概述
  • 【3】GD32 基础外设:GPIO、外部中断、DMA、定时器、实时时钟、看门狗
  • vue next()、next(“/“)、next({...to})、next({...to,replace:true})的区别
  • 机器人行业研究系列报告
  • 遥测终端机,推动灌区流量监测向数据驱动跃迁
  • 《遥测终端机:农业水价改革的智能助手》
  • python 环状图 (pycirclize)
  • AI与思维模型【78】——周哈里窗思维模型
  • 【Java学习笔记】二维数组
  • 嵌入式开发:基础知识介绍
  • HTML 详解:从基础结构到语义标签
  • 【MQ篇】RabbitMQ之消息持久化!
  • CI/CD自动化部署(持续集成和持续交付/部署)
  • 《修仙家族模拟器2》:游戏背景故事介绍!
  • PTA -L1-003 L1-003 个位数统计
  • 前端面试常见部分问题,及高阶部分问题
  • 产品更新丨谷云科技ETLCloud V3.9.2版本发布