问题域/PD-240

查询执行器策略

Query Executor Strategy

根据 schema 自动选择查询执行策略,支持单向量/多向量/无向量三种模式的流水线执行

子问题

1.执行器自动选择

2.多向量并行查询

3.结果融合与重排序

4.向量类型到 numpy dtype 的安全转换

5.ID 查询与向量查询的统一抽象

6.距离度量归一化(L2/IP/COSINE 到 0-1 区间)

各项目的解法1 solutions

Signals

横向对比

维度zvec
策略选择机制Factory 根据 schema.vectors 长度自动分发三种执行器
流水线模式@final Template Method 锁定 validate-build-execute-rerank 四阶段
并行能力ThreadPoolExecutor + as_completed,ZVEC_QUERY_CONCURRENCY 环境变量控制
继承体系NoVector → SingleVector → MultiVector 渐进式继承链
Reranker 架构RerankFunction ABC + RRF/Weighted/LLM 三类内置实现
校验策略Fail-Fast:MultiVector 在 validate 阶段强制要求 Reranker

最佳实践

1.Factory 根据 schema 自动匹配执行器,避免用户手动选择

2.@final 装饰器锁定流水线顺序,子类只能覆写钩子不能跳步

3.环境变量控制并发度,默认串行保证安全

4.渐进式继承链避免代码重复,每层只叠加新能力