【RAG的“记忆心脏”】向量数据库深度介绍:搞懂它,你的RAG才算真正入门!
结构化数据与向量数据是两类完全不同的数据表示形式,分别适配传统关系型场景与现代语义检索场景,以下结合图示详解其核心差异、特点与应用:
1.1 结构化数据 vs 向量数据

结构化数据与向量数据是两类完全不同的数据表示形式,分别适配传统关系型场景与现代语义检索场景,以下结合图示详解其核心差异、特点与应用:
1.1.1 结构化数据:“规整、可被精确查询”的传统数据形式
图示左侧的数据库表(Customers、Orders、Products等)是结构化数据的典型代表,核心是通过“固定字段+关系模型”组织数据。
核心特点
- 形式规整:以表格、字段、行的形式存储,每个数据项对应明确的字段(如
customer_id、order_date); - 关系明确:通过外键(如
orders表的customer_id关联customers表)建立表间关系; - 查询精确:基于“等于、大于、包含”等精确条件查询(如“查询2025年1月的订单”“筛选价格>100的商品”)。
适用场景
传统业务系统(如订单管理、客户信息管理)、关系型数据库(MySQL、PostgreSQL)的核心数据形式,适合“已知明确查询条件”的场景。
1.1.2 向量数据:“语义化、可被相似性检索”的现代数据形式
图示右侧的“向量嵌入”是向量数据的典型代表,核心是将非结构化数据(文本、图像、音频)转化为低维实数向量,通过“向量相似度”衡量语义关联。
核心特点
- 来源非结构化:由嵌入模型将文本、图像、音频等非结构化数据编码生成(如图示中的文本、图片、音频→嵌入模型→向量);
- 形式稠密/稀疏:通常为低维稠密向量(如1024维),每个维度是连续实数;
- 查询基于相似性:不依赖“精确匹配”,而是通过“向量距离(如余弦相似度)”检索语义相近的内容(如“找和‘用户投诉商品质量’语义相似的文本”)。
适用场景
现代语义检索(如RAG)、多模态交互(如以文搜图)、推荐系统,依赖向量数据库(如Pinecone、Milvus)存储与检索。
1.1.3 核心差异对比表
| 对比维度 | 结构化数据 | 向量数据 |
|---|---|---|
| 数据来源 | 业务系统录入(如订单、客户信息) | 非结构化数据编码(文本、图像等) |
| 数据形式 | 表格/字段/行 | 低维实数向量 |
| 核心特征 | 字段明确、关系清晰 | 承载语义、无明确字段含义 |
| 查询方式 | 精确条件匹配(=、>、IN) | 相似性匹配(余弦相似度、欧氏距离) |
| 存储工具 | 关系型数据库(MySQL) | 向量数据库(Milvus) |
| 核心场景 | 传统业务管理 | 语义检索、多模态交互 |
1.1.4 实际应用中的互补性
现代系统通常同时使用两类数据:
- 用结构化数据存储业务元信息(如订单ID、客户姓名);
- 用向量数据存储语义信息(如订单备注的文本向量、商品图片的图像向量);
- 典型流程:通过结构化数据筛选范围(如“2025年1月的订单”),再通过向量数据检索该范围内语义相似的内容(如“备注含‘商品损坏’的订单”)。
1.2 简单的向量存储

在这里插入图片描述

