Harness 核心 · 模型周围的 Harness

从 Embedding 到 Milvus

语义相似度、ANN 与向量数据库的职责边界

本页解决的问题

先给结论

「从 Embedding 到 Milvus」要解决的关键问题是什么?

语义相似度、ANN 与向量数据库的职责边界

判断标准

让这个结论先证明自己值得留下。 把这一页当成决策工具,而不是需要背下来的定义。把概念连到一个真实任务、一个可观察结果,以及一个能改变你判断的失败上。

下一步

写下一个问题:试完这个方法后,你能用什么证据回答它?

常见误区

结论听起来很完整,却没有检查最关键的假设。

一条完整的数据链
1

原始内容

“退款多久到账?”以及文档、图片等业务数据。

2

Embedding

同一个模型把内容编码成固定长度的浮点向量。

3

ANN 搜索

近似最近邻用少量精度换取数量级更高的速度。

4

业务结果

返回 Top-K 文档,再交给应用或大模型使用。

为什么普通关键词搜索不够

字面不同,意思相近

“如何退钱”和“退款流程”未必共享关键词,但在语义空间里距离很近。Embedding 捕捉的是统计语义,不是可靠的事实判断。

不能逐条硬算

一百万条向量逐一精确比较成本太高。ANN 索引先缩小候选集,再计算距离;因此需要用 Recall 与延迟共同评测。

相似度的方向别弄反
Metric 怎样更相似 适用提示
L2(欧氏距离) 越小越近 关注绝对空间距离
IP(内积) 越大越近 向量模长会影响分数
COSINE 越大越近 关注方向;文本语义常用
关键约束:写入与查询必须使用同一 Embedding 模型、同一预处理方式和同一维度;建索引与搜索的 metric 也必须一致。否则“有结果”不等于“结果可信”。
Milvus 到底负责什么

同时保存向量、主键与来源、类别、时间等标量字段。

用向量索引完成 Top-K 搜索,并用标量 filter 缩小范围。

管理 collection、索引、加载与数据生命周期;它不替你生成 Embedding,也不替大模型回答。

收获 Embedding 决定“含义如何表示”,Milvus 决定“如何可靠且快速地存与找”。下一课把它翻译成数据库心智模型。

「原始内容」为什么能找到相关内容

「“如何退钱”和“退款流程”未必共享关键词,但在语义空间里距离很近。Embedding 捕捉的是统计语义,不是可靠的事实判断」把检索问题从“把资料存起来”推进到“怎样找到真正相关的资料”。这一步决定了 RAG、推荐和以图搜图最后交给模型的输入质量。

相似度不是答案,召回之后还要核对

在「一百万条向量逐一精确比较成本太高。ANN 索引先缩小候选集,再计算距离;因此需要用 Recall 与延迟共同评测」对应的流程里,Embedding 负责把对象放到可比较的语义空间,近邻索引负责减少搜索范围,最终的回答仍然依赖召回片段是否覆盖问题、距离指标是否合适,以及内容有没有过期。

先区分找得到和找得准

把「管理 collection、索引、加载与数据生命周期;它不替你生成 Embedding,也不替大模型回答」落成一次小测试:准备几条有明确答案的查询,记录召回的相关性、遗漏和无关结果,再决定是否需要换切分方式、索引或重排。

从「原始内容」走到「Embedding」

「原始内容」先把问题落在「“退款多久到账?”以及文档、图片等业务数据。 2」上;到了「Embedding」,讨论继续推进到「同一个模型把内容编码成固定长度的浮点向量。 3」。两段连起来,重点就不只是记住一个结论,而是看清它成立所依赖的条件。

把这条判断带到下一个场景

检索系统也可以这样看:先确定什么算相关,再观察召回是否覆盖问题,最后检查排序、切分和时效性有没有把真正有用的内容挤出去。

  • 「原始内容」:“退款多久到账?”以及文档、图片等业务数据。 2
  • 「Embedding」:同一个模型把内容编码成固定长度的浮点向量。 3
  • 「最后的要点」:管理 collection、索引、加载与数据生命周期;它不替你生成 Embedding,也不替大模型回答

最后的「最后的要点」把讨论落到「管理 collection、索引、加载与数据生命周期;它不替你生成 Embedding,也不替大模型回答」。回看这条线索时,最值得保留的是:当输入、规模或风险改变,哪些判断需要重新做一遍。

标记为已学完 阅读进度会自动记录
← 上一篇下一篇 →

继续阅读

同一条线上的下一篇。

文章讨论

读到这里,留下一个判断。

把刚想明白的地方、还没想通的问题,留给下一位一起学习的人。

正在讨论 从 Embedding 到 Milvus 模型周围的 Harness
3条讨论文章讨论 · 与共学社区同步
在共学社区查看
AM
Asha Morgan内容编辑
观点实践记录

我把这篇文章里的一个判断改写成了今天可以验证的小实验。比记住结论更有用的是,知道下一步要观察什么。

文章讨论7 有帮助
LH
Lin Harper独立开发者
观点观点

读完以后我先回头找它成立的条件,而不是直接把方法搬进项目。这个顺序让后面的取舍清楚很多。

文章讨论5 有帮助
KM
Kiki Moore产品运营
问题问题

如果把这个判断放到真实工作里,最先需要补的约束是什么?我想知道从阅读到第一次实践之间,哪一步最值得先做。

文章讨论4 有帮助