在 RedisDays NY 2022 上,我们宣布了新的向量相似性搜索(VSS)功能的公开预览版。VSS 是RediSearch 2.4 的一部分,可用于 Docker、Redis Stack和 Redis Enterprise Cloud 的免费和固定订阅。
在本文中,我将向您介绍向量相似度的基础知识,以及它的应用和资源共享,帮助您开始使用Redis VSS!
什么是向量相似度?
简单来说,它是衡量两个或多个向量的不同(或相似)程度。将向量视为数字列表。
为什么向量相似性搜索越来越受欢迎?
在其核心,矢量搜索允许开发人员根据音频、自然语言、图像、视频剪辑、录音和更多类型的数据检索信息。搜索非结构化数据使 VSS 成为构建高级相似性搜索体验的基础技术。
这些向量是如何为我的数据生成的?
随着人工智能的进步,数据科学家可以构建可以将几乎任何数据“实体”转换为其向量表示的模型。这里的实体可以是交易、用户资料、图像、声音、长文本(句子或段落)、时间序列或图表。这些中的任何一个都可以转化为它的“特征向量”,也称为“嵌入”。
这些嵌入意味着什么?
向量嵌入是数据的数字表示。它们以计算机和数据库可以轻松比较的方式捕获实体的最基本特征。这里有趣的部分是,如果一个模型为两个实体生成两个相似的嵌入(向量),您可以推断出两个原始实体在某些基本方面是相似的。
我是否需要成为数据科学家才能生成这些嵌入?
一点也不!有几个免费可用的AI模型和库允许开发人员从文本、图像或时间序列数据生成嵌入。例如,您可以使用HuggingFace Sentence Transformers生成句子的嵌入,使用Img2Vec生成图像的嵌入,使用Facebook Kats生成时间序列数据的嵌入。AI/ML 从业者熟悉为其数据实体生成“密集”特征表示(又名嵌入)的概念。他们现在可以将这些特征向量存储在 Redis 中并对其执行相似性搜索。
矢量相似度搜索可以构建什么样的应用程序?
您与之交互的一些日常应用程序依赖于向量相似性搜索。
从电子商务网站上的视觉搜索到自动聊天机器人/问答系统和多种类型的推荐系统。更一般地说,您会发现 VSS 在实时发现相似性对于解锁价值至关重要的任何应用程序中都很有用。下面列出了一些常见用例:
-
电子商务推荐:使用视觉相似性和/或语义相似性来增强高级搜索体验和产品推荐
-
语义相似性:构建复杂的搜索体验、聊天机器人甚至问答系统
-
时间序列数据的相似性:根据历史模式的相似性发现疾病传播模式的相似性或交易机会
-
图形数据的相似性:揭示不同(可能不相关)的参与者或网络集之间的相似连接模式。
-
交易的相似性:根据与先前检测到的欺诈/威胁尝试的相似性检测潜在的欺诈或威胁
-
用户资料或产品的相似性:生成个性化推荐;根据嵌入数据揭示的模式细化您的客户细分
Redis如何实现向量相似度搜索?
RediSearch是一个 Redis 模块,为存储为 Redis 哈希或 JSON 格式的 Redis 数据提供查询能力、二级索引和全文搜索。在 Redis 2.4 中,Redis 引入了对向量相似性搜索的支持。
借助 RediSearch 2.4,Redis 开发人员可以:
-
索引和查询以 BLOB 形式存储在 Redis 哈希中的向量数据
-
使用两种流行的索引方法:FLAT 和 HNSW
-
使用三种常见的向量距离度量:余弦、内积和欧几里得距离
-
执行混合查询,将向量相似性与 GEO、NUMERIC、TAG 或 TEXT 数据的传统 RediSearch 过滤功能相结合。电子商务环境中混合查询的一个常见示例是“查找视觉上与给定查询图像相似的商品,这些商品仅限于 GEO 位置和价格范围内的可用商品”。
有没有可用的演示?
如果您熟悉 Python,请尝试以下方法:
对于 Java,您可以尝试这个基本演示,它展示了如何创建索引、加载数据, 和查询。
我在哪里可以了解更多信息?
尝试观看这两个 RedisDays 2022 会议的回放:
-
幕后花絮: 使用 AI 揭示隐藏在公司文件中的交易信号
您可以随时查看有关“使用向量”的文档。
我该如何开始?
使用 RediSearch 2.4 创建 Redis 数据库有三种简单的方法。
从您的终端,您可以使用以下任一方式获取它:
-
Docker – “docker run -p 6379:6379 redislabs/redisearch:2.4.5”
-
Redis Stack – “brew install redis-stack”(来自 Mac OS )。对于其他操作系统,请尝试“Redis Stack 入门”
-
最后,您还可以使用Redis Enterprise Cloud
创建免费订阅如果您走 Redis Enterprise Cloud 订阅路线,请确保使用“ Redis Stack ”选项,它包括 RediSearch 2.4。
原文标题:Rediscover Redis for Vector Similarity Search
原文作者:Ed Sandoval
原文地址:https://redis.com/blog/rediscover-redis-for-vector-similarity-search/