Kevin's blog Kevin's blog
首页
  • AI基础
  • RAG技术
  • 提示词工程
  • Wireshark抓包
  • 常见问题
  • 数据库
  • 代码技巧
  • 浏览器
  • 手册教程
  • 技术应用
  • 流程规范
  • github技巧
  • git笔记
  • vpn笔记
  • 知识概念
  • 学习笔记
  • 环境搭建
  • linux&运维
  • 微服务
  • 经验技巧
  • 实用手册
  • arthas常用
  • spring应用
  • javaAgent技术
  • 网站
友情链接
  • 分类
  • 标签
  • 归档

Kevin

你可以迷茫,但不可以虚度
首页
  • AI基础
  • RAG技术
  • 提示词工程
  • Wireshark抓包
  • 常见问题
  • 数据库
  • 代码技巧
  • 浏览器
  • 手册教程
  • 技术应用
  • 流程规范
  • github技巧
  • git笔记
  • vpn笔记
  • 知识概念
  • 学习笔记
  • 环境搭建
  • linux&运维
  • 微服务
  • 经验技巧
  • 实用手册
  • arthas常用
  • spring应用
  • javaAgent技术
  • 网站
友情链接
  • 分类
  • 标签
  • 归档
  • AI基础

  • 提示词

  • RAG技术

    • RAG技术简介
    • RAG + Embedding + 向量库
      • 📚 一、什么是 RAG(检索增强生成)?
        • ✅ 简单流程:
        • ✅ RAG 的好处:
      • 🔢 二、Embedding:把文字变成“数学向量”
        • ✅ 什么是 Embedding?
        • ✅ 谁来做 Embedding?
        • ✅ Token 成本?
      • 🧱 三、向量库(FAISS 等)是做什么的?
        • 常见的向量库:
        • 向量库的生命周期:
      • 🔄 四、RAG 向量化流程的本质
        • 完整流程:
        • ✅ 本质上:
      • ⚠️ 五、向量模型与大语言模型一定要区分!
      • ❗ 六、向量不一致风险与设计建议
        • ❌ 向量空间不一致的坑
        • ✅ 正确做法:
      • 🖥 七、本地 vs 云部署:对比与选型
      • 🤖 八、RAG 与微调、Agent 的关系
        • ✅ 类比:
      • ✅ 九、总结一句话:
    • RAG 向量体系与知识库实战篇
    • RAG微调Agent的联系与区别
  • MCP技术

  • SpringAI

  • AI
  • RAG技术
kevin
2025-06-06
目录

RAG + Embedding + 向量库

# RAG + Embedding + 向量库

📌 本文适合希望理解 AI 知识库技术(RAG)、Embedding 向量化、向量库检索、本地部署以及与大模型结合机制的开发者。以通俗语言解释概念、原理与实践,内容来源于一次系统性深度对话。

# 📚 一、什么是 RAG(检索增强生成)?

RAG 是 Retrieval-Augmented Generation 的缩写,即 检索增强生成技术。核心思想是:

🧠 当大模型不知道答案时,RAG可以帮它“查资料”,然后生成更准确的回答。

# ✅ 简单流程:

  1. 用户提问(如:“2024年劳动合同法有哪些修改?”)
  2. RAG 系统将问题转换为向量(Embedding)
  3. 去本地或云端的向量数据库中匹配最相关的知识文档
  4. 把相关文档拼接到 Prompt 中,交给大模型(如 GPT)生成答案

# ✅ RAG 的好处:

  • 可以访问最新的、私有的、冷门的知识
  • 无需修改大模型参数,只需给它“参考资料”
  • 能快速适配不同领域和公司数据

# 🔢 二、Embedding:把文字变成“数学向量”

# ✅ 什么是 Embedding?

Embedding 就是一个“语义翻译器”:把一句话翻译成一个高维向量(比如 768 维)

举例:

"苹果公司" → [0.25, -0.19, 0.87, ...](768维)
1

# ✅ 谁来做 Embedding?

分两种:

  • 厂商 API(如 OpenAI text-embedding-ada-002)
  • 本地部署模型(如 bge, E5, GTE)

