系列文章: Trí tuệ nhân tạo
  1. 1 向量数据库是什么?语义 AI 搜索的基础
  2. 2 推荐系统是什么?TikTok 与 Shopee 如何推荐产品
  3. 3 什么是AI Agent?智能体如何自动化完成复杂任务?
  4. 4 Deepfake 是什么?如何检测和保护自己
  5. 5 什么是Prompt Engineering?高效指令AI的艺术
  6. 6 Fine-tuning 是什么?为企业定制 AI 模型
  7. 7 什么是RAG?Retrieval-Augmented Generation — 让AI学会查阅文档
✦ 快速摘要
向量数据库是什么?了解 Embedding 向量存储如何实现语义 AI 搜索、RAG 聊天机器人和推荐系统。
这篇文章怎么样?

向量数据库是过去两年中被讨论最多的 AI 基础设施组件——这并非偶然。 随着 AI 从简单聊天机器人演变为语义搜索系统、RAG 和推荐引擎, 向量数据库已成为不可或缺的基础。 本文将解释向量数据库是什么、其工作原理、最流行的解决方案, 以及为什么每个严肃的 AI 项目都需要理解它。

过去,语义搜索是拥有数百名机器学习工程师的大型科技企业的专属领域。 如今,得益于丰富的向量数据库生态系统和强大且易于获取的嵌入模型, 任何技术团队都可以在几天内构建出语义搜索引擎或 RAG 聊天机器人。 这是 2025 到 2027 年间企业构建 AI 产品方式最根本的转变之一。

向量数据库是什么?

向量数据库是专为存储和搜索嵌入向量而设计的数据库—— 这些嵌入向量是表示文本、图像、音频或任何其他类型数据的语义含义的多维实数数组。 与传统 SQL 通过精确匹配进行搜索不同,向量数据库执行相似性搜索—— 根据余弦相似度或欧氏距离等度量,在多维空间中找到最近的向量。 这是根本区别:SQL 比较字符,向量数据库比较含义。

这一核心理念源于语言模型理解世界的方式:不是比较字符, 而是将一切表示为语义空间中的坐标。 含义相近的两个词在该空间中的向量也会相近—— "dog"、"puppy"和"canine"会聚集在一起,尽管它们是完全不同的词。 向量数据库利用这一特性,构建能够理解语义而不仅仅是关键词匹配的搜索系统。 这是从聊天机器人到推荐引擎等所有现代 AI 应用的基础。

一个典型的向量有 128 到 1536 个维度——每个维度是一个大约在 [-1, 1] 范围内的实数。 例如,句子"适合程序员的笔记本电脑"被嵌入模型转换成一个 768 维的向量, 这个向量将比"电动摩托车"更接近"MacBook Pro for developers"或"ThinkPad X1 Carbon"的向量。 向量之间的距离反映了语义相似度——这是整个向量数据库技术所构建的基本原理。

为了高效存储和查询数以百万计的此类向量, 需要与传统关系型数据库完全不同的专用基础设施。 SQL 中使用的 B 树或哈希索引结构完全不适合在高维空间中进行搜索—— "维度诅咒"使得传统搜索算法随着维度数量的增加而变得极其缓慢。 向量数据库使用 HNSW 和 IVF 等专用算法来克服这一限制。

为什么需要向量数据库?

试着在一个包含 10 万种电子产品的传统 SQL 数据库中搜索"适合工作的笔记本电脑"。 如果产品描述中不包含"笔记本电脑"或"工作"这两个确切词语,查询将不返回任何结果—— 即便数据库中有完整技术规格的 ThinkPad、MacBook Pro 和 Dell XPS。 SQL 按照文本匹配原则运作,不理解文字背后的含义。 用户不得不猜测产品是如何被命名的,而不是描述自己的实际需求。

向量数据库从根本上解决了这个问题。 当你搜索"适合工作的笔记本电脑"时,系统将这个查询转换成向量, 然后找到余弦相似度最高的所有产品向量—— 结果将包括 ThinkPad、MacBook Pro 和 Dell XPS, 即便它们的描述中没有你搜索的确切词语。 用户可以搜索"妈妈的生日礼物",并获得香水、珠宝和高端家居用品的建议—— 而不需要查询中的任何词语出现在产品名称中。 这是从关键词匹配到意图理解的飞跃。

