QueryCondition 查询条件：



| 属性        | 默认值    | 描述          | 
| ------------------- | --------- | -------------------- | 
| freshness                      |                 | 热度（时间范围）                 | 
| limit                             |                  | 限制条数                                            | 
| filterExpression             |                   | 过滤表达式（对元数据字段进行过滤，语法参考 SnEL）     | 
| similarityThreshold         | `0.4`           | 相似度阈值                                          | 
| disableRefilter               | `false`         | 禁用搜索后再次本地过滤                        | 
| searchType                    |  `VECTOR`  | 搜索类型（仅 es 支持）                        | 
| hybridSearchParams        |                  | 混合搜索参数（仅 es 支持）                        | 


### 使用参考


```java
// 创建元数据字段定义
List<MetadataField> metadataFields = new ArrayList<>();
metadataFields.add(MetadataField.keyword("url"));
metadataFields.add(MetadataField.keyword("category"));
metadataFields.add(MetadataField.numeric("priority"));
metadataFields.add(MetadataField.numeric("year"));

// 使用 Builder 模式创建Repository
repository = ElasticsearchRepository.builder(embeddingModel, client)
        .metadataFields(metadataFields)
        .build();
        
repository.insert(Arrays.as(new Document("solon ....", Utils.asMap("url", "https://solon.noear.org", ...))));

//构建查询条件
QueryCondition vectorFilteredCondition = new QueryCondition("solon framework")
        .filterExpression("url LIKE 'noear.org'"); //对元数据字段 url 进行过滤

//查询
List<Document> vectorFilteredResults = repository.search(vectorFilteredCondition);
```