智泊AI--Naive RAG

智泊AI–Naive RAG

1.Embeddings向量化

  向量检索:根据用户的输入,与向量数据库中存放的文本向量进行相似度匹配,返回最为相似的内容。

  文本嵌入模型(向量模型):将一个文本转换成一个「句向量」或「文本块向量」。

  (向量检索的准确度,和向量模型本身存在很大的关系。)

  目前向量模型的选择:

语种 推荐模型
中文 bge-m3、qwen-Embedding 系列模型
英文 bge-large-en、OpenAI-Embeddings

  Ollama / vLLM 等:推理引擎,用于实际加载并运行上述向量模型。调用时主要关注以下参数:

  • 模型名称:即要使用的向量模型的名称。
  • 向量的维度:模型支持输出多少维度的向量。维度越大,承载的信息越多、准确度越高,但运行成本也越大;实际工作中需对不同维度做必要测试,选合适的即可。
  • 向量的批次大小:一次性能够并行处理的文本块数量,其并行机制与平台有关、与模型无关。
  • 单批次最大处理 token 数:不同平台的口径不同——
    • 阿里平台:指单个文本块的大小;
    • 某些平台:指一个批次的总大小。

注意:如果在生产环境中使用在线向量模型,一定要加入检测机制——存在「名称没变、底层已更新」的情况,会导致相同输入产出不同的向量。

  向量的相似度计算

  生产中可基于这些算法构建测试集进行评测。

2.向量数据库

  选型时主要考虑四个维度:

  • 是否开源;
  • 是否需要对接现有技术栈(MySQL、Redis 等)。

  向量数据库的技术可行性

  • demo、学习:Chromadb;
  • 企业落地:Milvus。

  常见的向量检索算法(主要从应用角度理解、便于调参):

  • HNSW:基于图的近似最近邻,查询快、内存占用高;
  • IVF:倒排文件,先聚类再检索,平衡型;
  • PQ:乘积量化,压缩向量以省内存;
  • diskANN:面向磁盘的大规模检索。

  数据库(含向量数据库)建立索引,本质都是为了提升查询速度。

  top-k 与 top-p

  • top-k:按相似度排序,取前 K 条记录;
  • top-p:按相似度排序,取前 N 条记录,使这 N 条记录的相似度之和首次超过阈值 P 为止。

  collection 的主要功能

  • 添加文档:
1
2
3
4
5
collection.add(
documents=[...], # 原始文本内容(可选)
embeddings=[[...], [...]], # 文档的向量表示(必须)
ids=[...] # 每个文档的唯一 ID(必须)
)
  • 相似度检索:
1
2
3
4
results = collection.query(
query_embeddings=[0.1, 0.2, ...],
n_results=5, # 返回前 5 个最相似的结果
)

智泊AI--Naive RAG
https://one-null-pointer.github.io/2026/08/21/智泊AI--Naive RAG/
Author
liaoyue
Posted on
August 21, 2026
传送口