两者都可以用来:

  • 文档入库向量化(一次性)
  • 用户提问实时转向量(每次)

# ✅ Token 成本?

  • Embedding 模型也按 token 收费
  • 但相比 GPT 这类大语言模型便宜非常多(OpenAI 比如 $0.0001 / 1K tokens)
  • 本地模型完全免费,只要你有 GPU

# 🧱 三、向量库(FAISS 等)是做什么的?

向量库是一个专门干“找相似内容”的数据库。

比如你给它一个问题向量,它会从里面找出:

“哪个知识片段和这个问题最像?”

# 常见的向量库:

  • FAISS(开源、轻量、适合本地)
  • Milvus(适合大规模、生产级)
  • Weaviate / Qdrant(支持 REST 接口)

# 向量库的生命周期:

  • 你构建知识库 → 每段文本都转成向量 → 存进去(一次性)
  • 用户提问时 → 问题转成向量 → 去库里找最相似的内容(每次)

# 🔄 四、RAG 向量化流程的本质

RAG 是通过“知识增强”帮助大模型理解问题,让它看懂“冷门”语义。

# 完整流程:

1. 用户提问
2. 用 Embedding 模型把问题转向量
3. 去向量库里匹配最相近的文档(Top-K)
4. 把这些文档作为 context 拼接到 prompt
5. 交给大语言模型生成回答
1
2
3
4
5

# ✅ 本质上:

  • RAG 是在提问时给大模型“偷偷塞小抄”
  • 而不是让它靠记忆死撑
  • 所以能有效支持“企业内训文档”、“冷门术语”、“实时数据”

# ⚠️ 五、向量模型与大语言模型一定要区分!

模型类型 用途 举例
Embedding 模型 转换成向量,匹配语义 text-embedding-ada-002, bge, E5
大语言模型(LLM) 生成自然语言回答 GPT-4, DeepSeek, Claude, 通义千问

✅ 它们是两个完全不同的模型!

# ❗ 六、向量不一致风险与设计建议

# ❌ 向量空间不一致的坑

如果你用 OpenAI 的 embedding 模型建的知识库,用户提问时却用 DeepSeek 来生成 query embedding,那结果大概率会 匹配不上。

因为不同模型生成的向量坐标空间、维度压缩逻辑、语义表达方式都不同,导致“向量距离”毫无意义。

# ✅ 正确做法:

  • 文档 embedding 和问题 embedding 必须来自同一个模型
  • 构建知识库时 embedding 模型必须“钉死”,不要换
  • 想换就只能“重新构建整个向量库”

# 🖥 七、本地 vs 云部署:对比与选型

维度 云厂商 API(如 OpenAI) 本地部署(如 bge + FAISS)
成本 按 token 计费(便宜但有量) 一次部署,无后续成本
隐私性 数据需上传 数据全本地保留 ✅
灵活性 模型固定、调用方便 模型可替换,需自己部署
速度 取决于网络与并发 本地控制更强

# 🤖 八、RAG 与微调、Agent 的关系

  • RAG: 拿“外部知识”拼接进 Prompt
  • 微调: 让大模型真正“学会”知识,适合长期固定内容
  • Agent: 负责控制流程,决定什么时候用哪种工具

# ✅ 类比:

  • 微调是“教 AI 记住”,RAG 是“告诉 AI 查一下”,Agent 是“AI 的管家”

# ✅ 九、总结一句话:

RAG 是一个“查资料 + 提示生成”的组合系统,Embedding 模型是桥梁,向量库是资料室,大模型是答题者,Agent 是调度员。它们彼此解耦但必须协同统一,尤其是 embedding 一致性是系统成败的关键。

上次更新: 2025/05/19, 17:31:24
RAG技术简介
RAG 向量体系与知识库实战篇

← RAG技术简介 RAG 向量体系与知识库实战篇→

最近更新
01
AI是如何学习的
06-06
02
提示词工程实践指南
06-06
03
chatGpt提示原则
06-06
更多文章>
| Copyright © 2022-2025 Kevin | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式