Ответ 1
Я думаю, что документация Elasticsearch легко может быть неправильно интерпретирована.
Здесь "сходство" - это не сравнение документов или полей, а скорее механизм подсчета совпадающих документов на основе совпадений терминов из запроса.
В документации указано:
Сходство (модель оценки/ранжирования) определяет, как соответствующие документы.
Алгоритмы подобия, поддерживаемые Elasticsearch, являются вероятностными моделями, основанными на распределении термов в корпусе (индексе).
В отношении терминальных векторов это также может быть неправильно интерпретировано.
Здесь термин "векторы вектора" относится к статистике для условий документа, которые могут быть легко запрошены. Кажется, что любые измерения подобия по векторам векторов затем должны были бы выполняться в вашем post post-query приложения. Документация по векторам векторов:
Возвращает информацию и статистику по срокам в полях конкретный документ.
Если вам нужна метрика подобия (быстрого) показания по очень большому корпусу, вы можете подумать о низкоуровневом встраивании ваших документов, хранящихся в индексе, для проведения приблизительных поисков ближайшего соседа. После поиска KNN, который значительно снижает набор кандидатов, вы можете сделать более дорогостоящие метрические вычисления для ранжирования.
Вот отличный ресурс для оценки приближенных решений KNN: https://github.com/erikbern/ann-benchmarks