gpt4 book ai didi

elasticsearch - 如何从Elasticsearch数据库中获取分析的文本

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

我需要从elasticseatch数据库中获取分析的文本。我知道我可以使用分析API将分析器应用于任何文本,但是,由于在索引过程中已经对文本进行了分析,因此应该有一种方法可以访问分析的数据。

这是我要使用分析API和Python Elasticsearch进行的操作

res = es.indices.analyze(index=app.config['ES_ARXIV_PAPER_INDEX'],
body={"char_filter": ["html_strip"],
"tokenizer" : "standard",
"filter" : ["lowercase", "stop", "snowball"],
"text" : text})
tokens = []
for token in res['tokens']:
tokens.append(token['token'])
print("tokens = ", tokens)

我注意到此过程实际上很慢。因此,直接从索引数据中获取数据应该更快。

最佳答案

使用termvectors api应该可以完成这项工作,但是您必须指定每个条目的ID,并且必须将其启用(因为已存储信息)。如果您不想这样做,那么您已经在使用正确的方法。

下面的例子:

PUT my_index
{
"mappings": {
"my_type": {
"properties": {
"my_field": {
"type": "text"
}
}
}
}
}

POST my_index/my_type/1
{
"my_field": "this is a test"
}

GET /my_index/my_type/1/_termvectors?fields=*

https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-termvectors.html

https://www.elastic.co/guide/en/elasticsearch/reference/current/term-vector.html

关于elasticsearch - 如何从Elasticsearch数据库中获取分析的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48716194/

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