我正在测试 Redis 矢量搜索解决方案。我已经安装了 Redis 服务器并一直在遵循这些教程和文档:
这是我要创建的索引结构:
id = NumericField(name="id")
user_id = NumericField(name="user_id")
title = TextField(name="title")
seo = NumericField(name="seo")
email = TextField(name="email")
tariff = NumericField(name="tariff")
cash = NumericField(name="cash")
title_embedding = VectorField("embeddings",
"HNSW", {
"TYPE": "FLOAT32",
"DIM": VECTOR_DIM,
"DISTANCE_METRIC": DISTANCE_METRIC,
"INITIAL_CAP": VECTOR_NUMBER,
}
)
rubrics = ???
这个“版本”的 Redis 支持的数据类型数量似乎非常有限(我仍然不清楚这个基于向量的 Redis 是否与常规 Redis 有什么不同)。
所以根据 docs this Redis 仅支持以下数据类型:
Number Fields, Geo Fields, Vector Fields, Tag Fields, Text Fields
我应该如何在 this 版本的 Redis 中存储整数列表?
我想在
rubrics
字段中存储一个整数列表,该列表如下所示: [1, 22, 33]
这是可能的,取决于您的具体用例。
如果数字量规用于某种标记(例如,如果文档有 1,则表示某事),您可以使用 TAG 字段来预过滤具有或不具有某些标记的文档,以及任何联合标签的 (OR) 或交集 (AND)。
如果您的文档存储在 JSON 对象中,您还可以使用多值功能。然后,您将能够使用数字范围过滤文档,并过滤在查询范围内的 rubrics 字段中具有某些值的文档。
您还可以对数字范围查询执行逻辑运算,并将其他条件与其他字段组合。
有用文档的链接: 很快就会添加