不仅在电商领域,现代企业各处都有语义搜索的需求: 根据情况描述找到与案件相关的法律文件,根据摘要找到类似的研究论文, 检测尽管表达方式不同但内容重复的评论, 或根据用户想要体验的情感推荐电影。 所有这些都需要按含义搜索,而不是按关键词——这正是向量数据库诞生的原因。

大型电商平台的研究显示,与纯关键词搜索相比,语义搜索可以将点击率提高 15-25%, 将转化率提高 10-18%。 这不仅是用户体验的改善,更是收入层面的直接竞争优势。 在用户越来越习惯与 AI 自然对话的世界里,理解语义的能力已是默认期望, 不再是高级功能。

工作原理

向量数据库的处理流水线由两个主要阶段组成:索引(indexing)查询(querying)。 在索引阶段,每段文本或数据对象都通过一个嵌入模型—— 例如 OpenAI text-embedding-3-small 生成 1536 维向量, Sentence Transformers 生成 384-768 维向量, multilingual-e5-large 支持多语言——转换成数字向量。 这个向量随后与 ID、来源、创建日期、类别等元数据一起存储在数据库中, 以便后续将过滤条件与向量搜索结合使用。

在查询阶段,用户的查询也被相同的嵌入模型转换成向量。 这一点至关重要:使用不同的模型来嵌入查询和数据会产生完全错误的结果, 因为它们生活在不同的数学空间中。 系统随后执行 ANN(近似最近邻)搜索—— 一种近似搜索算法,能够快速识别数据库中与查询向量最近的向量, 而无需计算与整个数据集的距离。 这是使向量数据库在面对数百万个向量时仍能快速工作的关键。

流行的 ANN 算法包括 HNSW(分层可导航小世界)——基于图的方法, 查询延迟通常低于 10ms,是最快的选项,用于 Qdrant 和 Weaviate; IVF(倒排文件索引)——先对向量聚类再在每个簇内搜索,比 HNSW 更节省内存; 以及 Meta 的 FAISS——一个强大的 ANN 库,是许多向量数据库的基础。 每种算法在速度、精度和内存使用之间有不同的权衡。

结果按余弦相似度排名:值为 1 表示两个向量完全相同,0 表示不相关,-1 表示完全相反。 在生产环境中,相似度阈值通常设在 0.7 到 0.9 之间,以过滤掉相关性不足的结果。 元数据过滤可以在同一个查询中与向量搜索结合使用, 以根据创建时间、产品类别或文档来源等附加条件缩小搜索范围。

流行的向量数据库

市场上有许多向量数据库解决方案,从云托管到开源自托管应有尽有。 每种解决方案都有其自身优势,适合不同的使用场景。 下表按关键标准总结了最流行的选项:

名称 类型 索引 语言 亮点
Pinecone 云托管 HNSW 自动扩展,明确的SLA
Weaviate 开源 + 云 HNSW Go 多模态,混合搜索
Qdrant 开源 + 云 HNSW Rust 高性能,强大的过滤
Chroma 开源(本地) HNSW Python 开发友好,轻量
pgvector 扩展 HNSW/IVF C PostgreSQL集成

Pinecone 是领先的云托管向量数据库服务,成立于 2019 年, 现为数千个组织提供服务,从初创公司到财富 500 强企业皆有。 无需管理基础设施,按需自动扩展,支持低延迟元数据过滤,并有明确的生产 SLA。 Pinecone 提供两种索引模式:无服务器(按使用量付费,适合有峰值的工作负载) 和基于 Pod 的(固定容量,适合稳定的工作负载和低延迟要求)。

Weaviate 是一个支持多模态的开源解决方案—— 能够在同一系统中存储和搜索文本、图像和音频。 Weaviate 开箱即用地集成了流行的嵌入模型(OpenAI、Cohere、HuggingFace), 并支持将 BM25 关键词搜索与向量搜索结合的混合搜索, 以在专业领域实现更高的精度。 可以在本地部署或使用 Weaviate Cloud Services。

