跳转至

什么是向量数据库?#

向量数据库将信息存储为数字:

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

这使得快速而准确的相似性搜索成为可能。使用向量数据库,您可以基于语义和上下文意义搜索相关数据,而不是使用传统的数据库查询。

简化示例#

向量数据库可以存储句子“n8n is a source-available automation tool that you can self-host”,但不是将其作为文本存储,而是存储一个表示其特征的维度数组(倨0到1之间的数字)。这并不意味着将句子中的每个字母转换为数字。相反,向量数据库中的向量描述了该句子。

假设在向量存储中0.1表示automation tool(自动化工具),0.2表示source available(开源可用),0.3表示can be self-hosted(可自部署)。您可能会得到以下向量:

句子 向量(维度数组)
n8n is a source-available automation tool that you can self-host [0.1, 0.2, 0.3]
Zapier 是一个自动化工具 [0.1]
Make 是一个自动化工具 [0.1]
Confluence 是一个可以自部署的 wiki 工具 [0.3]

这个示例非常简化

在实际中,向量要复杂得多。向量的大小可以从几十个到几千个维度不等。维度与单一特征之间没有一对一的关系,因此您无法将单个维度直接转换为单个概念。这个示例提供了一个近似的心理模型,而不是真正的技术理解。

展示相似性搜索的威力#

Qdrant提供向量搜索演示来帮助用户理解向量数据库的威力。美食发现演示展示了向量存储如何根据视觉相似性帮助匹配图片。

此演示使用来自送餐服务的数据。用户可以对菜品的照片表示喜欢或不喜欢,应用将根据外观推荐更多相似的菜品。还可以选择查看送餐范围内餐厅的结果。(来源

有关完整的技术细节,请参考Qdrant demo-food-discovery GitHub仓库

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

向量数据库需要其他工具才能正常工作:

  • 文档加载器和文本分割器:文档加载器拉取文档和数据,并为嵌入做好准备。文档加载器可以使用文本分割器将文档分解为块。
  • 嵌入:这些是将数据(文本、图像等)转换为向量,并将其转换回原始数据的工具。请注意,n8n仅支持文本嵌入。
  • 检索器:检索器从向量数据库中获取文档。您需要将它们与嵌入配对,以将向量转换回数据。
此页面是否
💬 微信

🚀 与作者交流

关注公众号
n8n实战笔记公众号
n8n实战笔记
📚 教程 💡 案例 🔧 技巧
添加微信
添加作者微信
1对1 专业指导
⚡ 快答 🎯 定制 🚀 支持