Этот проект демонстрирует использование Elasticsearch для векторных задач поиска. Предоставленная ноутбука Jupyter, vector_search.ipynb , загружает модель встраивания с использованием sentence-transformers , создает вставки для комбинированного поля вопросов и ответов и создает векторную поисковую систему для поиска вопросов пользователей в документах FAQ. Мы оцениваем результаты поисковой системы с использованием скорости попадания и среднего взаимного ранга (MRR). Наконец, оценить Elasticsearch, который более эффективен, поскольку он использует приблизительные методы, а не вычислять сходство со всеми векторами, давая идентичные результаты.
Чтобы настроить проект, следуйте этим шагам:
pip install pipenv
pipenv installЗатем выберите среду Pipenv в ядре Юпитера.
Чтобы запустить контейнер Docker Elasticsearch, используйте следующую команду:
docker run -it
--rm
--name elasticsearch
-p 9200:9200
-p 9300:9300
-e " discovery.type=single-node "
-e " xpack.security.enabled=false "
docker.elastic.co/elasticsearch/elasticsearch:8.4.3