在这里插入图片描述
向量存储的核心是将“低维实数向量”与“原始数据/元信息”关联保存,方便后续通过向量相似度检索对应的内容。常见的存储样式分为基础格式和向量数据库格式两类,以下结合示例详解:
1.2.1 基础存储样式:本地文件的简单形式
如果是小规模场景(如个人知识库),可直接用文本文件、CSV等本地格式存储向量,核心是“向量+元信息”的键值对/列表结构。
示例1:JSON文件存储(最直观)
以“文本+向量”为例,每个条目包含原始文本、对应的向量、可选元信息(如ID、标签):
[ { "id":"doc_001", "content":"蛇灵是武周时期的反派组织", "vector":[0.21,-0.53,0.87, ...,0.32],// 假设为128维向量 "meta":{"category":"武侠","source":"电视剧"}},{ "id":"doc_002", "content":"李元芳的武器是幽兰剑", "vector":[0.65,0.12,-0.49, ...,0.78], "meta":{"category":"武侠","source":"电视剧"}}]
- 特点:结构清晰,易读易写,但不支持高效的相似性检索(大规模数据需遍历全量向量)。
示例2:CSV文件存储(表格化)
将向量拆分为多列(vector_0到vector_127),与元信息同表存储:
| id | content | vector_0 | vector_1 | … | vector_127 | category | source |
|---|---|---|---|---|---|---|---|
| doc_001 | 蛇灵是武周时期的反派组织 | 0.21 | -0.53 | … | 0.32 | 武侠 | 电视剧 |
| doc_002 | 李元芳的武器是幽兰剑 | 0.65 | 0.12 | … | 0.78 | 武侠 | 电视剧 |
- 特点:适配表格工具(如Excel),但向量维度高时列数过多,维护不便。
1.2.2 向量数据库存储样式:工业级场景的专业形式
大规模场景(如企业RAG)需用向量数据库(如Milvus、Pinecone)存储,核心是“向量索引+元信息关联”,存储样式通常包含向量字段和元信息字段两类。
示例:Milvus中的集合(Collection)结构
在Milvus中,需先定义“集合”的schema(结构),包含向量字段、主键字段、元信息字段:
from pymilvus import FieldSchema, CollectionSchema, DataType, Collection# 定义字段fields = [ FieldSchema(name="id", dtype=DataType.INT64, is_primary=True), # 主键ID FieldSchema(name="content", dtype=DataType.VARCHAR, max_length=512), # 原始文本 FieldSchema(name="vector", dtype=DataType.FLOAT_VECTOR, dim=128), # 128维向量 FieldSchema(name="category", dtype=DataType.VARCHAR, max_length=32) # 元信息(分类)]# 定义集合schemaschema = CollectionSchema(fields, description="武侠内容知识库")# 创建集合collection = Collection(name="wuxia_knowledge", schema=schema)
插入数据时,以“字段-值”的形式传入:
data = [ [1, 2], # id ["蛇灵是武周时期的反派组织", "李元芳的武器是幽兰剑"], # content [[0.21, -0.53, ..., 0.32], [0.65, 0.12, ..., 0.78]], # vector ["武侠", "武侠"] # category]collection.insert(data)
- 核心特点:
- 向量字段单独存储,并构建“向量索引”(如IVF_FLAT、HNSW),支持高效相似性检索;
- 元信息与向量关联,检索时可同时返回原始内容、分类等信息;
- 支持“向量检索+元信息过滤”(如“检索语义相似且分类为‘武侠’的内容”)。
1.2.3 存储样式的核心要素
无论哪种存储方式,向量存储都需包含两个核心部分:
- 向量本身:低维实数数组(如128/256/1024维),是相似性检索的核心依据;
- 关联信息:原始数据(如文本、图像路径)、元信息(如ID、分类、来源),用于检索后返回结果。
简单来说,向量的存储样式本质是“把‘语义向量’和‘对应的内容’绑定在一起”——小规模场景用本地文件(JSON/CSV)简单绑定,大规模场景用向量数据库通过索引高效绑定。
2. 主流向量数据库一览
2.1 商用向量数据库的核心功能

在这里插入图片描述
2.2 向量数据库

在这里插入图片描述
图中展示的是当前工业界常用的向量数据库/向量存储工具,它们的核心功能是存储向量并支持高效的相似性检索,但在定位、特性、适用场景上各有侧重,以下分类介绍:
1. 独立向量数据库(专注向量检索)
这类工具是专门为向量存储与检索设计的独立系统,适配大规模、高性能场景:
- Milvus
| 维度 | 详情 |
|---|---|
| 定位 | 开源分布式向量数据库,专注企业级大规模向量检索场景 |
| 核心功能 | 高性能分布式向量检索;支持 IVF、HNSW、ANNOY、DiskANN 等多种索引算法;支持余弦/欧氏/内积等相似度计算 |
| 核心特点 | • 横向可伸缩,支持1000+节点集群 • 支持动态字段、数据分区、并行查询 • 适配多语言SDK(Python/Java/Go等) |
| 优势 | • 企业级SLA,支撑10⁸+量级数据的高吞吐检索 • 社区活跃,生态完善(兼容LangChain/LlamaIndex等) |
| 劣势 | • 运维相对复杂(分布式集群需配置管理) • 小规模单机部署时资源占用较高 |
| 适用场景 | • 金融、医疗等行业的大规模知识库(数据量≥1亿) • 多并发检索、实时增量写入的生产环境 • 需要复杂过滤逻辑的向量检索任务 |
| 选型建议 | 当数据量≥1亿、对吞吐/可用性要求高时,作为企业级向量存储的首选 |
- Weaviate
| 维度 | 详情 |
|---|---|
| 定位 | 开源向量数据库+知识图谱融合方案,主打“开箱即用”的多模态检索与知识关联能力 |
| 核心功能 | • Any-to-Any 多模态检索(支持 nearText/nearImage/nearVector 等跨模态查询) • 向量检索与实体关系查询一体化 • 内置向量化管道(无需额外集成嵌入模型) |
| 核心特点 | • 原生支持 GraphQL 接口,查询灵活直观 • 内置 CLIP、ImageBind、OpenAI Embeddings 等主流多模态/文本嵌入模型 • 自动 schema 管理,降低配置成本 |
| 优势 | • 上手门槛低,零运维成本,开箱即用(无需额外接入嵌入模型) • 多模态查询统一 API,简化跨模态场景开发 • 知识图谱与向量检索深度融合,支持实体关联查询 |
| 劣势 | • 集群扩展性弱于 Milvus,大规模数据(1亿+)吞吐性能稍逊 • 企业级高级特性(如高可用集群、专属支持)需付费商业版 |
| 适用场景 | • PoC 验证、多模态实验场景 • 快速上线 MVP(最小可行产品) • 多模态知识库、智能问答系统(需知识关联+跨模态检索) |
| 选型建议 | 团队无专职运维、希望快速落地多模态/知识关联检索场景,或需快速验证原型时优先推荐 |
- Qdrant
| 维度 | 详情 |
|---|---|
| 定位 | 开源轻量级向量数据库,主打“低延迟+高效过滤”,适配中小规模语义检索场景 |
| 核心功能 | • 高性能向量相似性检索(支持余弦/欧氏/内积等相似度计算) • 单阶段过滤(Single-Stage Filtering)与混合搜索(Hybrid Search) • 地理空间检索(适配位置相关场景) |
| 核心特点 | • Rust 内核开发,单节点/小集群性能优异,资源占用低 • 支持多向量字段存储与分段索引,适配复杂数据结构 • 丰富的二级过滤与布尔查询能力(如数值、文本、枚举型字段过滤) |
| 优势 | • 部署极简(单二进制文件启动,无需复杂依赖),运维成本低 • 延迟低、吞吐高,对复杂过滤条件的响应速度快 • 轻量且功能完备,无需额外集成工具即可满足中小规模检索需求 |
| 劣势 | • 大规模分布式部署方案相对较新,超大规模数据(1亿+)场景的稳定性与扩展性需自行打磨 • 高级企业级特性(如跨区域高可用、专属技术支持)相对欠缺 |
| 适用场景 | • 创业公司RAG系统、个人知识库(中小规模数据量) • 对过滤/布尔查询依赖度高的语义搜索(如“检索分类为‘技术文档’且语义相似的内容”) • 轻量级生产环境、边缘计算场景 |
| 选型建议 | 当需要在语义召回精度与精确过滤需求间平衡,且数据量为中小规模(千万级以下)、无复杂分布式运维资源时,优先推荐 |
| 4. Pinecone |
| 维度 | 详情 |
|---|---|
| 定位 | 闭源托管式向量数据库(Serverless 架构),主打“零运维+快速落地”的企业级向量检索服务 |
| 核心功能 | • 全托管高可用向量相似性检索(支持余弦/欧氏/内积等相似度计算) • 稀疏+稠密混合检索(Hybrid Search),兼顾关键词与语义匹配 • 支持 Namespace 多租户隔离,适配多业务场景复用 |
| 核心特点 | • Serverless 架构,无需手动配置集群,自动扩缩容(适配流量波动) • 内置数据备份、故障转移机制,保障服务高可用 • 兼容主流嵌入模型(OpenAI、BGE、XLM-R 等),无缝衔接现有流程 |
| 优势 | • 运维门槛极低,无需关注集群部署、索引优化、扩容等操作,专注业务开发 • SDK 友好(支持 Python/Java/Go 等多语言),接入成本低 • 提供企业级 SLA 保障,稳定性与可靠性强 |
| 劣势 | • 成本随存储量、查询 QPS 增长而上升,大规模长期使用成本高于自建开源数据库 • 依赖云厂商网络环境,跨区域访问可能存在网络延迟 • 闭源特性导致自定义扩展能力有限,无法二次开发核心功能 |
| 适用场景 | • 项目初期快速验证原型(PoC)、短期试点业务 • 无专职运维团队的中小公司、创业团队 • 需快速上线大规模检索服务(如 RAG、推荐系统)且不希望自建集群的场景 |
| 选型建议 | 当项目处于初期验证阶段、运维资源短缺,或追求“快速落地+稳定可用”且对成本敏感度适中时,优先推荐;长期大规模使用需评估成本与自定义需求后决策 |
- Vespa
| 维度 | 详情 |
|---|---|
| 定位 | 企业级大规模分布式检索与实时计算平台,融合向量检索、全文检索、机器学习推理能力,主打复杂排序与高吞吐场景 |
| 核心功能 | • 多模态向量检索(支持多向量字段、余弦/欧氏等相似度计算)+ 全文检索(BM25)混合查询 • 复杂 ranking 排序(支持自定义排序函数、多阶段重排) • 内置机器学习模型部署与在线推理(兼容 Java/Python 模型) • 实时数据写入、增量更新与分布式存储 |
| 核心特点 | • 一体化架构:无需集成多个工具,一站式实现“数据存储→检索→排序→模型推理”全流程 • 在线学习支持:可基于实时查询/反馈数据进行在线训练,动态优化排序效果 • 高扩展性:分布式集群支持横向扩容,适配超大规模数据与高并发查询 • 灵活数据模型:支持结构化数据、非结构化数据、向量数据混合存储与联合查询 |
| 优势 | • 企业级特性完善:提供高可用、高一致性保障,支持流量控制、监控告警等生产级功能 • 检索与排序能力强:兼顾向量语义匹配与业务规则排序,复杂场景适配性优 • 模型与检索深度融合:无需额外部署推理服务,检索过程中可直接调用模型完成实时重排 |
| 劣势 | • 学习曲线陡峭:配置复杂(需熟悉 schema 定义、排序规则、集群参数),上手成本高 • 部署与运维成本高:分布式集群依赖多组件,需专业团队维护 • 轻量级场景适配性差:小规模数据、简单检索需求下资源占用过高 |
| 适用场景 | • 电商推荐(如商品语义检索+个性化排序)、新闻/内容分发(多维度排序) • 广告排名(结合用户画像、点击反馈的复杂排序) • 大规模企业搜索(需混合全文+向量+结构化数据查询) • 实时推荐系统(高吞吐查询+在线模型推理) |
| 选型建议 | 当业务需要“向量检索+复杂排序+实时模型推理”一体化解决方案,且存在大规模数据、高并发查询、自定义 ranking 需求时优先推荐;中小规模场景、无复杂排序需求时,更适合选择轻量化向量数据库(如 Qdrant)或专用向量数据库(如 Milvus) |
2.传统数据库的向量扩展(结构化+向量混合存储)
这类工具是传统数据库增加向量存储能力,适合“结构化数据+向量数据”混合场景:
- pgvector
| 维度 | 详情 |
|---|---|
| 定位 | PostgreSQL 关系型数据库的向量检索插件,主打“关系型数据+向量数据原生融合”,适配已有 PostgreSQL 生态的轻量级向量场景 |
| 核心功能 | • 原生支持向量存储与 kNN 相似性检索(支持余弦相似度、欧氏距离、内积等度量方式) • 支持 IVF、HNSW 等主流向量索引,提升检索效率 • 支持 SQL 语法与向量查询混合使用,可直接关联关系型数据表(如联表筛选“用户所属部门=技术部”且语义相似的文档) |
| 核心特点 | • 与 PostgreSQL 无缝集成:向量字段可与传统关系型字段(数值、文本、日期等)同表存储,无需跨库关联 • 复用 PostgreSQL 原生能力:直接使用事务、权限控制、备份恢复、索引优化等成熟特性,无需额外搭建配套系统 • 低学习成本:通过 SQL 语句即可完成向量的增删改查(如 SELECT * FROM docs ORDER BY vector <-> '查询向量' LIMIT 10),无需学习新接口 |
| 优势 | • 零额外数据库成本:无需部署独立向量数据库,利用现有 PostgreSQL 集群即可扩展向量功能 • 关系型+向量混合查询天然适配:适合需要结合业务属性筛选(如时间范围、用户权限)与语义检索的场景 • 生态成熟稳定:依托 PostgreSQL 完善的社区支持,兼容性、可靠性经过长期验证,企业级适配性强 |
| 劣势 | • 单机性能有限:单节点处理大规模向量(千万级+)时,检索延迟、吞吐量表现弱于 Milvus 等分布式向量数据库 • 大规模扩展复杂:PostgreSQL 分布式部署(如基于 Citus 扩展)的配置、运维成本高,向量检索的分布式调度能力不足 • 向量高级特性欠缺:缺乏 PQ 量化索引等性能优化手段,高维向量(1024 维以上)存储与检索效率较低 |
| 适用场景 | • 已有 PostgreSQL 部署的业务(如企业 ERP 系统、客户管理系统),需追加简单向量检索功能 • 关系型数据与向量数据混合查询的场景(如“检索 2025 年发布且与‘产品迭代计划’语义相似的文档”) • 数据量<千万级、对向量检索性能要求不极致的轻量级生产场景或原型验证 |
| 选型建议 | 当企业已使用 PostgreSQL、需快速落地“关系型+向量”混合查询,且数据量在千万级以下、无复杂分布式需求时优先推荐;若向量数据量突破千万级、需高并发检索,或以向量语义检索为核心场景,更适合专用向量数据库(如 Milvus、Qdrant) |
- Redis(Redis Stack)
| 维度 | 详情 |
|---|---|
| 定位 | 基于 Redis 内存数据库的向量检索方案(通过 Redis Modules 扩展),主打“低延迟+高并发+缓存生态融合”,适配已有 Redis 集群的实时检索场景 |
| 核心功能 | • 支持 HNSW、Flat 等向量索引类型,适配不同精度-速度需求 • 向量相似性检索(支持余弦相似度、欧氏距离、内积等度量方式),单实例延迟可达亚毫秒级 • 兼容 Redis 原生数据结构(字符串、哈希、集合等),支持“缓存数据+向量检索”混合操作,可结合 RedisStream、Pub/Sub 实现实时流式检索 |
| 核心特点 | • 内存优先存储:向量数据优先加载到内存,检索速度远超磁盘型数据库,天然适配高并发实时场景 • 无缝集成 Redis 生态:可复用已有 Redis 集群的缓存策略、消息队列、分布式锁等能力,无需额外搭建独立系统 • 轻量化部署:支持单实例、集群模式(Redis Cluster),部署与运维成本低,团队普遍具备 Redis 运维经验 |
| 优势 | • 低延迟高并发:单实例支持每秒数万次向量检索请求,延迟控制在毫秒级以内,满足实时响应需求 • 生态复用性强:已有 Redis 缓存/消息体系的业务可直接扩展向量功能,适合“缓存层即检索层”的架构设计 • 多场景适配:支持静态向量检索、实时流式检索、混合数据查询(如“缓存用户画像+向量语义匹配”) |
| 劣势 | • 内存消耗大:向量数据全量或部分驻留内存,大规模向量(亿级+)存储需投入大量内存资源,成本较高 • 分布式扩展复杂:Redis Cluster 需通过 Slot 管理数据分片,向量检索的跨分片查询效率较低,横向扩容需精细化规划 • 向量高级特性有限:缺乏 PQ 量化等内存优化索引,高维向量(1024 维以上)的存储与检索效率不及专用向量数据库 |
| 适用场景 | • 已有 Redis 集群的业务(如电商实时推荐、高并发智能客服、实时内容检索),需追加向量语义检索功能 • 对实时性要求极高的场景(如毫秒级响应的推荐系统、实时消息流语义匹配) • 缓存/路由层即需完成检索的架构(如“用户请求→Redis 缓存校验+向量检索→直接返回结果”),无需穿透到后端数据库 |
| 选型建议 | 当业务需“高并发低延迟+缓存生态复用”,且向量数据量为中小规模(千万级以下)、对内存成本可接受时优先推荐;若向量数据量突破亿级、需长期持久化存储且内存成本敏感,更适合 Milvus 等分布式磁盘+内存混合架构的专用向量数据库 |
- MongoDB Atlas
| 维度 | 详情 |
|---|---|
| 定位 | MongoDB Atlas(托管式文档数据库)的向量检索扩展功能,主打“文档存储+向量检索+全文/地理检索”一体化,适配已有 MongoDB 生态的托管式场景 |
| 核心功能 | • 托管式向量相似性检索(支持余弦/欧氏/内积等相似度计算),向量维度最高支持 2048 维 • 无缝联动 MongoDB 文档数据,支持“文档字段过滤+向量检索”混合查询(如“筛选状态为‘有效’且语义相似的商品文档”) • 集成全文索引、地理位置检索能力,可在单次查询中融合文档检索、向量匹配、地理筛选 |
| 核心特点 | • 原生兼容 MongoDB 生态:向量字段与文档其他字段(文本、数值、数组等)同库存储,无需跨系统关联 • Atlas Serverless 架构:支持按需弹性扩缩容,适配流量波动,无需手动管理集群资源 • 统一操作体验:通过 MongoDB 原生查询语法(如 Aggregation Pipeline)配置向量检索逻辑,无需学习新接口 |
| 优势 | • 零运维成本:完全托管式服务,MongoDB 官方负责集群部署、备份、故障转移、版本升级 • 安全与监控完善:内置数据加密、访问控制、性能监控告警等企业级特性,无需额外搭建 • 快速增量扩展:已有 MongoDB Atlas 部署的团队,可直接在现有文档集合中添加向量字段,无需迁移数据 |
| 劣势 | • 成本较高:托管服务费用随存储量、查询 QPS 增长,长期大规模使用成本高于自建开源向量数据库 • 向量检索性能有限:相比 Milvus、Qdrant 等专用向量数据库,亿级向量或高并发场景下检索延迟、吞吐量表现稍逊 • 自定义能力弱:向量索引类型、检索算法参数可配置空间少,难以满足极致性能调优需求 |
| 适用场景 | • 已使用 MongoDB Atlas 存储文档数据(如产品信息、用户画像、内容稿件),需增量添加语义检索功能的团队 • 追求“文档存储+向量检索”一体化,无需跨系统维护的中小规模场景 • 对托管服务的可靠性、安全性有高要求,且预算充足的企业级业务 |
| 选型建议 | 当团队已基于 MongoDB Atlas 构建业务、需快速落地向量检索功能,且对运维成本敏感、预算充足、向量数据量为中小规模(千万级以下)时优先考虑;若以向量检索为核心场景(如大规模 RAG、高并发语义检索),更推荐专用向量数据库 |
3. 搜索引擎的向量扩展(全文检索+向量检索)
这类工具是传统全文搜索引擎增加向量能力,适合“关键词检索+语义检索”混合场景:
- Elasticsearch
| 维度 | 详情 |
|---|---|
| 定位 | 基于全文搜索引擎的向量检索扩展方案,主打“全文检索(BM25)+ 向量检索(kNN)混合查询”,适配已有 Elasticsearch 生态的业务场景 |
| 核心功能 | • 原生支持 BM25 全文检索与 kNN 向量相似性检索(支持余弦/欧氏/内积等度量),可在单次查询中融合两种检索结果 • 支持稀疏向量(如关键词权重向量)与稠密向量(如语义嵌入向量)混合查询 • 插件式扩展能力(自定义排序脚本、rank_feature 权重调整、向量索引优化插件) |
| 核心特点 | • 兼容原有 Elasticsearch 生态:可复用已有的集群、索引、权限管理、监控告警体系 • 多数据类型统一存储:结构化数据、文本数据、向量数据可存入同一索引,支持联合过滤查询(如“筛选分类为‘电商’且语义相似的商品”) • 成熟的查询语法:通过 DSL 语句灵活配置“全文检索权重+向量检索权重”,适配不同场景的混合策略 |
| 优势 | • 零额外生态成本:已有 ES 集群的业务可直接增量扩展向量功能,无需重新搭建存储系统 • 社区与商业支持成熟:文档丰富、问题解决方案多,Elastic 官方提供企业级 SLA 与技术支持 • 混合检索天然适配:无需集成第三方工具,即可实现“关键词精准匹配+语义相似匹配”的双重检索,平衡召回率与精度 |
| 劣势 | • 向量检索性能不及专用向量数据库:大规模向量(亿级+)或高维向量场景下,检索延迟、吞吐量表现弱于 Milvus、Faiss 等专用方案 • 资源消耗高:向量索引体积大,对内存、磁盘IO要求高于纯文本索引,集群扩容成本高 • 向量相关优化有限:缺乏专用向量数据库的高级索引(如 PQ 量化索引)与分布式向量调度能力 |
| 适用场景 | • 已有 Elasticsearch 部署的业务(如日志平台、电商搜索、企业内部搜索),需增量添加语义检索功能 • 对“全文检索+向量检索”混合查询有强需求的场景(如“检索含‘烈焰拳’关键词且语义相关的武侠文档”) • 无需极致向量检索性能,追求生态复用与运维简化的中小规模向量场景 |
| 选型建议 | 当企业已部署 Elasticsearch 集群、需快速落地混合检索功能,且向量数据量为中小规模(千万级以下)、对检索性能要求不极致时优先考虑;若以向量检索为核心场景(如大规模 RAG、纯语义检索),更推荐 Milvus、Qdrant 等专用向量数据库 |
4. 轻量级/嵌入式向量存储(小规模场景)
这类工具部署简单、资源占用低,适合个人或中小规模场景:
- Chroma
| 维度 | 详情 |
|---|---|
| 定位 | 开源轻量级嵌入式向量数据库,主打“零运维+快速上手”,适配本地调试与小规模场景 |
| 核心功能 | • 轻量级向量存储与相似性检索(支持余弦/欧氏等相似度计算) • 适配本地开发与小规模应用,无需独立部署集群 • 支持与嵌入模型联动,快速完成“文本→向量→检索”全流程 |
| 核心特点 | • Python 原生开发,API 简洁友好,文档完善,上手成本极低 • 支持 SQLite、DuckDB 等多种后端存储,灵活适配不同本地环境 • 可直接内嵌到应用中运行,无需额外启动独立服务 |
| 优势 | • 零运维成本,无需配置集群、索引优化,Python 环境下一键调用 • 资源占用低,适合本地 Notebook 调试、桌面应用集成 • 生态兼容(适配 LangChain/LlamaIndex 等框架),快速搭建小规模 RAG 原型 |
| 劣势 | • 不支持大规模分布式部署,数据量突破 10 万条后性能明显下降 • 功能相对基础,缺乏复杂过滤、多模态检索等高级特性 • 高并发、高可用场景支撑能力弱,不适合生产环境大规模使用 |
| 适用场景 | • 个人知识库、小团队 RAG 原型开发 • Notebook 环境调试、本地开发测试 • 桌面应用、小型轻量化服务(低并发、小规模数据) |
| 选型建议 | 当数据量<10 万条、团队无运维资源,或需快速验证嵌入模型与检索逻辑(本地调试、原型验证)时,优先推荐;生产环境大规模场景需替换为 Milvus、Qdrant 等数据库 |
- LanceDB
- 定位:开源嵌入式向量数据库;
- 特点:基于Lance数据格式,支持高效过滤、版本控制,适合本地/边缘设备部署;
- 适用:边缘计算场景、本地知识库。
5. 向量检索库(非数据库,仅向量索引)
这类是纯算法库,需配合存储系统使用,适合自定义向量存储:
- Faiss 向量检索库
| 维度 | 详情 |
|---|---|
| 定位 | Facebook 开源的高效向量近邻检索库(非数据库),主打“算法级优化+极致性能”,作为高性能向量检索的底层核心组件 |
| 核心功能 | • 提供多种前沿向量索引算法(IVF、PQ、HNSW、LSH 等),适配不同数据量与精度需求 • 支持 CPU/GPU 双模式加速,大规模向量检索性能领先 • 支持余弦相似度、欧氏距离等多种度量方式,适配不同语义匹配场景 |
| 核心特点 | • 算法覆盖全面:从基础暴力检索(Brute-force)到高性能近似检索(HNSW/PQ),支持精度-速度灵活权衡 • 代码级可控:核心逻辑开源,支持算法参数精细化调优(如聚类数量、量化精度) • 轻量级无依赖:仅聚焦向量索引与检索算法,无多余功能冗余 |
| 优势 | • 性能顶尖:GPU 加速下支持亿级向量毫秒级检索,是业内性能标杆 • 算法前沿:持续迭代最新向量检索技术,适配高维、海量向量场景 • 灵活扩展:可无缝集成到自研系统,自定义存储、缓存、分布式逻辑 |
| 劣势 | • 无内置存储层:仅提供向量索引能力,需自行实现数据持久化(如对接 MySQL、本地文件)、元信息管理 • 无分布式原生支持:大规模分布式部署需手动封装(如基于 Kafka 实现数据同步、负载均衡) • 上手门槛高:需算法/开发团队理解索引原理,才能完成参数调优与系统集成 |
| 适用场景 | • 学术研究:向量检索算法对比、新算法验证(如自定义索引结构、优化度量方式) • 自研检索引擎:作为底层核心组件,搭建企业级高性能向量检索系统 • 极致性能需求场景:亿级高维向量检索、低延迟实时匹配(如推荐系统、大规模图像检索) |
| 选型建议 | 当团队具备 ML/算法背景、需追求极致检索性能,且愿意投入开发资源封装存储与分布式逻辑时优先选择;中小规模场景、无算法调优需求时,更推荐直接使用 Milvus、Qdrant 等成熟向量数据库 |
| 核心选型建议 |
- 企业级大规模场景:Milvus、Weaviate;
- 快速落地无运维:Pinecone;
- 混合结构化+向量:pgvector、Redis;
- 混合全文+语义检索:Elasticsearch;
- 个人/小团队原型:Chroma、Qdrant。

如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)