Qdrant 用 Rust 编写,以高性能、良好的内存效率和强大的有效载荷过滤著称—— 允许在单个查询中将向量相似性与元数据条件的过滤结合起来。 例如:在一次查询中找到"与营销内容相似、在六月创建、评分超过4星的文档"。 Qdrant 还支持用于混合搜索的稀疏向量,以及二进制量化, 可将内存使用减少 32 倍,同时精度损失极小。

Chroma 是一个适合开发和原型开发的轻量级选择, 可以在内存中运行或在磁盘上持久化运行, 只需几行代码即可轻松与 LangChain 和 LlamaIndex 集成。 API 简单,无需复杂配置,适合初学者或快速构建概念验证。 然而,Chroma 缺乏复制、企业身份验证或水平扩展等生产功能—— 不推荐用于实际的高流量系统。

pgvector 是 PostgreSQL 的一个扩展,允许将向量搜索添加到现有数据库中, 无需单独的系统。 支持 HNSW 和 IVF 索引,与 SQL 完全集成—— 可以将向量搜索与普通关系表进行 JOIN,支持 ACID 事务和丰富的 PostgreSQL 生态系统。 最适合团队已有 PostgreSQL 基础设施的情况; 对于数千万向量以下的数据集性能良好。

除了这五个主要选项,Milvus 是一个强大的开源向量数据库, 专为大规模设计,特别适合数十亿向量的数据集和分布式工作负载。 Milvus 在亚洲的大型科技公司中被广泛使用。 带有 RedisSearch 模块的 Redis Stack 也支持在熟悉的 Redis 平台上进行向量相似性搜索, 适合已经使用 Redis 且需要利用内存存储实现超低延迟向量搜索的团队。

一个值得关注的趋势是来自主要提供商的云原生向量搜索服务: 带有 k-NN 插件的 AWS OpenSearch Service、Google Vertex AI Matching Engine 和 Azure AI Search 都已将向量搜索集成到其托管服务中。 如果团队已经锁定在特定的云提供商,并希望减少需要管理的服务数量,这些是不错的选择。 然而,在专业功能方面,Qdrant 或 Pinecone 等专用解决方案通常仍然更胜一筹。

RAG——检索增强生成

**RAG(检索增强生成)**是当今应用 AI 中最重要的技术, 而向量数据库是其骨干。 RAG 解决的核心问题是 LLM 的幻觉现象:当缺乏具体信息时, 模型倾向于"编造"听起来合理但实际上错误的答案。 RAG 通过在 LLM 生成答案之前,从可信来源为其提供恰好相关的信息块来解决这个问题。

RAG 流水线通过四个清晰的顺序步骤运行: (1) 用户的问题被嵌入模型转换成向量——与用于索引文档的相同模型。 (2) 向量数据库执行 ANN 搜索并返回余弦相似度最高的文本块—— 通常是 3 到 10 个块,每个块 200-500 个标记,具体取决于分块策略。 (3) 这些块按照标准模板与原始问题一起被纳入发送给 LLM 的系统提示中。 (4) LLM 根据提供的上下文生成答案,可以引用具体来源,避免幻觉。

结果是一个能够准确回答公司内部文档问题的聊天机器人—— 包括最新更新的操作程序,或 LLM 训练截止日期之后的信息—— 无需昂贵的微调。 RAG 的质量直接取决于向量数据库的质量: 良好的嵌入模型、适当的分块策略(固定大小、语义或递归)和准确的索引, 决定了 LLM 是否能收到所需的正确信息。

RAG 还解决了更新成本和速度的问题: 不需要每次有新文档时就重新训练或微调模型——那需要数天时间和数千美元—— 只需在几秒钟内将新文档索引到向量数据库中,RAG 就可以立即使用该信息。 这就是 RAG 成为企业 AI 聊天机器人默认架构的原因: 灵活、更新快,与微调或上下文填充等替代方案相比成本合理。

