Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

F3. 知识库与 RAG | Knowledge Base & RAG

路径: Path 0: AI 基础先行 · 模块: F3 最后更新: 2026-03-12 难度: 中级 预计时间: 2 小时 前置模块: F1 AI 的前世今生F2 Prompt 工程


flowchart LR
F1["F1 AI 的前世今生"]
F1 --> F2
F2["F2 Prompt 工程"]
F2 --> F3
F3[" F3 知识库与 RAG<br/>(当前)"]:::current
F3 --> F4
F4["F4 自动化与 Agent"]
classDef current fill:#ff9900,stroke:#333,color:#fff,font-weight:bold

本模块章节导航

  1. 为什么 AI 不知道你的产品 · 2. Embedding 原理 · 3. 向量数据库 · 4. RAG 架构 · 5. 实操概览 · 6. RAG 优化技巧 · 7. 常见问题 · 8. 学习资源

本模块你将理解

为什么 ChatGPT 不知道你的产品信息?怎么让 AI 基于你的私有数据回答问题?RAG 是解决这个问题的核心技术。

完成本模块后,你将能够:

  • 理解为什么 AI 不知道你的产品、政策和内部数据
  • 用通俗语言解释 Embedding(向量嵌入)的原理
  • 知道向量数据库是什么、为什么需要它
  • 理解 RAG 的完整架构和工作流程
  • 判断什么场景该用 RAG,什么场景不需要
  • 了解搭建产品知识库的基本步骤(技术实操参考 B3 RAG 知识库

本模块定位:建立概念理解,不需要写代码。如果你想动手搭建 RAG 系统,完成本模块后进入 Path B: B3 RAG 知识库


1. 为什么 AI 不知道你的产品信息

1.1 AI 的知识来源

回忆 F1 的内容:LLM 的知识全部来自训练数据。训练数据是互联网上的公开文本 维基百科、新闻、论坛、代码库等。

AI 知道的:

  • Amazon 平台的一般规则和政策(公开信息)
  • 常见品类的一般特征(公开讨论)
  • 通用的电商运营知识(博客、教程)

AI 不知道的:

  • 你的产品具体参数和卖点
  • 你的内部定价策略和利润数据
  • 你的供应商信息和采购成本
  • 你的历史销售数据和趋势
  • 你的客服 SOP 和内部政策
  • 最新的平台政策变化(训练数据有截止日期)

1.2 三种让 AI “知道“你的数据的方法

方法原理优点缺点适合场景
直接粘贴把数据放在 Prompt 里最简单,零成本受上下文窗口限制(128K-1M token)数据量小(<50 页)
Fine-tuning用你的数据重新训练模型模型“记住“你的知识成本高、更新慢、可能遗忘需要改变模型风格/格式
RAG实时检索相关数据,注入 Prompt数据实时更新、成本低、可解释需要搭建检索系统数据量大、需要实时更新

1.3 用跨境电商类比理解

直接粘贴 = 你把所有资料打印出来摊在桌上,让助理看着回答问题。

  • 资料少的时候没问题
  • 资料多了桌子放不下(上下文窗口限制)

Fine-tuning = 你让助理花一个月把所有资料背下来。

  • 背完之后回答很快
  • 但资料更新了需要重新背(重新训练)
  • 而且可能背串了(幻觉)

RAG = 你给助理一个文件柜和一套检索系统。每次有问题,助理先去文件柜里找到相关资料,然后基于资料回答。

  • 文件柜可以随时更新
  • 回答有据可查(可以追溯到具体文档)
  • 文件柜可以无限大

结论:对于跨境电商团队,RAG 是最实用的方案。数据量大、更新频繁、需要可追溯 这三个特点完美匹配 RAG 的优势。


2. Embedding 原理:让 AI “理解“语义

2.1 什么是 Embedding

Embedding(向量嵌入)是把文本转换成一组数字(向量)的技术。这组数字捕捉了文本的“语义“。

直觉理解:

想象你要在地图上标记不同的产品。传统方式是用关键词匹配 “蓝牙耳机“只能匹配包含“蓝牙耳机“这四个字的文档。

Embedding 的方式是把每个产品放在一个“语义空间“里:

  • “蓝牙耳机“和“无线耳机“在语义空间里很近(意思相似)
  • “蓝牙耳机“和“蓝牙音箱“距离中等(有关联但不同)
  • “蓝牙耳机“和“厨房刀具“在语义空间里很远(完全不相关)
语义空间示意(简化为 2D):

音频设备
↑
蓝牙音箱 无线耳机
蓝牙耳机
智能手表 有线耳机

← 可穿戴 配件 →

手机壳

厨房刀具(很远,不在这个区域)

实际的 Embedding 不是 2D 而是 768D 或 1536D(几百到几千个维度),但原理一样:语义相似的文本,向量距离近。

2.2 Embedding 的工作过程

输入文本 → Embedding 模型 → 向量(一组数字)

示例:
"这款蓝牙耳机降噪效果很好"
→ [0.12, -0.34, 0.56, 0.78, -0.23, ..., 0.45] (1536 个数字)

"这个无线耳机的主动降噪很棒"
→ [0.11, -0.32, 0.55, 0.79, -0.21, ..., 0.44] (1536 个数字)

两个向量非常接近 → 语义相似!

2.3 常用 Embedding 模型

模型提供商维度价格适合场景
text-embedding-3-smallOpenAI1536$0.02/M tokens性价比最高,推荐首选
text-embedding-3-largeOpenAI3072$0.13/M tokens需要更高精度时
Voyage-3Voyage AI1024$0.06/M tokens代码和技术文档
BGE-M3BAAI1024免费(开源)多语言、本地部署
Cohere Embed v3Cohere1024$0.10/M tokens多语言搜索

跨境电商推荐:

  • 预算有限:OpenAI text-embedding-3-small(便宜且效果好)
  • 多语言需求:BGE-M3(开源免费,中英日德法都支持)
  • 数据隐私:BGE-M3 本地部署(数据不出服务器)

2.4 关键词搜索 vs 语义搜索

维度关键词搜索语义搜索(Embedding)
原理精确匹配关键词匹配语义相似度
“无线耳机” 能找到 “蓝牙耳机” 吗?不能(关键词不同)能(语义相似)
“earphone noise cancel” 能找到中文文档吗?不能(语言不同)能(跨语言语义匹配)
速度极快快(毫秒级)
适合场景精确查找已知内容模糊查找、跨语言查找

实际应用中,最好的方案是混合搜索:先用关键词搜索缩小范围,再用语义搜索精确匹配。这就是 2026 年 RAG 系统的主流做法。


3. 向量数据库:存储和检索语义

3.1 为什么需要向量数据库

普通数据库(MySQL、PostgreSQL)擅长精确查询:“找出价格 = $25.99 的产品”。

但它们不擅长语义查询:“找出和’降噪效果差’语义相似的 Review”。

向量数据库专门为存储和检索向量设计,能在毫秒内从百万条向量中找到最相似的几条。

3.2 主流向量数据库对比

数据库类型价格适合场景特点
Chroma嵌入式免费开源原型开发、小规模Python 原生,最简单
FAISS免费开源大规模、高性能Meta 出品,速度极快
Pinecone云服务免费层 + 付费生产环境、免运维全托管,开箱即用
Weaviate自托管/云免费开源混合搜索支持关键词 + 语义混合搜索
Qdrant自托管/云免费开源高性能生产环境Rust 编写,性能优秀
pgvectorPostgreSQL 扩展免费已有 PostgreSQL 的团队不需要额外数据库

跨境电商推荐:

  • 刚开始尝试:Chroma(最简单,10 行代码搞定)
  • 生产环境:Pinecone(免运维)或 Qdrant(自托管)
  • 已有 PostgreSQL:pgvector(不需要额外基础设施)

Content rephrased for compliance with licensing restrictions. Sources: Vector Databases 2026 Guide, Embeddings and Vector Databases Guide

3.3 向量数据库的工作流程

写入阶段(一次性):
文档 → 分块(Chunking)→ Embedding 模型 → 向量 → 存入向量数据库

查询阶段(每次提问):
用户问题 → Embedding 模型 → 查询向量 → 向量数据库检索 → 返回最相似的文档块

分块(Chunking)是关键:

你不能把一整份 50 页的产品手册作为一个向量存储 太大了,语义会被稀释。需要把文档切成小块:

分块策略块大小适合场景
按段落100-300 字结构化文档(FAQ、政策)
按固定长度500-1000 字长篇文档(产品手册)
按语义自动检测混合内容(Review、邮件)
按标题层级按 H1/H2/H3 切分Markdown/HTML 文档

分块的黄金法则:每个块应该包含一个完整的信息单元。太小会丢失上下文,太大会引入噪音。500-1000 字通常是好的起点。


4. RAG 架构:完整的工作流程

4.1 RAG 的三个阶段

阶段 1:索引(Indexing) 一次性准备

文档收集 → 文档分块 → 生成 Embedding
↓ ↓ ↓
产品手册 500字/块 向量化
FAQ 文档
Review 数据 → 存入向量数据库
政策文件


阶段 2:检索(Retrieval) 每次提问

用户问题 → 生成查询向量 → 向量数据库检索
↓ ↓
"这个产品防水吗?" 返回 Top 5 相关文档块


阶段 3:生成(Generation) 每次提问

系统 Prompt + 检索到的文档块 + 用户问题
↓
发送给 LLM
↓
LLM 基于检索到的内容生成回答
"根据产品手册,本产品支持 IPX5 防水..."

4.2 RAG vs 直接问 AI 的效果对比

场景:客户问“你们的蓝牙耳机支持什么蓝牙版本?“

直接问 AI(无 RAG):

AI:"一般来说,2024-2025 年的蓝牙耳机通常支持蓝牙 5.0 或 5.3..."
→ 泛泛而谈,不是你的产品的具体信息

用 RAG:

RAG 检索到的文档块:
"产品型号 XB-500,蓝牙版本 5.3,支持 AAC/SBC/LDAC 编码,
连接距离 15 米,支持同时连接 2 台设备。"

AI 基于检索内容回答:
"我们的 XB-500 蓝牙耳机支持蓝牙 5.3,支持 AAC、SBC 和 LDAC
音频编码,连接距离可达 15 米,并且支持同时连接 2 台设备。"
→ 精确、具体、基于你的产品数据

4.3 RAG 在跨境电商中的应用场景

相关阅读: B3 RAG 知识库系统 RAG 系统构建实操详见 B3 · A4 客服与售后 RAG 在客服 FAQ 自动回答中的应用场景详见 A4。

场景知识库内容用户问题示例价值
产品 FAQ 系统产品手册、规格参数、使用说明“这个产品能用多久?”“支持快充吗?”客服效率提升 80%
内部政策查询退换货政策、定价规则、审批流程“欧洲站的退货政策是什么?”新员工快速上手
合规知识库各市场认证要求、法规文档“卖蓝牙产品到日本需要什么认证?”减少合规风险
竞品情报库竞品 Review、Listing、价格历史“竞品 A 最近的差评主要是什么?”竞品监控自动化
运营 SOP 库操作手册、最佳实践、案例库“新品上架的标准流程是什么?”团队知识沉淀
供应商信息库供应商资料、报价、沟通记录“上次和工厂 B 谈的价格是多少?”采购决策支持

4.4 RAG 的 Prompt 设计

RAG 系统中,发送给 LLM 的 Prompt 通常包含三个部分:

系统 Prompt(固定):
"你是一个产品客服助手。请基于以下参考资料回答用户问题。
如果参考资料中没有相关信息,请明确告知用户你不确定,
不要编造答案。回答时请标注信息来源。"

检索到的文档块(动态):
---参考资料开始---
[文档块 1]: 产品型号 XB-500,蓝牙版本 5.3...
[文档块 2]: 防水等级 IPX5,可在雨中使用...
[文档块 3]: 续航时间:ANC 开启 30 小时,关闭 50 小时...
---参考资料结束---

用户问题(动态):
"这个耳机能在游泳时用吗?"

关键设计原则:

原则说明为什么重要
明确指示基于资料回答“请基于以下参考资料回答”减少 AI 编造信息
允许说“不知道““如果资料中没有,请说明”避免强行回答导致错误
要求标注来源“请标注信息来源”方便验证和追溯
限定回答范围“只回答与产品相关的问题”防止 AI 回答无关问题

4.5 RAG 的评估指标

搭建 RAG 系统后,怎么知道它好不好?需要评估两个维度:

检索质量:

指标含义怎么测
召回率(Recall)相关文档有没有被检索到准备测试问题,检查检索结果是否包含正确文档
精确率(Precision)检索到的文档是否都相关检查 Top-5 结果中有多少是真正相关的
MRR(Mean Reciprocal Rank)正确文档排在第几位正确文档排名越靠前越好

生成质量:

指标含义怎么测
忠实度(Faithfulness)回答是否基于检索到的内容检查回答中的信息是否都能在检索文档中找到
相关性(Relevancy)回答是否回答了用户的问题人工评估回答是否切题
完整性(Completeness)回答是否覆盖了所有相关信息检查是否遗漏了重要信息

简单的评估方法:

准备 20-30 个测试问题和标准答案,定期运行测试,追踪质量变化。

测试集示例:
| 问题 | 期望答案 | 期望引用的文档 |
|------|---------|--------------|
| "蓝牙版本是多少?" | "5.3" | product_spec.md |
| "能在水里用吗?" | "IPX5 防水,可防溅水但不能浸泡" | product_spec.md |
| "保修多久?" | "12 个月" | warranty_policy.md |

4.6 RAG 的成本分析

成本项一次性持续说明
Embedding 生成$0.01-0.10取决于文档量(1000 页约 $0.05)
向量数据库$0$0-50/月Chroma 免费,Pinecone 有免费层
LLM API 调用$0.01-0.10/次每次查询的 LLM 费用
开发时间8-40 小时2-4 小时/月搭建 + 维护

成本估算示例(小型产品知识库):

文档量:50 个产品手册 + 500 条 FAQ = 约 200 页
Embedding 成本:$0.02(一次性)
向量数据库:$0(Chroma 本地)
每月查询量:1000 次
LLM 成本:$5-10/月(GPT-4o-mini)
总月度成本:$5-10

对比人工成本:
客服每天回答 30 个产品问题 × 5 分钟/个 = 2.5 小时/天
月度人工成本:2.5h × 22 天 × $15/h = $825

ROI:($825 - $10) / $10 = 8,150%

5. 实操概览:搭建产品知识库

本节提供概念性的步骤说明。完整的代码实操请参考 B3 RAG 知识库

5.1 最简 RAG 系统(10 行代码)

用 LlamaIndex + Chroma,10 行 Python 代码就能搭建一个可用的 RAG 系统:

# 概念性代码(完整版见 B3 模块)
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader

# 1. 读取文档(产品手册、FAQ 等)
documents = SimpleDirectoryReader("product_docs/").load_data()

# 2. 建立索引(自动分块 + Embedding + 存储)
index = VectorStoreIndex.from_documents(documents)

# 3. 创建查询引擎
query_engine = index.as_query_engine()

# 4. 提问
response = query_engine.query("这个产品的蓝牙版本是多少?")
print(response)
# → "根据产品手册,XB-500 支持蓝牙 5.3..."

5.2 搭建步骤概览

Step 1:收集文档(1-2 小时)
产品手册(PDF/Word)
FAQ 文档
客服常见问题和回答
产品规格参数表
内部政策文档

Step 2:文档预处理(30 分钟)
转换为统一格式(文本/Markdown)
清理格式问题(乱码、多余空行)
检查内容完整性

Step 3:搭建 RAG 系统(1-2 小时)
安装依赖(pip install llama-index chromadb)
配置 Embedding 模型和 LLM
加载文档并建立索引
测试查询效果

Step 4:优化和部署(持续)
调整分块策略
优化检索参数
添加新文档
监控回答质量

5.3 不写代码也能用的 RAG 方案

如果你不想写代码,以下工具提供了开箱即用的 RAG 功能:

工具价格特点适合谁
ChatGPT + 文件上传$20/月(Plus)上传 PDF/文档,直接提问个人使用,文档量小
Claude + Projects$20/月(Pro)创建项目,上传多个文档作为知识库个人使用,需要长期知识库
Notion AI$10/月基于 Notion 笔记的 AI 问答团队已用 Notion
Dify免费开源可视化搭建 RAG 应用想自定义但不想写太多代码
Coze免费字节跳动出品,中文友好中文场景,快速搭建

6. RAG 优化技巧

6.1 影响 RAG 质量的关键因素

因素影响优化方向
分块策略块太大 → 噪音多;块太小 → 上下文丢失测试不同块大小,500-1000 字起步
Embedding 模型模型质量决定语义理解准确度用 OpenAI 或 BGE-M3,不要用太老的模型
检索数量(Top-K)太少 → 可能漏掉关键信息;太多 → 引入噪音从 Top-5 开始,根据效果调整
文档质量垃圾进垃圾出确保文档内容准确、格式清晰
查询改写用户问题可能不够精确用 LLM 改写用户问题后再检索

6.2 高级 RAG 模式(2026)

基础 RAG(Naive RAG):
用户问题 → 检索 → 生成
简单但有效,适合大多数场景

高级 RAG(Advanced RAG):
用户问题 → 查询改写 → 混合检索 → 重排序 → 生成
查询改写:用 LLM 优化用户问题
混合检索:关键词 + 语义同时检索
重排序:用 Cross-Encoder 对检索结果重新排序
适合对质量要求高的场景

模块化 RAG(Modular RAG):
用户问题 → 路由 → 选择最佳检索策略 → 多源检索 → 融合 → 生成
路由:判断问题类型,选择不同的检索策略
多源检索:同时从多个知识库检索
融合:合并多个来源的结果
适合复杂的企业级应用

Content rephrased for compliance with licensing restrictions. Sources: RAG Architecture Guide 2026, RAG Systems Production Guide 2026


7. 常见问题

7.1 RAG FAQ

问题回答
“RAG 和直接上传文件到 ChatGPT 有什么区别?”ChatGPT 的文件上传本质上也是一种 RAG,但你无法控制分块策略、检索参数等。自建 RAG 可以完全定制。
“我的数据量很小(<10 个文档),需要 RAG 吗?”不需要。直接上传到 ChatGPT/Claude 就够了。RAG 的价值在数据量大(50+ 文档)时才明显。
“RAG 能保证 100% 准确吗?”不能。RAG 减少幻觉但不能消除。检索可能漏掉关键信息,LLM 也可能误解检索内容。始终需要人工审核关键回答。
“多语言文档可以放在同一个知识库吗?”可以,但建议用支持多语言的 Embedding 模型(如 BGE-M3)。或者按语言分别建立索引。
“RAG 系统需要多少钱?”最低成本:Chroma(免费)+ OpenAI Embedding($0.02/M tokens)+ OpenAI GPT-4o-mini($0.15/M tokens)。1000 次查询约 $1-2。
“数据安全怎么办?”用本地 Embedding 模型(BGE-M3)+ 本地 LLM(Ollama)+ 本地向量数据库(Chroma),数据完全不出服务器。

7.2 什么时候不需要 RAG

场景为什么不需要替代方案
数据量很小(<10 页)直接放进 Prompt 就够了ChatGPT/Claude 文件上传
不需要实时更新数据固定不变Fine-tuning 可能更合适
只需要改变输出风格RAG 解决的是“知识“问题,不是“风格“问题Fine-tuning 或 Prompt 调整
通用知识问题AI 已经知道的信息不需要 RAG直接问 AI

8. 学习资源

8.1 入门推荐

资源来源为什么推荐
Building RAG from ScratchDeepLearning.AI免费课程,从零搭建 RAG
LlamaIndex 官方教程LlamaIndex最简单的 RAG 入门,10 行代码
RAG Architecture Guide 2026ZTabs2026 年最新的 RAG 架构全景
Embeddings GuideTutorialQEmbedding 和向量数据库的通俗解释

8.2 进阶推荐

资源来源为什么推荐
B3 RAG 知识库模块ecommerce-ai-roadmap本 Hub 的技术实操模块,完整代码
Vector Databases 2026 GuideIterathon向量数据库选型和生产部署指南
Retrieval-Augmented Generation (RAG) PaperMeta AIRAG 原始论文(2020),理解理论基础

10. 完成标志

  • 能解释为什么 AI 不知道你的产品信息
  • 理解 Embedding 的概念(文本 → 向量 → 语义相似度)
  • 知道向量数据库的作用和主流选择
  • 能画出 RAG 的三阶段架构(索引 → 检索 → 生成)
  • 能判断一个场景是否需要 RAG
  • 了解至少一种不写代码的 RAG 方案(ChatGPT 文件上传 / Claude Projects)

完成以上所有项目后,你已经理解了让 AI 使用私有数据的核心技术。接下来进入 F4 自动化与 Agent,学习如何让 AI 不只回答问题,还能执行任务。