跳到主要内容

什么是向量数据库?#

向量数据库以数字形式存储信息:

向量数据库是一种将数据存储为高维向量的数据库类型,这些向量是特征或属性的数学表示。(来源

这使得快速精准的相似性搜索成为可能。通过向量数据库,您无需使用传统数据库查询,即可基于语义和上下文关联性搜索相关数据。

简化示例#

向量数据库可存储句子“n8n是可供自主部署的开源自动化工具”,但并非以文本形式存储,而是存储代表其特征的维度数组(0到1之间的数值)。这并非将句子中的每个字母转换为数字,而是通过向量来描述语句特征。

假设在向量存储中:0.1代表自动化工具0.2代表开源可用0.3代表支持自主部署。最终可能得到以下向量:

语句向量(维度数组)
n8n是可供自主部署的开源自动化工具[0.1, 0.2, 0.3]
Zapier是自动化工具[0.1]
Make是自动化工具[0.1]
Confluence是可自主部署的Wiki工具[0.3]

此示例为高度简化版本

实际应用中向量更为复杂。向量的维度规模可从数十维到数千维,且维度与特征并非一一对应关系,因此无法将单个维度直接转换为独立概念。本示例仅提供近似思维模型,并非真实技术原理。

相似性搜索能力演示#

Qdrant提供向量搜索演示帮助用户理解向量数据库的强大功能。美食发现演示展现了向量存储如何通过视觉相似性匹配图片。

本演示使用外卖服务平台数据。用户可对菜品图片进行喜好标记,应用程序将根据视觉特征推荐相似餐品。用户还可选择仅查看配送半径内的餐厅结果。(来源

完整技术细节请参阅Qdrant演示项目GitHub仓库

嵌入、检索器、文本分割器与文档加载器#

向量数据库需配合以下工具运行:

  • 文档加载器与文本分割器:文档加载器负责获取文档数据并进行嵌入预处理,可通过文本分割器将文档切分为数据块
  • 嵌入工具:实现数据(文本、图像等)与向量之间的双向转换(注:n8n仅支持文本嵌入)
  • 检索器:从向量数据库中获取文档,需配合嵌入工具将向量还原为原始数据

文档对话功能