用途:指导在 Redis 中存储和搜索嵌入向量,适用于用 FT.CREATE 定义 VECTOR 字段、用 RedisVL IndexSchema 建索引、为向量查询添加类别/日期/租户过滤,以及搭建基于 Redis 的 RAG 检索管线。该技能建立在 redis-query-engine 之上,向量字段位于 RQE 索引内,复用同一套 FT.CREATE / FT.SEARCH 机制。
索引配置:三项必须与嵌入模型匹配——DIM(模型输出维度,如 OpenAI text-embedding-3-small 为 1536,不匹配会产生静默错误结果)、DISTANCE_METRIC(归一化文本嵌入常用 COSINE,未归一化用 IP,原始欧氏用 L2)、TYPE(通常 FLOAT32,仅在内存为硬约束时用 FLOAT16 或量化变体)。
算法选择:HNSW 速度快、近似、召回约 95% 以上可调、内存较高,适合大于 1 万向量且对延迟敏感的场景;FLAT 精确但较慢、内存较低,适合小于 1 万且要求精确的场景。生产规模默认 HNSW,可调参数 M(16–64)、EF_CONSTRUCTION(100–500)、EF_RUNTIME。
混合检索:先用 TAG/NUMERIC 属性过滤缩小搜索空间再做向量比较,不要先取宽结果集再客户端过滤。文本与向量融合需 Redis ≥ 8.4 与 redis-py ≥ 7.1 的 HybridQuery,旧版用 AggregateHybridQuery。
RAG 模式:嵌入用户查询 → Redis 向量检索 → 将 top-K 上下文传给 LLM。实践建议:度量与模型匹配(现代文本嵌入多配 COSINE)、长文档先切块(200–500 token)、批量插入用 index.load([...])、检索前按属性预过滤。
限制:具体性能数值、价格与平台支持等资料未提供。