AI 简明手册
Agent 与 Harness 基础 · Agent 工程从 Embedding 到 Milvus

从 Embedding 到 Milvus

定义

Embedding 把内容转换成语义向量,Milvus 这样的向量数据库负责在海量向量中可靠且快速地存储和查找最接近的内容。

说明

Embedding 模型把文本、图片等内容编码成固定长度的浮点向量,语义相近的内容在向量空间中距离较近。因此“如何退钱”和“退款流程”即使字面不同,也可能被检索为相似内容。但 Embedding 表达的是统计语义,不是事实判断。

向量数据库的核心职责包括三部分:存,即保存向量及其对应的业务字段;找,即用 ANN 近似最近邻索引完成 Top-K 检索,并支持按标量字段过滤;管,即管理数据集合、索引和生命周期。向量数据库不生成 Embedding,也不负责最终答案生成。

使用向量检索时必须保证写入和查询使用同一个 Embedding 模型、同一预处理方式和同一维度,并且建索引与搜索使用同一个度量方式,否则检索结果可能看似正常,实际并不可信。

边界与误区

  • 为什么不能逐条精确比较向量: 当向量数量达到百万级时,逐条精确计算距离会带来不可接受的延迟。ANN 索引先快速缩小候选范围,再在小范围内计算距离,用少量精度损失换取了数量级更高的查询速度。

  • L2、IP 和 COSINE 应该怎么选: 选择必须与 Embedding 模型建议、向量是否归一化和索引配置一致。文本检索常见 COSINE,但它不是所有模型和数据的默认最优解。