Milvus 搜索参数 过滤表达式
1. 什么是过滤表达式?
过滤表达式(Filter Expression)是Milvus向量搜索中用于筛选数据的条件语句。可以灵活组合多种条件(如=、>、<、IN、AND、OR等),实现复杂的数据筛选。
生活类比: 过滤表达式就像"超市购物筛选":只买价格在10~20元、品牌是A或B、且库存大于0的商品。
2. 常见语法与原理
age >= 18 AND age <= 30 AND (gender = '男' OR gender = '女')
score > 80
city IN ["北京", "上海"]
| 语法 |
含义 |
示例 |
| =, >, <, >=, <= |
比较运算 |
score > 80 |
| IN |
在集合中 |
city IN ["北京", "上海"] |
| AND, OR, NOT |
逻辑运算 |
age > 18 AND gender = '女' |
3. 过滤表达式筛选
4. 小结
- 过滤表达式让你灵活组合多条件筛选数据。
- 适合复杂检索、精细筛选、业务规则过滤等场景。
- 与topK、range filter、分组等参数结合,检索更强大。