gpt4 book ai didi

java - 按 Lucene 词典中的用法对建议的单词进行排序

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

我是 Java/Lucene 的初学者。我正在尝试按 Lucene 词典中最常用的单词对前 20 个建议单词进行排序。

此代码片段返回“tokens”字段中以字符“a”开头的前 20 个单词:

AnalyzingSuggester suggester = new AnalyzingSuggester(dir, "sugest", new StandardAnalyzer(CharArraySet.EMPTY_SET));
suggester.build(new LuceneDictionary(indexReader, "tokens"));
List<LookupResult> lookupResults = suggester.lookup("a", false, 20);

但它是按字母顺序排序的。我想按最常用的单词(或路加福音中命名的“顶级术语”)对其进行排序。我发现了一些关于 SortSortField 的内容,但我不知道如何在这个建议场景中使用它。对于此任务是否有任何简单的解决方案,或者我是否需要编写自己的功能,在其中我需要获取特定单词的频率?

最佳答案

尝试使用HighFrequencyDictionary,如下所示:

AnalyzingSuggester suggester = new AnalyzingSuggester(dir, "sugest", new StandardAnalyzer(CharArraySet.EMPTY_SET));
suggester.build(new HighFrequencyDictionary(indexReader, "tokens", 0));
List<LookupResult> lookupResults = suggester.lookup("a", false, 20);

关于java - 按 Lucene 词典中的用法对建议的单词进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47593763/

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