RAG 设计中一个重要的考虑因素是分块策略——如何在嵌入之前将长文本分割成较小的段落。 固定大小分块(按固定数量的标记划分,例如 512 个标记,50 个标记重叠)简单但可能切断重要上下文。 语义分块(按段落和主题边界划分)产生更好的结果但实现更复杂。 为文档类型(法律文本、技术指南、研究论文)选择合适的分块策略, 可以显著提高检索质量。

混合 RAG——将向量搜索与 BM25 关键词搜索结合—— 正在成为生产环境中的最佳实践。 向量搜索擅长找到语义内容,但有时会遗漏重要的精确匹配(例如产品代码、专有名词)。 BM25 擅长精确匹配但不理解语义。 通过互惠排名融合(RRF)算法将两者结合,在大多数实际任务中产生显著更好的结果。 Weaviate 和 Qdrant 都开箱即用地支持混合搜索。

解决方案比较

选择向量数据库取决于三个主要因素:数据集规模、团队的运维能力和元数据过滤需求。 Pinecone 最适合不想自行管理基础设施的大规模生产环境(数亿向量)—— 成本高于自托管,但显著节省 DevOps 时间,由提供商保证 SLA。 这是许多想专注于产品的初创公司和企业的选择。

Qdrant 是自托管的最强开源选择,尤其适用于需要复杂元数据过滤, 或需要完全控制数据隐私和数据驻留的使用案例—— 对于越南的金融和医疗机构尤为重要。 Qdrant Cloud 也为不想自行管理但仍希望使用开源的团队提供托管选项。 Qdrant 在复杂过滤基准测试中的性能通常优于 Weaviate。

pgvector 是团队已有 PostgreSQL 时最实用的选择—— 无需学习新系统,可利用整个 PostgreSQL 生态系统,包括备份、监控、ACID 事务和熟悉的工具。 然而,当数据集在高查询率下超过数千万向量时,pgvector 将需要被更专业的解决方案所取代。 如果从一开始就仔细设计架构,从 pgvector 迁移到 Qdrant 相对简单。

Chroma 只适合开发和概念验证——几分钟内设置完毕,API 简单,与 LangChain 集成良好。 迁移到生产环境时,请迁移到 Qdrant 或 Pinecone。 对于刚开始的团队的实用建议:在原型开发的第一周使用 Chroma, 自托管生产选择 Qdrant,托管生产选择 Pinecone, 已有 PostgreSQL 且数据集适中时选择 pgvector。

实际使用案例

基于知识库的企业聊天机器人是 ROI 最明确的最常见使用案例。 拥有 10,000 份内部文档——流程、操作指南、技术报告、HR 政策——的企业, 可以构建允许员工用自然语言提问并获得带有具体来源引用答案的聊天机器人。 员工不再需要在数千份文件中手动搜索,而是提问"请假超过5天的流程是什么?" 并在几秒钟内获得准确答案。

电商中的语义搜索显著提高转化率,并减少"未找到结果"的情况—— 这是导致客户放弃购买的主要原因之一。 客户不再只能通过准确的产品名称进行搜索, 而是可以搜索"新生儿用品"并获得尿布、奶瓶、婴儿床和婴儿服装的建议—— 即便这些产品的名称中没有这个确切短语。 大型电商平台的研究证实,语义搜索平均可将转化率提高 15%。

重复检测和垃圾邮件过滤是用户生成内容平台中高价值的应用。 当需要检测被改写以绕过关键词过滤器的虚假评论或垃圾评论时, 向量数据库可以找到语义相似度高(>0.9)的内容,即便表达方式完全不同。 例如:"this product is terrible"和"really bad quality, don't buy" 将具有高相似度并被标记以供进一步审查。 每天产生数百万条新内容的平台需要自动化这种内容审核。

推荐系统是向量相似性最早和最普遍的应用之一。 当用户观看电影 X 时,系统在语义空间中找到嵌入向量最接近 X 的电影—— 不仅基于类型或导演,而是基于电影的实际内容、风格和情感基调。 Netflix、Spotify 和 YouTube 都将向量相似性作为其推荐引擎的主要信号之一。

