gpt4 book ai didi

elasticsearch - 要求重要条款但什么也不返回

转载 作者:行者123 更新时间:2023-12-04 06:06:25 24 4
gpt4 key购买 nike

我在使用 Elasticsearch(2.0 版)时遇到问题,我试图从一堆文档中获取重要术语,但它始终没有返回任何内容。

这是我的索引的架构:

{
"documents" : {
"warmers" : {},
"mappings" : {
"document" : {
"properties" : {
"text" : {
"index" : "not_analyzed",
"type" : "string"
},
"entities": {
"properties": {
"text": {
"index": "not_analyzed",
"type": "string"
}
}
}
}
}
},
"settings" : {
"index" : {
"creation_date" : "1447410095617",
"uuid" : "h2m2J9sJQaCpxvGDI591zg",
"number_of_replicas" : "1",
"version" : {
"created" : "2000099"
},
"number_of_shards" : "5"
}
},
"aliases" : {}
}
}

所以它是一个包含字段 text 的简单索引,没有被分析,还有一个数组 entities这将包含具有单个字段的字典: text , 也不分析。

我想要做的是匹配一些文档并从关联的实体中提取最重要的术语。为此,我使用通配符,然后使用聚合。

这是我通过 curl 发送的请求:
curl -XGET 'http://localhost:9200/documents/_search' -d '{
"query": {
"bool": {
"must": {"wildcard": {"text": "*test*"}}
}
},
"aggregations" : {
"my_significant_terms" : {
"significant_terms" : { "field" : "entities.text" }
}
}
}'

不幸的是,即使 Elasticsearch 正在访问某些文档,重要术语聚合的桶总是空的。

我试着把 analyzed而不是 not_analyzed也,但我得到了同样的空结果。

那么首先,这样做是否相关?

我是 Elasticsearch 的初学者,所以,您能解释一下重要术语聚合是如何工作的吗?

最后,如果相关,为什么我的查询不起作用?

编辑:我刚刚在 Elasticsearch 文档中看到重要术语聚合需要一定数量的数据才能生效,而我的索引中只有 163 个文档。会不会是这样?

最佳答案

不确定它是否会有所帮助。尝试指定

“min_doc_count”:1

关于elasticsearch - 要求重要条款但什么也不返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33695841/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com