Я создаю поисковую систему для поиска по списку примерно из 20 000 английских sh фраз, каждая из которых состоит из нескольких слов.
Я изучил способы создания поисковой системы, и в настоящее время я использую TfidfVectorizer из sklearn и Cosine Similarity для вычисления оценок ранжирования.
Насколько я понимаю, у вас есть фазы поиска и ранжирования, однако я не понимаю, как вы можете использовать такую структуру данных, как инвертированный индекс для ускорения поиска перед использованием TfidfVectorizer? Похоже, что TfidfVectorizer создает матрицу документа-термина, которая отличается от индекса. Не могли бы вы просто сохранить значения TF и IDF в инвертированном индексе и использовать косинусное сходство во время выполнения? В идеале мне нужно автозаполнение фраз, поэтому мне также нужно хранить граничные диаграммы, а логическая модель здесь бесполезна.