代码搜索和技术文档也是软件公司中越来越流行的使用案例。 开发人员不再只能按函数名或文件搜索, 而是可以用自然语言描述问题——"超时时的重试处理程序"—— 系统即便没有任何词语匹配,也会返回相关代码段。 GitHub Copilot 和 Cursor 都使用向量搜索在将相关代码上下文传递给 LLM 生成建议之前找到它。

针对越南语文本的向量数据库

越南语有几个影响嵌入质量的重要特性,需要仔细处理。 复杂的声调系统有 6 个声调,产生发音相近但含义完全不同的词对—— "ma"、"mà"、"má"、"mả"、"mã"、"mạ"。 仅支持英语的嵌入模型使用字节级标记化处理越南语, 无法捕捉这些细微的语义差异,导致相似性搜索质量显著下降。

VinAI 的 PhoBERT 是目前最强大的越南语嵌入模型, 使用 RoBERTa 架构在来自新闻、社交媒体和教科书的 20GB 越南语文本上进行训练。 PhoBERT-base 版本生成 768 维向量,大型版本生成 1024 维向量—— 两者在越南语基准测试中都显著优于多语言 BERT。 VinAI Embedding 和微软的 multilingual-e5-large 是需要多语言支持时的实用选择。

AlgoData 在其越南语社交媒体内容分析流水线中使用向量搜索—— 即便用户以各种不同方式书写,也能找到与品牌或事件相关的帖子: 缩写(例如用"ko"代替"không")、俚语、常见拼写错误, 或英越语言混用(Vietnamish)。 为越南语选择合适的嵌入模型可以将召回率提高 30-40%(与纯关键词搜索相比)—— 在品牌监控中尤为重要,因为不能遗漏任何提及。

一个重要的技术说明:在嵌入之前,应使用适合越南语的分词器(如 VnCoreNLP 或 underthesea) 对复合词进行分词。 "Hà Nội"应作为一个整体保留,而不是被分割成"Hà"和"Nội"—— 这会显著影响向量质量。 同样,"Bộ trưởng"(部长)是一个含义与"Bộ"和"trưởng"单独出现时完全不同的复合词。 这个预处理步骤常常被许多团队忽略,导致他们无法理解为何结果不佳。

除了选择嵌入模型,针对特定领域的嵌入微调是显著提升越南语效果的高级步骤。 例如,如果正在构建医疗或法律领域的搜索系统, 在领域特定语料库上对 PhoBERT 进行微调, 将比使用通用模型产生显著更好的结果。 嵌入的微调过程并不过于复杂—— 你只需要由相似和不相似句子对组成的数据集(对比学习), 约 1,000-10,000 对就足以显著改善特定领域的性能。

结论

向量数据库不再是未来的技术——它是 2027 年任何严肃 AI 系统的必备基础。 从 RAG 聊天机器人到电商中的语义搜索,从推荐系统到 UGC 平台中的重复检测, 一切都依赖于向量数据库所提供的按含义存储和搜索的能力。 LLM 的爆炸式发展带来了对向量数据库同等程度的需求爆炸—— 这一趋势只会增长,不会减少。

最重要的一点是:向量数据库本身并不创造魔法—— 嵌入模型的质量决定了 80% 的结果。 一个好的向量数据库配上差的嵌入模型, 将产生比简单向量数据库配上好的嵌入模型更差的结果。 投资于选择和微调适合你的领域和语言——尤其是越南语——的嵌入模型, 是系统设计中最重要的步骤。 分块策略(在嵌入之前如何将文本分割成片段)也会显著影响 RAG 中的检索质量。

向量数据库生态系统正在快速发展,竞争激烈: Qdrant、Weaviate 和 pgvector 每季度都发布重大更新; Pinecone 不断降低成本并推出新功能; AWS(OpenSearch)、GCP(Vertex AI Matching Engine)和 Azure 等主要云提供商, 正在将向量搜索集成到现有基础设施中。 现在是开始的好时机——从 Chroma 开始原型开发, 需要生产环境时选择 Qdrant 或 Pinecone, 始终优先考虑适合你的语言和领域的嵌入模型。

AI Agent 是什么?

Fine-Tuning 是什么?

推荐系统是什么?