← 机制演示库 章节知识地图 ↗ / 演示 10B · 向量数据库原理(自动播放)

向量数据库:存什么、怎么存、怎么查

核心不是"存向量",是"存什么结构让检索最准":一张 knowledge_chunks 表存 content + embedding + metadata 三件套,靠 ANN 索引(HNSW / IVF)把"跟全库算一遍距离"换成可控的近似——快是买来的:HNSW 用 M、efConstruction、ef,IVF 用 lists、nprobe 在召回与延迟之间调参;靠 metadata 做过滤,靠"向量 + BM25 混合"兼顾语义与精确。向量库不是取代数据库,而是补上数据库缺失的"语义近似查询"能力——表结构仍是关系型的,只是多了 embedding 一列和 ANN 索引。
1x2x 待播放
写入侧
—
索引结构
—
读取侧
—
相似度阈值
sim>0.7
写入:文档→chunk(500-1000tok)→Embedding→INSERT → 读取:问题向量化→ANN检索→metadata过滤→混合检索→上下文扩展
文档切 chunk
500-1000 tokens
Embedding API
VECTOR(1536)
INSERT 表
content+emb+meta
问题向量化
ANN 检索 Top-K
过滤+混合
metadata+BM25
上下文扩展
注入 Prompt
光点 = 当前环节 · 向量库 = 倒排索引的语义版
knowledge_chunks 表(三件套)—
CREATE TABLE knowledge_chunks ( id UUID PRIMARY KEY, source VARCHAR(256), -- 来源文档 chunk_index INT, -- 第几个chunk(保序) content TEXT, -- 给 LLM 看的原文 embedding VECTOR(1536), -- 语义坐标 metadata JSONB, -- {title,section,tags} created_at TIMESTAMPTZ );
ivfflat
分区·先粗分桶再只扫 nprobe 桶
百万级 · lists=100 · 省内存
hnsw
多层图·上层粗定位逐层下沉
千万级 · 邻居数 M · 查询候选 ef
就绪点 ▶ 播放,看一条运维手册从入库到语义检索的全过程。向量数据库
⚡ 运行时动作:正在发生什么💡 知识讲解:为什么这么设计
向量库日志不是存向量,是存"检索最准的结构"
AI 工程小册 · 机制演示库 · 演示 10B 向量数据库原理(自动播放机制动画)
← 返回演示库