哈尔滨网站开发渠道,山东专业的网站建设,wordpress自定义侧边栏,直播平台搭建什么是向量相似性搜索啊#xff1f; 例如#xff0c;你需要搜索一棵发财树的图片#xff0c;如果用传统数据库来检索#xff0c;你大概率会在茫茫树丛中错失心仪的发财树。但是#xff0c;向量相似性搜索能用向量来表示所有树的特征#xff0c;这样就能够通过计算向量之间… 什么是向量相似性搜索啊 例如你需要搜索一棵发财树的图片如果用传统数据库来检索你大概率会在茫茫树丛中错失心仪的发财树。但是向量相似性搜索能用向量来表示所有树的特征这样就能够通过计算向量之间的距离来判断树的相似度美美发财啦 听说Redis Enterprise也可以作为向量数据库来使用了 是的Redis VSS可以存储向量、为它们建立索引并执行向量相似性搜索哦~ 一、什么是向量数据库vector database 向量数据库vector database是一种以向量或数据点的数学表示形式存储数据的数据库类型。 受益于自然语言处理和计算机视觉方面的进展人工智能和机器学习使这种将非结构化数据转化为数字表示向量的方式成为可能其能捕捉到数据的意义和背景。
向量相似性搜索Vector Similarity Search, VSS简称VSS它是向量数据库的一个关键特征是在向量数据库中寻找与给定查询向量相似的数据点的过程。 VSS 是一种高级搜索方法用于衡量不同数据之间的相似性虽然它适用于结构化数据但在比较非结构化数据例如图像、音频或长文本的相似性时VSS表现一样出色。常见的VSS用例包括推荐系统、图像和视频搜索、自然语言处理和异常情况检测等。例如如果你建立一个推荐系统你可以使用VSS来寻找并推荐与用户历史感兴趣产品相似的产品。
二、如何从图像或文本生成向量 这正是 AI/ML 发挥作用的地方。 预训练机器学习模型的广泛应用使得将几乎任何类型的非结构化数据图像、音频、长文本转换为向量嵌入变得简单。例如自然语言理解领域(Natural Language Understanding, NLU)的初创公司Hugging Face公开了数百个最先进的模型用户可以免费访问这些模型将原始文本数据转换为对应的向量表示。 在Hugging Face将原始文本数据转换为对应的向量表示
这些模型的巧妙之处在于只有当两个句子的含义在语义上相似时为两个句子生成的嵌入才会彼此 “接近”。
二维向量空间中向量嵌入的简化表示
在上图中您可以了解句子的嵌入是如何表现出相关性的。如果您查看用与“手机”相关的句子生成的嵌入您会注意到它们彼此“接近”参见上图的左上部分。更重要的是这两个嵌入都明显远离用与“食品补充剂”产品相关的句子生成的嵌入上图的右下部分。嵌入之间的“距离”代表了它们的语义相似性甚至有模型可以捕捉多种语言句子的语义相似性。
在计算机视觉领域也有一个类似的东西Torchvision一个用于计算机视觉领域的 PyTorch 库提供了许多预训练模型可用于为给定图像生成向量表示。与 Hugging Face 模型类似只有当图像在视觉上相似时Torchvision 为两幅图像生成的嵌入才会彼此接近。 开发人员可以在他们的应用程序中使用这些免费提供的模型。
生成向量表示或嵌入只是第一步。您需要一个数据库来存储向量、为它们建立索引并执行向量相似性搜索。
三、使用Redis Enterprise作为向量数据库 向量相似性搜索的核心是存储、索引和查询向量数据的能力。这些是向量数据库所需的基本功能。 Redis Enterprise的 VSS 功能RediSearch 模块的一个新功能。它允许开发人员像在 Redis Hash中存储任何其他字段一样轻松地存储向量。它提供高级索引和搜索功能使得在大型向量空间中可以进行低延迟搜索通常涵盖分布在多台机器上的数万到数亿个向量。 Redis Enterprise中的向量相似性检索过程
Redis Enterprise的向量搜索功能
实时搜索性能
搜索和推荐系统必须运行得非常快无论数据集合是分布在多个数据库节点上的数万个还是数亿个对象Redis Enterprise 中的 VSS 功能可以保证低延迟搜索。
内置容错和弹性
为确保您的搜索应用程序永远不会停机Redis Enterprise 使用无共享集群架构。它有应对各级别故障或灾难的的容灾能力包括针对进程级别、单个节点和跨基础设施可用性区域的自动故障转移。为确保您的非结构化数据和向量永远不会丢失Redis Enterprise 包括可调的持久化和灾难恢复机制。
降低架构和应用程序的复杂性
您的组织很可能已经在缓存方面受益于Redis Enterprise。与其启动另一个昂贵的单点解决方案不如扩展您的数据库以在您的应用程序中利用 VSS。开发人员可以像在Redis Hash或JSON 对象中存储任何其他字段一样轻松地存储向量。
跨云和地域的灵活性
选择您的数据库应该运行在哪里。Redis Enterprise可以部署在任何地方任何云平台、本地或多云或混合云架构都可以。
四、Redis VSS的用例
推荐系统
Redis Enterprise 帮助推荐引擎以低延迟向用户提供及时、相关的推荐。它可以帮助他们找到与其偏好一致的产品。
文献检索
Redis Enterprise 使用自然语言和语义搜索可以更轻松地从大量文档中发现和检索信息。
AI问答
Redis Enterprise利用语义搜索和生成 AI 工作流帮助问答系统利用来自OpenAI和Cohere的流行模型在知识库中发现和检索信息。
五、Redis VSS的特征
向量索引算法
Redis Enterprise 使用索引数据结构来管理向量以实现搜索速度和搜索质量的平衡达到智能相似性搜索的效果。根据您的数据和用例有两种流行的技术可选FLAT一种蛮力方法和HNSW 一种更快的近似方法。
向量搜索距离指标
Redis Enterprise 使用距离指标来衡量两个向量之间的相似性。有三个流行的用于计算两个向量“接近”或“相距”的程度距离指标可供选择——欧几里得距离、向量内积和余弦相似度——。
强大的混合过滤
充分利用 Redis Enterprise 查询和搜索模块中提供的全套搜索功能。通过将向量相似度的强大功能与更传统的数字、文本和标签过滤器相结合来增强您的工作流程将更多业务逻辑合并到查询中并简化客户端应用程序代码。
实时更新
实时搜索和推荐系统会生成大量不断变化的数据如新图像、文本、产品或元数据。随着数据集的不断变化Redis Enterprise可以无缝地对搜索索引执行更新、插入和删除操作这减小了过时数据带来的影响。
向量范围查询
传统的向量搜索是通过找到“前K个”最相似的向量来完成向量搜索的。除此之外Redis Enterprise 还支持在预定义的相似性范围或阈值内查找相关内容并提供更灵活的搜索体验。
六、客户评价 “有了 Redis VSS我们可以为客户提供可靠且速度极快的向量搜索服务。与我们最初基于 Lucene 的实现相比我们发现延迟减少了 80%。与这个值得信赖的品牌和团队合作因此我们使用Redis Enterprise的过程不那么困难了我们感到很开心。” ——Jacky KohCEO, Relevance AI