jma*_*ans 16 sqlite indexing search full-text-search
我正在使用sqlite3的fts4扩展来启用全文索引和文本数据搜索.它运作良好,但我注意到结果根本没有相关性.我想我已经习惯了Lucene.我已经看到了一些使用matchinfo()结果编写自定义排名方法的简短建议,但我不清楚这是如何完成的,或者是否有任何复杂的例子.别人怎么处理这个?
文档中有一个完整的例子,请看附录a的结尾.您需要做更多的工作才能获得良好的相关性排名,因为所提供的功能仅适用于入门.例如,matchinfo(table,'pcnalx')有足够的信息来实现Okapi BM25.
似乎有一个明显缺乏关于如何实现霍加皮BM25在C文档中,它似乎是一个心照不宣的事情,实现是作为一个练习的用户.
好吧,我找到了程序员"Radford'rads'史密斯"的兄弟,他把这个放在GitHub上
https://github.com/rads/sqlite-okapi-bm25
它只实现BM25,虽然我现在正在调查BM25F调整....
......而且在这里.
https://github.com/neozenith/sqlite-okapi-bm25